_inherit = 'res.users'
_columns = {
'barcode' : fields.char('Barcode', help="BarCode", oldname='ean13'),
+ 'pos_security_pin': fields.char('Security PIN',size=32, help='A Security PIN used to protect sensible functionality in the Point of Sale'),
'pos_config' : fields.many2one('pos.config', 'Default Point of Sale', domain=[('state', '=', 'active')]),
}
}
},{
model: 'res.users',
- fields: ['name','barcode'],
+ fields: ['name','pos_security_pin','barcode'],
domain: null,
loaded: function(self,users){ self.users = users; },
},{
'message': _t('Change Cashier'),
list: list,
confirm: function(cashier){
- this.pos.cashier = cashier;
- self.renderElement();
+ self.set_cashier(cashier);
},
});
},
+ set_cashier: function(cashier){
+ var self = this;
+ if (cashier.pos_security_pin) {
+ this.pos_widget.screen_selector.show_popup('password',{
+ 'message': _t('Password'),
+ confirm: function(password) {
+ if (password === cashier.pos_security_pin) {
+ self.pos.cashier = cashier;
+ self.renderElement();
+ } else {
+ this.pos_widget.screen_selector.show_popup('error',{
+ 'message':_t('Password Incorrect'),
+ });
+ }
+ },
+ });
+ } else {
+ this.pos.cashier = cashier;
+ this.renderElement();
+ }
+ },
get_name: function(){
var user = this.pos.cashier || this.pos.user;
if(user){