From bb8bb3cbfe07a23c0adad173a6afcc7bcaccedc7 Mon Sep 17 00:00:00 2001 From: Gert Pellin Date: Wed, 8 Aug 2018 09:59:20 +0200 Subject: [PATCH] [FIX] point_of_sale: wrong behavior Price Control (#26232) Before the fix price control only worked like should on initialisation of a pos section. On switching cashier during a setting manager would lose price change rights and normal users would gain them. --- addons/point_of_sale/static/src/js/screens.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/addons/point_of_sale/static/src/js/screens.js b/addons/point_of_sale/static/src/js/screens.js index 95a7555e5d2..182af5308d4 100644 --- a/addons/point_of_sale/static/src/js/screens.js +++ b/addons/point_of_sale/static/src/js/screens.js @@ -394,7 +394,9 @@ var NumpadWidget = PosBaseWidget.extend({ this.$el.find('.mode-button').click(_.bind(this.clickChangeMode, this)); }, applyAccessRights: function() { - var has_price_control_rights = !this.pos.config.restrict_price_control || this.pos.get_cashier().role == 'manager'; + var has_price_control_rights = !this.pos.config.restrict_price_control + || (this.pos.changed.cashier && this.pos.changed.cashier.role == 'manager') + || (!this.pos.changed.cashier && this.pos.get_cashier().role == 'manager'); this.$el.find('.mode-button[data-mode="price"]') .toggleClass('disabled-mode', !has_price_control_rights) .prop('disabled', !has_price_control_rights);