From a4255c3c1ac63ff01d43caae87db6a60fb0f4050 Mon Sep 17 00:00:00 2001 From: hparfr Date: Fri, 8 Sep 2017 15:17:08 +0000 Subject: [PATCH] Migrate switch_company_warning to 10 --- web_switch_company_warning/__manifest__.py | 11 ++++--- .../static/src/js/switch_company_warning.js | 32 +++++++------------ .../static/src/xml/switch_company_warning.xml | 4 +-- 3 files changed, 20 insertions(+), 27 deletions(-) diff --git a/web_switch_company_warning/__manifest__.py b/web_switch_company_warning/__manifest__.py index 3cda8a1f..b8674d64 100644 --- a/web_switch_company_warning/__manifest__.py +++ b/web_switch_company_warning/__manifest__.py @@ -1,15 +1,16 @@ # -*- coding: utf-8 -*- -# © <2015> +# Copyright 2017 Akretion # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). { "name": "Multicompany - Switch Company Warning", "summary": "Show a warning if current company has been switched" - " in another tab or window.", - "version": "8.0.0.1.0", + " in another tab or window.", + "version": "10.0.0.1.0", "category": "web", "website": "http://akretion.com", "license": "AGPL-3", - "author": "Akretion / Odoo Community Association (OCA)", + "author": "Akretion, " + "Odoo Community Association (OCA)", "depends": [ 'web', ], @@ -19,6 +20,6 @@ "qweb": [ "static/src/xml/switch_company_warning.xml", ], - 'installable': False, + 'installable': True, "application": False, } diff --git a/web_switch_company_warning/static/src/js/switch_company_warning.js b/web_switch_company_warning/static/src/js/switch_company_warning.js index a49040fc..ababba27 100644 --- a/web_switch_company_warning/static/src/js/switch_company_warning.js +++ b/web_switch_company_warning/static/src/js/switch_company_warning.js @@ -1,52 +1,44 @@ 'use strict'; -openerp.web_switch_company_warning = function (instance) { - +odoo.define('web_switch_company_warning.widget', function (require) { + var Widget = require('web.Widget'); + var UserMenu = require('web.UserMenu'); //Show a big banner in the top of the page if the company has been //changed in another tab or window (in the same browser) if (!window.SharedWorker) return; //not supported - instance.web.SwitchCompanyWorker = null; //keep a global reference - - instance.web.SwitchCompanyWarningWidget = instance.web.Widget.extend({ - - template:'web_switch_company_warning.warningWidget', + var SwitchCompanyWarningWidget = Widget.extend({ + template:'WarningWidget', init: function() { this._super(); - var self = this; - var w = new SharedWorker('/web_switch_company_warning/static/src/js/switch_company_warning_worker.js'); - instance.web.SwitchCompanyWorker = w; w.port.addEventListener('message', function (msg) { - if (msg.data.type !== 'newCtx') - return; - + if (msg.data.type !== 'newCtx') + return; if(msg.data.newCtx != self.session.company_id) { self.$el.show(); } else { self.$el.hide(); } }); - w.port.start(); w.port.postMessage(this.session.company_id); } }); - instance.web.UserMenu = instance.web.UserMenu.extend({ - + UserMenu.include({ init: function(parent) { this._super(parent); - - var switchCompanyWarning = new instance.web.SwitchCompanyWarningWidget(); - switchCompanyWarning.insertAfter(instance.webclient.$el.find('#oe_main_menu_navbar')); + var switchCompanyWarning = new SwitchCompanyWarningWidget(); + switchCompanyWarning.appendTo('#oe_main_menu_navbar'); } }); -}; + return SwitchCompanyWarningWidget; +}); diff --git a/web_switch_company_warning/static/src/xml/switch_company_warning.xml b/web_switch_company_warning/static/src/xml/switch_company_warning.xml index 7943516e..8c3983a9 100644 --- a/web_switch_company_warning/static/src/xml/switch_company_warning.xml +++ b/web_switch_company_warning/static/src/xml/switch_company_warning.xml @@ -1,9 +1,9 @@ \ No newline at end of file +