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 @@