diff options
| author | Frédéric van der Essen <fva@openerp.com> | 2013-07-31 17:12:30 +0200 |
|---|---|---|
| committer | Frédéric van der Essen <fva@openerp.com> | 2013-07-31 17:12:30 +0200 |
| commit | 4f050353cf733eff2de09be31491e34e55ec1b95 (patch) | |
| tree | 060775514ba127cf597fe3af9e5517936b104b53 /addons/website/static/src/js | |
| parent | b645f4830ae0660deb811221a570bd2729f28888 (diff) | |
| parent | bb6412a6f10d79e8915ab8e42e00477808ff18e1 (diff) | |
[MERGE] from upstream
bzr revid: fva@openerp.com-20130731151230-vyg6y8362khlu0ry
Diffstat (limited to 'addons/website/static/src/js')
| -rw-r--r-- | addons/website/static/src/js/website.js | 86 |
1 files changed, 28 insertions, 58 deletions
diff --git a/addons/website/static/src/js/website.js b/addons/website/static/src/js/website.js index 21d8b426ec9..98096df28cf 100644 --- a/addons/website/static/src/js/website.js +++ b/addons/website/static/src/js/website.js @@ -1,5 +1,6 @@ openerp.website = function(instance) { var _lt = instance.web._lt; +var QWeb = instance.web.qweb; instance.website.EditorBar = instance.web.Widget.extend({ template: 'Website.EditorBar', events: { @@ -116,7 +117,7 @@ instance.website.EditorBar = instance.web.Widget.extend({ var self = this; $('.oe_snippet_drop').remove(); var droppable = '<div class="oe_snippet_drop"></div>'; - var $zone = $('*:not(.oe_snippet) > .container'); + var $zone = $(':not(.oe_snippet) > .container'); $zone.before(droppable).after(droppable); $(".oe_snippet_drop").droppable({ @@ -338,11 +339,18 @@ instance.website.RTE = instance.web.Widget.extend({ this.toggle(!!CKEDITOR.currentInstance); }, _config: function () { + var removed_plugins = [ + // remove toolbar entirely + 'toolbar,elementspath,resize', + // remove custom context menu + 'contextmenu,tabletools,liststyle', + // magicline captures mousein/mouseout => draggable does not work + 'magicline' + ]; return { // Don't load ckeditor's style rules stylesSet: [], - // Remove toolbar entirely, also custom context menu - removePlugins: 'toolbar,elementspath,resize,contextmenu,tabletools,liststyle', + removePlugins: removed_plugins.join(','), uiColor: '', // Ensure no config file is loaded customConfig: '', @@ -356,60 +364,24 @@ instance.website.RTE = instance.web.Widget.extend({ // TODO clean snippet_carousel: function () { var self = this; - $carousels = $("<div/>"); - $carousels.css({'position': 'absolute', 'top': 0, 'white-space': 'nowrap'}); - $carousels.insertAfter(self.$el); - - $(".carousel").each(function() { - var $carousel = new instance.website.snippet.carousel(self, this); - $carousel.appendTo($carousels); - }); - $(document).on("scroll", function () { - $carousels.css("top", (-self.$el.offset().top+2) + 'px'); + $('.carousel .js_carousel_options .label').on('click', function (e) { + e.preventDefault(); + var $button = $(e.currentTarget) + var $c = $button.parents(".carousel:first"); + + if($button.hasClass("js_add")) { + var cycle = $c.find(".carousel-inner .item").size(); + $c.find(".carousel-inner").append(QWeb.render("Website.Snipped.carousel")); + $c.carousel(cycle); + } + else { + var cycle = $c.find(".carousel-inner .item.active").remove(); + $c.find(".carousel-inner .item:first").addClass("active"); + $c.carousel(0); + self.trigger('change', self, null); + } }); - } -}); - - -instance.website.snippet = {}; -instance.website.snippet.carousel = instance.web.Widget.extend({ - template: 'Website.Snipped.carousel', - events: { - 'click .add': 'add_page', - 'click .remove': 'remove_page', - }, - instances: [], - init: function (parent, carousel) { - this._super(parent); - this.parent = parent; - var index = instance.website.snippet.carousel.index || 0; - instance.website.snippet.carousel.index = index++; - this.index = index; - $(carousel).addClass("carousel-index-"+index); - this.offset = $(carousel).offset(); - }, - start: function () { - var self = this; - this.$el.css({position: 'absolute', top: this.offset.top+'px', left: this.offset.left+'px'}); - }, - destroy: function () { - return this._super(); - }, - get_carousel: function() { - return $(".carousel.carousel-index-"+this.index); - }, - add_page: function() { - var $c = this.get_carousel(); - var cycle = $c.find(".carousel-inner .item").size(); - $c.find(".carousel-inner").append(this.$(".item").clone()); - $c.carousel(cycle); - }, - remove_page: function() { - var $c = this.get_carousel(); - var cycle = $c.find(".carousel-inner .item.active").remove(); - $c.find(".carousel-inner .item:first").addClass("active"); - $c.carousel(0); - this.parent.trigger('change', this.parent, null); + $('.carousel .js_carousel_options').show(); } }); @@ -490,10 +462,8 @@ $(function(){ } event.preventDefault(); } - }); - instance.web.ActionRedirect = function(parent, action) { var url = $.deparam(window.location.href).url; if (url) { |
