o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1364984314.471501: @value"ü{I" class:EFI"ProcessedAsset;FI"logical_path;FI"0locomotive/views/shared/fields/file_view.js;TI" pathname;FI"w/Users/papipo/Projects/locomotive/engine/app/assets/javascripts/locomotive/views/shared/fields/file_view.js.coffee;TI"content_type;FI"application/javascript;FI" mtime;FI"2013-04-03T11:01:13+02:00;FI" length;FibI" digest;F"%ca2f881d3751a44199753e8c909ddafdI" source;FI"b(function() { var _base, _base1, _ref, __hasProp = {}.hasOwnProperty, __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; }; (_base = Locomotive.Views).Shared || (_base.Shared = {}); (_base1 = Locomotive.Views.Shared).Fields || (_base1.Fields = {}); Locomotive.Views.Shared.Fields.FileView = (function(_super) { __extends(FileView, _super); function FileView() { _ref = FileView.__super__.constructor.apply(this, arguments); return _ref; } FileView.prototype.tagName = 'span'; FileView.prototype.className = 'file'; FileView.prototype.states = { change: false, "delete": false }; FileView.prototype.events = { 'click a.change': 'toggle_change', 'click a.delete': 'toggle_delete' }; FileView.prototype.template = function() { var prefix; prefix = this.options.namespace != null ? "" + this.options.namespace + "_" : ''; return ich["" + prefix + this.options.name + "_file_input"]; }; FileView.prototype.render = function() { var data, url, _this = this; url = this.model.get("" + this.options.name + "_url") || ''; data = { filename: url.split('/').pop(), url: url }; $(this.el).html(this.template()(data)); this.$('input[type=file]').bind('change', function(event) { var hash, input, name; input = $(event.target)[0]; if (input.files != null) { name = $(input).prop('name'); hash = {}; hash[name.replace("" + _this.model.paramRoot + "[", '').replace(/]$/, '')] = input.files[0]; return _this.model.set(hash); } }); return this; }; FileView.prototype.refresh = function() { this.$('input[type=file]').unbind('change'); this.states = { 'change': false, 'delete': false }; return this.render(); }; FileView.prototype.reset = function() { this.model.set_attribute(this.options.name, null); this.model.set_attribute("" + this.options.name + "_url", null); return this.refresh(); }; FileView.prototype.toggle_change = function(event) { var _this = this; return this._toggle(event, 'change', { on_change: function() { return _this.$('a:first').hide() & _this.$('input[type=file]').show() & _this.$('a.delete').hide(); }, on_cancel: function() { return _this.$('a:first').show() & _this.$('input[type=file]').hide() & _this.$('a.delete').show(); } }); }; FileView.prototype.toggle_delete = function(event) { var _this = this; return this._toggle(event, 'delete', { on_change: function() { _this.$('a:first').addClass('deleted') & _this.$('a.change').hide(); _this.$('input[type=hidden].remove-flag').val('1'); return _this.model.set_attribute("remove_" + _this.options.name, true); }, on_cancel: function() { _this.$('a:first').removeClass('deleted') & _this.$('a.change').show(); _this.$('input[type=hidden].remove-flag').val('0'); return _this.model.set_attribute("remove_" + _this.options.name, false); } }); }; FileView.prototype._toggle = function(event, state, options) { var button, label; event.stopPropagation() & event.preventDefault(); button = $(event.target); label = button.data('alt-label'); if (!this.states[state]) { options.on_change(); } else { options.on_cancel(); } button.data('alt-label', button.html()); button.html(label); return this.states[state] = !this.states[state]; }; FileView.prototype.remove = function() { this.$('input[type=file]').unbind('change'); return FileView.__super__.remove.apply(this, arguments); }; return FileView; })(Backbone.View); }).call(this); ;TI"dependency_digest;F"%0d18ea94cc0f8ee7070faafffe8f0c51I"required_paths;F[I"w/Users/papipo/Projects/locomotive/engine/app/assets/javascripts/locomotive/views/shared/fields/file_view.js.coffee;TI"dependency_paths;F[{I" path;FI"w/Users/papipo/Projects/locomotive/engine/app/assets/javascripts/locomotive/views/shared/fields/file_view.js.coffee;TI" mtime;FI"2013-04-03T11:01:13+02:00;FI" digest;F"%59e41f82659779ee815be261bd404598I" _version;F"%6776f581a4329e299531e1d52aa59832