[FIX] web_editor: restore snippet option data parameter
Snippet options were not receiving proper data parameter on instantiantion due to a websitepocalypse wrong adaptation. Those data are parameters to tweak an option behavior, directly defined on the option's <div/> in the XML. By mistake, they were now taken on the child <li/> element (main DOM element of the option). A visual example of the bug is the overlay colorpicker displaying "Background Color" as a title instead of "Overlay Color".
This commit is contained in:
@@ -227,7 +227,7 @@ var SnippetEditor = Widget.extend({
|
||||
|
||||
var optionName = val.option;
|
||||
var $el = val.$el.children('li').clone(true).addClass('snippet-option-' + optionName);
|
||||
var option = new (options.registry[optionName] || options.Class)(self, self.$target, self.$el);
|
||||
var option = new (options.registry[optionName] || options.Class)(self, self.$target, self.$el, val.data);
|
||||
self.styles[optionName || _.uniqueId('option')] = option;
|
||||
option.__order = i++;
|
||||
return option.attachTo($el);
|
||||
|
||||
@@ -37,10 +37,11 @@ var SnippetOption = Widget.extend({
|
||||
*
|
||||
* @constructor
|
||||
*/
|
||||
init: function (parent, $target, $overlay) {
|
||||
init: function (parent, $target, $overlay, data) {
|
||||
this._super.apply(this, arguments);
|
||||
this.$target = $target;
|
||||
this.$overlay = $overlay;
|
||||
this.data = data;
|
||||
this.__methodNames = [];
|
||||
},
|
||||
/**
|
||||
@@ -50,7 +51,6 @@ var SnippetOption = Widget.extend({
|
||||
* @override
|
||||
*/
|
||||
start: function () {
|
||||
this.data = this.$el.data();
|
||||
this._setActive();
|
||||
return this._super.apply(this, arguments);
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user