2 from osv import osv, fields
7 # This code is a duplicate of product#check_ean function
8 def check_ean(eancode):
11 if len(eancode) <> 13:
21 reversevalue = eanvalue[::-1]
22 finalean=reversevalue[1:]
24 for i in range(len(finalean)):
26 oddsum += int(finalean[i])
28 evensum += int(finalean[i])
29 total=(oddsum * 3) + evensum
31 check = int(10 - math.ceil(total % 10.0)) %10
33 if check != int(eancode[-1]):
37 class res_users(osv.osv):
38 _inherit = 'res.users'
40 'ean13' : fields.char('EAN13', size=13, help="BarCode"),
41 'pos_config' : fields.many2one('pos.config', 'Default Point of Sale', domain=[('state', '=', 'active')]),
44 def _check_ean(self, cr, uid, ids, context=None):
46 check_ean(user.ean13) == True
47 for user in self.browse(cr, uid, ids, context=context)
51 (_check_ean, "Error: Invalid ean code", ['ean13'],),