Sha256: c92a2ca584110aeee5985cd166d11547c2fa6ea38911138a7a742377b6885d71
Contents?: true
Size: 1.9 KB
Versions: 5
Compression:
Stored size: 1.9 KB
Contents
// console.log('Loading FieldPreview...') Spontaneous.FieldPreview = (function($, S) { var dom = S.Dom; var FieldPreview = new JS.Class({ initialize: function(view, wrap_id, listView) { this.view = view; this.wrap_id = wrap_id; this.listView = listView; }, depth_class: function() { return 'depth-'+this.view.depth(); }, has_fields: function() { return this.view.has_fields(); }, panel: function() { var wrapper = dom.div([dom.id(this.wrap_id), 'fields-preview', this.depth_class()]); // $(dom.div, {'id':this.wrap_id, 'class':'fields-preview ' + this.depth_class()}); wrapper.append(this.fields_panel(this.view.text_fields(), 'text')); wrapper.append(this.fields_panel(this.view.image_fields(), 'image', true)); if (this.view.mouseover) { wrapper.mouseover(this.view.mouseover.bind(this.view)); } if (this.view.mouseout) { wrapper.mouseout(this.view.mouseout.bind(this.view)); } wrapper.click(function() { this.view.edit(this.field_to_edit); }.bind(this)); return wrapper; }, fields_panel: function(fields, type, ignore_changes) { var wrapper = dom.ul('.fields-preview-'+type), __this = this; if (fields.length === 0) { wrapper.addClass('empty'); } $.each(fields, function(i, field) { if (!__this.listView || field.type.list) { var li = dom.li(); var name = dom.div('.name').text(field.title); var value = dom.div('.value'); li.click(function() { __this.field_to_edit = field; }); field.activate(value); // if (!ignore_changes) { field.watch('value', function(field, v) { $(this).html(field.preview()); }.bind(value, field)); // } li.append(name).append(value); wrapper.append(li); value.html(field.preview(value)); } }); return wrapper; }, unload: function() { // keep compatibility with the view api } }); return FieldPreview; })(jQuery, Spontaneous);
Version data entries
5 entries across 5 versions & 1 rubygems