summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js/widgets/switch_company_menu.js
diff options
context:
space:
mode:
authorYannick Tivisse <yti@odoo.com>2019-05-21 14:27:40 +0000
committerYannick Tivisse <yti@odoo.com>2019-05-28 14:31:34 +0000
commitec670beb4b63796e1ce7fa0d1cc51bcef3b38f46 (patch)
tree82bb45bd0287fac9312e7b8d8f1f8b122bd3d6b4 /addons/web/static/src/js/widgets/switch_company_menu.js
parent73474f56fa1f22e6ed6583f77a5a5a3ee06479e3 (diff)
[IMP] web: Keep multi company config when switching company
when moving from company A to company B, company A should not be 'uncheck' (it should stay in the set of visible companies) use case: https://drive.google.com/file/d/1o9lN_8jHSxDOkeqTpo7F_NgmvO4NwF2l/view I start in A with only A visible I check B to make both A and B visible I move to B and A is not visible anymore when moving to a company that is not checked, it should be checked, but the reverse is not true (moving out of a company should not uncheck it) fp request
Diffstat (limited to 'addons/web/static/src/js/widgets/switch_company_menu.js')
-rw-r--r--addons/web/static/src/js/widgets/switch_company_menu.js9
1 files changed, 7 insertions, 2 deletions
diff --git a/addons/web/static/src/js/widgets/switch_company_menu.js b/addons/web/static/src/js/widgets/switch_company_menu.js
index 0939c8b1c8b..bd90081f8e3 100644
--- a/addons/web/static/src/js/widgets/switch_company_menu.js
+++ b/addons/web/static/src/js/widgets/switch_company_menu.js
@@ -57,9 +57,14 @@ var SwitchCompanyMenu = Widget.extend({
var hash = $.bbq.getState()
var allowed_company_ids = _.map(hash.cids.split(','), function(company_id) {return parseInt(company_id);});
if ($($(ev.currentTarget).parent()).find('.fa-square-o').length) {
- allowed_company_ids.push(companyID);
+ // 1 enabled company: Stay in single company mode
+ if (this.allowed_company_ids.length === 1) {
+ allowed_company_ids = [companyID]
+ } else { // Multi company mode
+ allowed_company_ids.push(companyID);
+ }
}
- session.setCompanies(companyID, [companyID]);
+ session.setCompanies(companyID, allowed_company_ids);
},
//--------------------------------------------------------------------------