[IMP] website: snippet selector
authorChristophe Matthieu <chm@openerp.com>
Mon, 3 Mar 2014 12:19:45 +0000 (13:19 +0100)
committerChristophe Matthieu <chm@openerp.com>
Mon, 3 Mar 2014 12:19:45 +0000 (13:19 +0100)
bzr revid: chm@openerp.com-20140303121945-d2ynze1vja5v0d7d

addons/website/static/src/js/website.snippets.editor.js
addons/website/views/snippets.xml

index addd610..891ebc0 100644 (file)
                                 "data-selector-siblings, data-selector-children or data-selector-vertical-children tag for mutate action");
                             return;
                         }
-                        console.log(selector_siblings);
-                        console.log(selector_children);
-                        console.log(selector_vertical_children);
                         self.activate_insertion_zones({
                             siblings: selector_siblings.join(","),
                             children: selector_children.join(","),
             self.$overlay.addClass("hidden");
 
             self.BuildingBlock.activate_insertion_zones({
-                siblings: self.$el ? self.$el.data('selector-siblings') : false,
-                children:   self.$el ? self.$el.data('selector-children') : false,
-                vertical_children: self.$el ? self.$el.data('selector-vertical-children') : false,
+                siblings: self.selector_siblings,
+                children: self.selector_children,
+                vertical_children: self.selector_vertical_children,
             });
+            console.log(self);
 
             $("body").addClass('move-important');
 
             var $styles = this.$overlay.find('.oe_options');
             var $ul = $styles.find('ul:first');
             this.styles = {};
+            this.selector_siblings = [];
+            this.selector_children = [];
+            this.selector_vertical_children = [];
             _.each(website.snippet.styles, function (val) {
                 if (!self.$target.is(val.selector)) {
                     return;
                 }
+                if (val['selector-siblings']) self.selector_siblings.push(val['selector-siblings']);
+                if (val['selector-children']) self.selector_children.push(val['selector-children']);
+                if (val['selector-vertical-children']) self.selector_vertical_children.push(val['selector-vertical-children']);
+
                 var style = val['snippet-style-id'];
                 var Editor = website.snippet.styleRegistry[style] || website.snippet.StyleEditor;
                 var editor = self.styles[style] = new Editor(self.BuildingBlock, self.$target, style);
                 $ul.append(editor.$el.addClass("snippet-style-" + style));
             });
+            this.selector_siblings = this.selector_siblings.join(",");
+            if (this.selector_siblings === "")
+                this.selector_siblings = false;
+            this.selector_children = this.selector_children.join(",");
+            if (this.selector_children === "")
+                this.selector_children = false;
+            this.selector_vertical_children = this.selector_vertical_children.join(",");
+            if (this.selector_vertical_children === "")
+                this.selector_vertical_children = false;
+
 
             if ($ul.find("li").length) {
                 $styles.removeClass("hidden");
index 08520bb..88f1c7a 100644 (file)
     </div>
 
     <div data-snippet-style-id='margin-y'
-        data-selector="section, .row > [class*='col-md-'], .carousel, .parallax, hr"
-        data-selector-children=".oe_structure, [data-oe-type=html]">
+        data-selector="section, .row > [class*='col-md-'], .carousel, .parallax, hr">
     </div>
 
     <div data-snippet-style-id='resize'