diff options
Diffstat (limited to 'addons/website/static/src/js')
| -rw-r--r-- | addons/website/static/src/js/backend/dashboard.js | 3 | ||||
| -rw-r--r-- | addons/website/static/src/js/content/menu.js | 12 | ||||
| -rw-r--r-- | addons/website/static/src/js/menu/customize.js | 9 |
3 files changed, 23 insertions, 1 deletions
diff --git a/addons/website/static/src/js/backend/dashboard.js b/addons/website/static/src/js/backend/dashboard.js index b4fe22ba84e..1a83e8dc39a 100644 --- a/addons/website/static/src/js/backend/dashboard.js +++ b/addons/website/static/src/js/backend/dashboard.js @@ -44,6 +44,9 @@ var Dashboard = AbstractAction.extend(ControlPanelMixin, { var self = this; return $.when(ajax.loadLibs(this), this._super()).then(function() { return self.fetch_data(); + }).then(function(){ + var website = _.findWhere(self.websites, {selected: true}); + self.website_id = website ? website.id : false; }); }, diff --git a/addons/website/static/src/js/content/menu.js b/addons/website/static/src/js/content/menu.js index c5371e3c5fb..42a12414557 100644 --- a/addons/website/static/src/js/content/menu.js +++ b/addons/website/static/src/js/content/menu.js @@ -98,6 +98,17 @@ sAnimation.registry.autohideMenu = sAnimation.Class.extend({ def.resolve(); }); }); + + // The previous code will make sure we wait for images to be fully + // loaded before initializing the auto more menu. But in some cases, + // it is not enough, we also have to wait for fonts or even extra + // scripts. Those will have no impact on the feature in most cases + // though, so we will only update the auto more menu at that time, + // no wait for it to initialize the feature. + var $window = $(window); + $window.on('load.autohideMenu', function () { + $window.trigger('resize'); + }); } return $.when.apply($, defs).then(function () { if (!self.noAutohide) { @@ -112,6 +123,7 @@ sAnimation.registry.autohideMenu = sAnimation.Class.extend({ destroy: function () { this._super.apply(this, arguments); if (!this.noAutohide) { + $(window).off('.autohideMenu'); dom.destroyAutoMoreMenu(this.$el); } }, diff --git a/addons/website/static/src/js/menu/customize.js b/addons/website/static/src/js/menu/customize.js index d8ce436248e..b931e938cc6 100644 --- a/addons/website/static/src/js/menu/customize.js +++ b/addons/website/static/src/js/menu/customize.js @@ -18,8 +18,14 @@ var CustomizeMenu = Widget.extend({ /** * @override */ - start: function () { + willStart: function () { this.viewName = $(document.documentElement).data('view-xmlid'); + return this._super.apply(this, arguments); + }, + /** + * @override + */ + start: function () { if (!this.viewName) { _.defer(this.destroy.bind(this)); } @@ -27,6 +33,7 @@ var CustomizeMenu = Widget.extend({ if (this.$el.is('.show')) { this._loadCustomizeOptions(); } + return this._super.apply(this, arguments); }, //-------------------------------------------------------------------------- |
