Browse Source

[IMP] pos_access_right: lint improvements

pull/324/head
Gabriela Rivero 6 years ago
parent
commit
a13ae8e9c1
  1. 111
      pos_access_right/static/src/js/pos_access_right.js

111
pos_access_right/static/src/js/pos_access_right.js

@ -17,38 +17,39 @@ odoo.define('pos_access_right.pos_access_right', function (require) {
var _t = core._t; var _t = core._t;
/* ******************************************************** /* ********************************************************
point_of_sale.gui
Point_of_sale.gui
******************************************************** */ ******************************************************** */
// New function 'display_access_right' to display disabled functions // New function 'display_access_right' to display disabled functions
gui.Gui.prototype.display_access_right = function (user) { gui.Gui.prototype.display_access_right = function (user) {
var records = new Model('res.users') var records = new Model('res.users')
.query(['groups_id']) .query(['groups_id'])
.filter([['id', '=', user['id']]])
.all()
.filter([['id', '=', user.id]])
.all();
var groups_id = []; var groups_id = [];
var group_negative_qty_id = this.pos.config.group_negative_qty_id[0]; var group_negative_qty_id = this.pos.config.group_negative_qty_id[0];
var group_discount_id = this.pos.config.group_discount_id[0]; var group_discount_id = this.pos.config.group_discount_id[0];
var group_change_unit_price_id = this.pos.config.group_change_unit_price_id[0];
var group_price_id = this.pos.config.group_change_unit_price_id[0];
records.then (function(result) { records.then (function(result) {
groups_id = result[0]['groups_id'];
if (groups_id.indexOf(group_negative_qty_id) != -1){
$('.numpad-minus').removeClass('pos-disabled-mode');
}
else{
groups_id = result[0].groups_id;
if (groups_id.indexOf(group_negative_qty_id) === -1) {
$('.numpad-minus').addClass('pos-disabled-mode'); $('.numpad-minus').addClass('pos-disabled-mode');
} else {
$('.numpad-minus').removeClass('pos-disabled-mode');
} }
if (groups_id.indexOf(group_discount_id) != -1){
$(".mode-button[data-mode='discount']").removeClass('pos-disabled-mode');
}
else{
$(".mode-button[data-mode='discount']").addClass('pos-disabled-mode');
}
if (groups_id.indexOf(group_change_unit_price_id) != -1){
$(".mode-button[data-mode='price']").removeClass('pos-disabled-mode');
if (groups_id.indexOf(group_discount_id) === -1) {
$(".mode-button[data-mode='discount']").
addClass('pos-disabled-mode');
} else {
$(".mode-button[data-mode='discount']").
removeClass('pos-disabled-mode');
} }
else{
$(".mode-button[data-mode='price']").addClass('pos-disabled-mode');
if (groups_id.indexOf(group_price_id) === -1) {
$(".mode-button[data-mode='price']").
addClass('pos-disabled-mode');
} else {
$(".mode-button[data-mode='price']").
removeClass('pos-disabled-mode');
} }
} }
); );
@ -57,7 +58,7 @@ point_of_sale.gui
/* ******************************************************** /* ********************************************************
point_of_sale.models
Point_of_sale.models
******************************************************** */ ******************************************************** */
// load extra data from 'pos_config' (ids of new groups) // load extra data from 'pos_config' (ids of new groups)
@ -76,22 +77,22 @@ point_of_sale.models
}; };
/* ******************************************************** /* ********************************************************
chrome.OrderSelectorWidget
Chrome.OrderSelectorWidget
******************************************************** */ ******************************************************** */
chrome.OrderSelectorWidget.include({ chrome.OrderSelectorWidget.include({
neworder_click_handler: function (event, $el) { neworder_click_handler: function (event, $el) {
var user = this.pos.get_cashier()
var user = this.pos.get_cashier();
var records = new Model('res.users') var records = new Model('res.users')
.query(['groups_id']) .query(['groups_id'])
.filter([['id', '=', user['id']]])
.all()
.filter([['id', '=', user.id]])
.all();
var groups_id = []; var groups_id = [];
var group_multi_order_id = this.pos.config.group_multi_order_id[0]; var group_multi_order_id = this.pos.config.group_multi_order_id[0];
var gui = this.gui; var gui = this.gui;
records.then (function(result) { records.then (function(result) {
groups_id = result[0]['groups_id'];
if (groups_id.indexOf(group_multi_order_id) == -1) {
groups_id = result[0].groups_id;
if (groups_id.indexOf(group_multi_order_id) === -1) {
gui.show_popup('error', { gui.show_popup('error', {
'title': _t('Many Orders - Unauthorized function'), 'title': _t('Many Orders - Unauthorized function'),
'body': _t('Please ask your manager to do it.'), 'body': _t('Please ask your manager to do it.'),
@ -102,17 +103,17 @@ chrome.OrderSelectorWidget
return this._super(); return this._super();
}, },
deleteorder_click_handler: function (event, $el) { deleteorder_click_handler: function (event, $el) {
var user = this.pos.get_cashier()
var user = this.pos.get_cashier();
var records = new Model('res.users') var records = new Model('res.users')
.query(['groups_id']) .query(['groups_id'])
.filter([['id', '=', user['id']]])
.all()
.filter([['id', '=', user.id]])
.all();
var groups_id = []; var groups_id = [];
var group_delete_order_id = this.pos.config.group_delete_order_id[0];
var group_del_order_id = this.pos.config.group_delete_order_id[0];
var gui = this.gui; var gui = this.gui;
records.then (function(result) { records.then (function(result) {
groups_id = result[0]['groups_id'];
if (groups_id.indexOf(group_delete_order_id) == -1) {
groups_id = result[0].groups_id;
if (groups_id.indexOf(group_del_order_id) === -1) {
gui.show_popup('error', { gui.show_popup('error', {
'title': _t('Delete Order - Unauthorized function'), 'title': _t('Delete Order - Unauthorized function'),
'body': _t('Please ask your manager to do it.'), 'body': _t('Please ask your manager to do it.'),
@ -126,7 +127,7 @@ chrome.OrderSelectorWidget
/* ******************************************************** /* ********************************************************
screens.NumpadWidget
Screens.NumpadWidget
******************************************************** */ ******************************************************** */
screens.NumpadWidget.include({ screens.NumpadWidget.include({
@ -137,21 +138,22 @@ screens.NumpadWidget
this.gui.display_access_right(this.pos.get_cashier()); this.gui.display_access_right(this.pos.get_cashier());
}, },
// block '+/-' button if user doesn't belong to the correct group
// Block '+/-' button if user doesn't belong to the correct group
clickSwitchSign: function () { clickSwitchSign: function () {
var user = this.pos.get_cashier()
var user = this.pos.get_cashier();
var records = new Model('res.users') var records = new Model('res.users')
.query(['groups_id']) .query(['groups_id'])
.filter([['id', '=', user['id']]])
.all()
.filter([['id', '=', user.id]])
.all();
var groups_id = []; var groups_id = [];
var group_negative_qty_id = this.pos.config.group_negative_qty_id[0];
var group_neg_qty_id = this.pos.config.group_negative_qty_id[0];
var gui = this.gui; var gui = this.gui;
records.then (function(result) { records.then (function(result) {
groups_id = result[0]['groups_id'];
if (groups_id.indexOf(group_negative_qty_id) == -1) {
groups_id = result[0].groups_id;
if (groups_id.indexOf(group_neg_qty_id) === -1) {
gui.show_popup('error', { gui.show_popup('error', {
'title': _t('Negative Quantity - Unauthorized function'),
'title':
_t('Negative Quantity - \Unauthorized function'),
'body': _t('Please ask your manager to do it.'), 'body': _t('Please ask your manager to do it.'),
}); });
} }
@ -160,30 +162,33 @@ screens.NumpadWidget
return this._super(); return this._super();
}, },
// block 'discount' or 'price' button if user doesn't belong to the correct group
// Block 'discount' or 'price' button if user doesn't belong to the
//correct group
clickChangeMode: function (event) { clickChangeMode: function (event) {
var user = this.pos.get_cashier()
var user = this.pos.get_cashier();
var records = new Model('res.users') var records = new Model('res.users')
.query(['groups_id']) .query(['groups_id'])
.filter([['id', '=', user['id']]])
.all()
.filter([['id', '=', user.id]])
.all();
var groups_id = []; var groups_id = [];
var group_discount_id = this.pos.config.group_discount_id[0]; var group_discount_id = this.pos.config.group_discount_id[0];
var group_change_unit_price_id = this.pos.config.group_change_unit_price_id[0];
var group_price_id = this.pos.config.group_change_unit_price_id[0];
var gui = this.gui; var gui = this.gui;
records.then (function(result) { records.then (function(result) {
groups_id = result[0]['groups_id'];
if (event.currentTarget.attributes['data-mode'].nodeValue == 'discount' &&
groups_id.indexOf(group_discount_id) == -1) {
groups_id = result[0].groups_id;
if (event.currentTarget.attributes['data-mode'].nodeValue ===
'discount' &&
groups_id.indexOf(group_discount_id) === -1) {
gui.show_popup('error', { gui.show_popup('error', {
'title': _t('Discount - Unauthorized function'), 'title': _t('Discount - Unauthorized function'),
'body': _t('Please ask your manager to do it.'), 'body': _t('Please ask your manager to do it.'),
}); });
}
else if (event.currentTarget.attributes['data-mode'].nodeValue == 'price' &&
groups_id.indexOf(group_change_unit_price_id) == -1) {
} else if (event.currentTarget.attributes['data-mode'].nodeValue
=== 'price' &&
groups_id.indexOf(group_price_id) === -1) {
gui.show_popup('error', { gui.show_popup('error', {
'title': _t('Change Unit Price - Unauthorized function'),
'title':
_t('Change Unit Price - Unauthorized function'),
'body': _t('Please ask your manager to do it.'), 'body': _t('Please ask your manager to do it.'),
}); });
} }

Loading…
Cancel
Save