summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorqsm-odoo <qsm@odoo.com>2015-12-22 15:32:04 +0100
committerqsm-odoo <qsm@odoo.com>2015-12-24 17:11:55 +0100
commitbcca4a44c79d94db320ffe6f8311fcbb7ff81421 (patch)
tree9897b073a1444deb7a54c39794685f69b59ae105
parent615ff654d96e557ed4f09253b3f7d810f461f5a6 (diff)
[IMP] web(_planner),website: navbars & menus merge
Merge appswitcher navbar and app navbar. Merge planner menu and user menu.
-rw-r--r--addons/web/static/src/js/widgets/user_menu.js36
-rw-r--r--addons/web/static/src/xml/base.xml46
-rw-r--r--addons/web_planner/static/src/js/web_planner_backend.js13
-rw-r--r--addons/web_planner/static/src/js/web_planner_common.js44
-rw-r--r--addons/web_planner/static/src/less/web_planner_common.less3
-rw-r--r--addons/web_planner/static/src/xml/web_planner.xml59
-rw-r--r--addons/website/static/src/js/web_planner_website.js11
7 files changed, 89 insertions, 123 deletions
diff --git a/addons/web/static/src/js/widgets/user_menu.js b/addons/web/static/src/js/widgets/user_menu.js
index f9c658525a4..60d1cc818d6 100644
--- a/addons/web/static/src/js/widgets/user_menu.js
+++ b/addons/web/static/src/js/widgets/user_menu.js
@@ -11,7 +11,7 @@ var Widget = require('web.Widget');
var _t = core._t;
var QWeb = core.qweb;
-var SystrayMenu = Widget.extend({
+var UserMenu = Widget.extend({
template: "UserMenu",
init: function(parent) {
this._super(parent);
@@ -55,8 +55,33 @@ var SystrayMenu = Widget.extend({
};
this.update_promise = this.update_promise.then(fct, fct);
},
- on_menu_logout: function() {
- this.trigger('user_logout');
+ on_menu_documentation: function () {
+ window.open('https://www.odoo.com/documentation/user', '_blank');
+ },
+ on_menu_support: function () {
+ window.open('https://www.odoo.com/buy', '_blank');
+ },
+ on_menu_about: function () {
+ var self = this;
+ if (odoo.db_info) {
+ menu_help_about(odoo.db_info);
+ } else {
+ this.rpc("/web/webclient/version_info", {}).done(menu_help_about);
+ }
+
+ function menu_help_about(db_info) {
+ var $help = $(QWeb.render("UserMenu.about", {db_info: db_info}));
+ $help.find('a.oe_activate_debug_mode').click(function (e) {
+ e.preventDefault();
+ window.location = $.param.querystring(window.location.href, 'debug');
+ });
+ new Dialog(self, {
+ size: 'medium',
+ dialogClass: 'o_act_window',
+ title: _t("About"),
+ $content: $help
+ }).open();
+ }
},
on_menu_settings: function() {
var self = this;
@@ -88,7 +113,10 @@ var SystrayMenu = Widget.extend({
});
});
},
+ on_menu_logout: function() {
+ this.trigger('user_logout');
+ },
});
-return SystrayMenu;
+return UserMenu;
});
diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml
index b3eb8334fa1..50730ee1c25 100644
--- a/addons/web/static/src/xml/base.xml
+++ b/addons/web/static/src/xml/base.xml
@@ -79,6 +79,10 @@
<span class="oe_topbar_name"/> <b class="caret"></b>
</a>
<ul class="dropdown-menu">
+ <li><a href="#" data-menu="documentation">Documentation</a></li>
+ <li><a href="#" data-menu="support">Support</a></li>
+ <li><a href="#" data-menu="about">About</a></li>
+ <li class="divider"/>
<li><a href="#" data-menu="settings">Preferences</a></li>
<li><a href="#" data-menu="account">My Odoo.com account</a></li>
<li><a href="#" data-menu="logout">Log out</a></li>
@@ -86,6 +90,48 @@
</li>
</t>
+<div t-name="UserMenu.about" class="oe_about">
+ <div class="container-fluid">
+ <div class="row">
+ <a class="oe_activate_debug_mode oe_right label label-primary" href="?debug" >Activate the developer mode</a>
+ </div>
+ <div class="row">
+ <div class="col-sm-offset-2 col-md-offset-2 col-sm-8 col-md-8 user-details">
+ <div class="user-image">
+ <img src="/web/static/src/img/logo2.png" alt="Odoo (Formerly OpenERP)" title="Odoo (Formerly OpenERP)" class="img-circle"/>
+ </div>
+ <div class="user-info-block">
+ <div class="user-heading">
+ <h3>
+ Version <t t-esc="db_info.server_version"/>
+ (Community Edition)
+ </h3>
+ <t t-if="db_info.expiration_date">
+ <h5>Database expiration: <t t-esc="new moment(db_info.expiration_date).format('LL')"/></h5>
+ </t>
+ </div>
+ <div class="user-body">
+ <div class="tab-content">
+ <div id="settings" class="tab-pane active">
+ <h4>Copyright © 2004-2015 Odoo S.A.</h4>
+ <p>Odoo is a trademark of <a target="_blank" href="https://www.odoo.com" style="text-decoration: underline;">Odoo S.A.</a></p>
+ <p>Licenced under the terms of <a target="_blank" href="http://www.gnu.org/licenses/lgpl.html" style="text-decoration: underline;">GNU Lesser General Public License</a></p>
+ <p>For more information visit <a target="_blank" href="https://www.odoo.com" style="text-decoration: underline;">Odoo.com</a></p>
+ <p>
+ <a href="https://www.odoo.com/web/about/facebook"><i class="fa fa-facebook-square fa-3x social-fb"></i></a>
+ <a href="https://www.odoo.com/web/about/twitter"><i class="fa fa-twitter-square fa-3x social-tw"></i></a>
+ <a href="https://www.odoo.com/web/about/googleplus"><i class="fa fa-google-plus-square fa-3x social-gp"></i></a>
+ <a href="https://www.odoo.com/web/about/linkedin"><i class="fa fa-linkedin-square fa-3x social-lk"></i></a>
+ </p>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
+
<t t-name="WebClient.timezone_warning">
<i class="fa fa-exclamation-triangle oe_tz_warning"></i>
</t>
diff --git a/addons/web_planner/static/src/js/web_planner_backend.js b/addons/web_planner/static/src/js/web_planner_backend.js
index c4079b36433..40055e39321 100644
--- a/addons/web_planner/static/src/js/web_planner_backend.js
+++ b/addons/web_planner/static/src/js/web_planner_backend.js
@@ -13,7 +13,7 @@ var QWeb = core.qweb;
var _t = core._t;
var PlannerDialog = planner.PlannerDialog;
-var PlannerLauncher = Widget.extend(planner.PlannerHelpMixin, {
+var PlannerLauncher = Widget.extend({
template: "PlannerLauncher",
init: function(parent) {
this._super(parent);
@@ -25,12 +25,10 @@ var PlannerLauncher = Widget.extend(planner.PlannerHelpMixin, {
core.bus.on("change_menu_section", self, self.on_menu_clicked);
var res = self._super.apply(this, arguments).then(function() {
- self.$el.filter('.o_planner_systray').on('click', self, self.show_dialog.bind(self));
- self.$el.filter('.o_planner_help').on('click', '.dropdown-menu li a[data-menu]', self.on_menu_help);
+ self.$el.on('click', self, self.show_dialog.bind(self));
return self.fetch_application_planner();
}).then(function(apps) {
- self.$el.filter('.o_planner_systray').hide(); // hidden by default
- self.$el.filter('.o_planner_help').find('.o_planner_link').hide();
+ self.$el.hide(); // hidden by default
self.$('.progress').tooltip({html: true, placement: 'bottom', delay: {'show': 500}});
self.planner_apps = apps;
return apps;
@@ -58,8 +56,7 @@ var PlannerLauncher = Widget.extend(planner.PlannerHelpMixin, {
this.setup(this.planner_apps[menu_id]);
this.need_reflow = true;
} else {
- this.$el.filter('.o_planner_systray').hide();
- this.$el.filter('.o_planner_help').find('.o_planner_link').hide();
+ this.$el.hide();
this.need_reflow = true;
}
if (this.need_reflow) {
@@ -96,7 +93,7 @@ var PlannerLauncher = Widget.extend(planner.PlannerHelpMixin, {
} else {
this.$(".progress").show();
}
- this.$el.filter('.o_planner_systray').show();
+ this.$el.show();
this.$(".progress-bar").css('width', percent+"%");
},
show_dialog: function() {
diff --git a/addons/web_planner/static/src/js/web_planner_common.js b/addons/web_planner/static/src/js/web_planner_common.js
index b7fd147d849..1abe71620f4 100644
--- a/addons/web_planner/static/src/js/web_planner_common.js
+++ b/addons/web_planner/static/src/js/web_planner_common.js
@@ -413,52 +413,8 @@ var PlannerDialog = Widget.extend({
}
});
-var PlannerHelpMixin = {
-
- on_menu_help: function(ev) {
- ev.preventDefault();
-
- var menu = $(ev.currentTarget).data('menu');
- if (menu === 'about') {
- if (!odoo.db_info) {
- var self = this;
- this.rpc("/web/webclient/version_info", {}).done(function(db_info) {
- self.on_menu_help_about(db_info);
- });
- } else {
- this.on_menu_help_about(odoo.db_info);
- }
- } else if (menu === 'documentation') {
- window.open('https://www.odoo.com/documentation/user', '_blank');
- } else if (menu === 'planner') {
- if (this.dialog) this.show_dialog();
- } else if (menu === 'support') {
- if (odoo.db_info && odoo.db_info.server_version_info[5] === 'c') {
- window.open('https://www.odoo.com/buy', '_blank');
- } else {
- window.location.href = 'mailto:help@odoo.com';
- }
- }
- },
-
- on_menu_help_about: function(db_info) {
- var $help = $(QWeb.render("PlannerLauncher.about", {db_info: db_info}));
- $help.find('a.oe_activate_debug_mode').click(function (e) {
- e.preventDefault();
- window.location = $.param.querystring( window.location.href, 'debug');
- });
- new Dialog(this, {
- size: 'medium',
- dialogClass: 'o_act_window',
- title: _t("About"),
- $content: $help
- }).open();
- },
-};
-
return {
PlannerDialog: PlannerDialog,
- PlannerHelpMixin: PlannerHelpMixin,
};
});
diff --git a/addons/web_planner/static/src/less/web_planner_common.less b/addons/web_planner/static/src/less/web_planner_common.less
index 6e484213a38..bf823105d4e 100644
--- a/addons/web_planner/static/src/less/web_planner_common.less
+++ b/addons/web_planner/static/src/less/web_planner_common.less
@@ -29,9 +29,8 @@
/**************** MENU PROGRESS BAR ****************/
.o_planner_systray {
- width: 100px;
-
> .progress {
+ width: 70px;
height: 13px;
cursor: pointer;
diff --git a/addons/web_planner/static/src/xml/web_planner.xml b/addons/web_planner/static/src/xml/web_planner.xml
index ce01833c3ea..8cf17af0618 100644
--- a/addons/web_planner/static/src/xml/web_planner.xml
+++ b/addons/web_planner/static/src/xml/web_planner.xml
@@ -5,63 +5,6 @@
<li class="o_planner_systray hidden-xs">
<div class="progress"><div class="progress-bar"/></div>
</li>
- <li class="o_planner_help">
- <a class="dropdown-toggle" data-toggle="dropdown" href="#" title="Open Help Menu" aria-expanded="false">
- <span class="fa fa-question-circle"/>
- <b class="caret"/>
- </a>
- <ul class="dropdown-menu" role="menu">
- <li class="o_planner_link"><a href="#" data-menu="planner">Planner</a></li>
- <li><a href="#" data-menu="documentation">Documentation</a></li>
- <li><a href="#" data-menu="support">Support</a></li>
- <li><a href="#" data-menu="about">About</a></li>
- </ul>
- </li>
- </t>
-
- <t t-name="PlannerLauncher.about">
- <div class="oe_about">
-
- <div class="container-fluid">
- <div class="row">
- <a class="oe_activate_debug_mode oe_right label label-primary" href="?debug" >Activate the developer mode</a>
- </div>
- <div class="row">
- <div class="col-sm-offset-2 col-md-offset-2 col-sm-8 col-md-8 user-details">
- <div class="user-image">
- <img src="/web/static/src/img/logo2.png" alt="Odoo (Formerly OpenERP)" title="Odoo (Formerly OpenERP)" class="img-circle"/>
- </div>
- <div class="user-info-block">
- <div class="user-heading">
- <h3>
- Version <t t-esc="db_info.server_version"/>
- (<span t-esc="db_info.server_version_info[5] == 'e'?'Enterprise':'Community'"/> Edition)
- </h3>
- <t t-if="db_info.expiration_date">
- <h5>Database expiration: <t t-esc="new moment(db_info.expiration_date).format('LL')"/></h5>
- </t>
- </div>
- <div class="user-body">
- <div class="tab-content">
- <div id="settings" class="tab-pane active">
- <h4>Copyright © 2004-2015 Odoo S.A.</h4>
- <p>Odoo is a trademark of <a target="_blank" href="https://www.odoo.com" style="text-decoration: underline;">Odoo S.A.</a></p>
- <p>Licenced under the terms of <a target="_blank" href="http://www.gnu.org/licenses/lgpl.html" style="text-decoration: underline;">GNU Lesser General Public License</a></p>
- <p>For more information visit <a target="_blank" href="https://www.odoo.com" style="text-decoration: underline;">Odoo.com</a></p>
- <p>
- <a href="https://www.odoo.com/web/about/facebook"><i class="fa fa-facebook-square fa-3x social-fb"></i></a>
- <a href="https://www.odoo.com/web/about/twitter"><i class="fa fa-twitter-square fa-3x social-tw"></i></a>
- <a href="https://www.odoo.com/web/about/googleplus"><i class="fa fa-google-plus-square fa-3x social-gp"></i></a>
- <a href="https://www.odoo.com/web/about/linkedin"><i class="fa fa-linkedin-square fa-3x social-lk"></i></a>
- </p>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
</t>
<div t-name="PlannerDialog" class="modal" id="PlannerDialog" tabindex="-1" role="dialog" aria-labelledby="PlannerDialogLabel" aria-hidden="true">
@@ -98,7 +41,6 @@
</div>
</div>
-
<t t-name="PlannerMenu">
<li t-foreach="orphan_pages" t-as="orphan_page">
<a t-att-href="'#' + menu_item_page_map[orphan_page]"><span class="fa fa-fw"/><t t-esc="orphan_page"/></a>
@@ -110,5 +52,4 @@
</li>
</t>
</t>
-
</templates>
diff --git a/addons/website/static/src/js/web_planner_website.js b/addons/website/static/src/js/web_planner_website.js
index 6b530bb5f0d..3ff34b367da 100644
--- a/addons/website/static/src/js/web_planner_website.js
+++ b/addons/website/static/src/js/web_planner_website.js
@@ -14,14 +14,13 @@ if(!$('#oe_systray').length) {
return $.Deferred().reject("DOM doesn't contain '#oe_systray'");
}
-var WebsitePlannerLauncher = Widget.extend(planner.PlannerHelpMixin, {
+var WebsitePlannerLauncher = Widget.extend({
template: "PlannerLauncher",
start: function() {
var self = this;
var res = this._super.apply(this, arguments);
return res.then(this.get_website_planner.bind(this)).then(function(planner) {
- self.$el.filter('.o_planner_systray').on('click', self, self.show_dialog.bind(self));
- self.$el.filter('.o_planner_help').on('click', '.dropdown-menu li a[data-menu]', self.on_menu_help);
+ self.$el.on('click', self, self.show_dialog.bind(self));
if (planner.length) {
self.planner = planner[0];
self.planner.data = $.parseJSON(planner[0].data) || {};
@@ -51,9 +50,9 @@ var WebsitePlannerLauncher = Widget.extend(planner.PlannerHelpMixin, {
});
return ajax.loadXML('/web_planner/static/src/xml/web_planner.xml', qweb).then(function() {
- var websitePlannerLauncher = new WebsitePlannerLauncher();
- websitePlannerLauncher.prependTo($('#oe_systray'));
- });
+ var websitePlannerLauncher = new WebsitePlannerLauncher();
+ websitePlannerLauncher.prependTo($('#oe_systray'));
+});
});