summaryrefslogtreecommitdiff
path: root/addons/website/static/src/js
diff options
context:
space:
mode:
Diffstat (limited to 'addons/website/static/src/js')
-rw-r--r--addons/website/static/src/js/backend/dashboard.js3
-rw-r--r--addons/website/static/src/js/content/menu.js12
-rw-r--r--addons/website/static/src/js/menu/customize.js9
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);
},
//--------------------------------------------------------------------------