[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:
qsm-odoo
2017-11-08 18:28:48 +01:00
parent 191f9d0598
commit c7171795f8
2 changed files with 3 additions and 3 deletions
@@ -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);
},