o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1364984311.733147: @value"’{I" class:EFI"ProcessedAsset;FI"logical_path;FI"4locomotive/views/editable_elements/file_view.js;TI" pathname;FI"{/Users/papipo/Projects/locomotive/engine/app/assets/javascripts/locomotive/views/editable_elements/file_view.js.coffee;TI"content_type;FI"application/javascript;FI" mtime;FI"2013-04-03T11:01:13+02:00;FI" length;Fiè I" digest;F"%a585ee76a839966008d49ae3727b9694I" source;FI"è (function() { var _base, _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).EditableElements || (_base.EditableElements = {}); Locomotive.Views.EditableElements.FileView = (function(_super) { __extends(FileView, _super); function FileView() { _ref = FileView.__super__.constructor.apply(this, arguments); return _ref; } FileView.prototype.tagName = 'li'; FileView.prototype.className = 'file input'; FileView.prototype.states = { change: false, "delete": false }; FileView.prototype.events = { 'click a.change': 'toggle_change', 'click a.delete': 'toggle_delete' }; FileView.prototype.render = function() { var _this = this; $(this.el).html(ich.editable_file_input(this.model.toJSON())); this.$('input[type=file]').bind('change', function(event) { var input; input = $(event.target)[0]; if (input.files != null) { return _this.model.set({ source: input.files[0] }); } }); return this; }; FileView.prototype.after_render = function() {}; FileView.prototype.refresh = function() { this.$('input[type=file]').unbind('change'); this.states = { 'change': false, 'delete': false }; return this.render(); }; 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() { _this.model.set({ source: null }); return _this.$('a:first').show() & _this.$('input[type=file]').val('').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({ 'remove_source': 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({ 'remove_source': 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"%4e944d6cbf651b5450bf53f36cc115edI"required_paths;F[I"{/Users/papipo/Projects/locomotive/engine/app/assets/javascripts/locomotive/views/editable_elements/file_view.js.coffee;TI"dependency_paths;F[{I" path;FI"{/Users/papipo/Projects/locomotive/engine/app/assets/javascripts/locomotive/views/editable_elements/file_view.js.coffee;TI" mtime;FI"2013-04-03T11:01:13+02:00;FI" digest;F"%c9ab6d94694b56b7cf664055de92bc4fI" _version;F"%6776f581a4329e299531e1d52aa59832