summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCedric Snauwaert <csn@openerp.com>2013-04-22 11:37:58 +0200
committerCedric Snauwaert <csn@openerp.com>2013-04-22 11:37:58 +0200
commitcffce8a42564eefefe14564cf2021d88236cfb95 (patch)
tree791780e5c1e196549028dbb2030683eda0f3f74b
parentef210bd48998fe1b91eb3916bcc6223e1b609580 (diff)
[FIX]hr_timesheet: fix multi-company problem, when user from company b was trying to create an employee, it was
having a read access error due to default value not being on same company bzr revid: csn@openerp.com-20130422093758-2vwa4faf1q485bxq
-rw-r--r--addons/hr_timesheet/hr_timesheet.py16
1 files changed, 14 insertions, 2 deletions
diff --git a/addons/hr_timesheet/hr_timesheet.py b/addons/hr_timesheet/hr_timesheet.py
index 6a538e5d09c..68c158e04e1 100644
--- a/addons/hr_timesheet/hr_timesheet.py
+++ b/addons/hr_timesheet/hr_timesheet.py
@@ -38,7 +38,13 @@ class hr_employee(osv.osv):
md = self.pool.get('ir.model.data')
try:
result = md.get_object_reference(cr, uid, 'hr_timesheet', 'analytic_journal')
- return result[1]
+ #search on id found in result to check if current user has read access right, if he does, it will return same id,
+ #otherwise it will return empty list
+ check_right = self.pool.get('account.analytic.journal').search(cr, uid, [('name', '=', result[1])], context=context)
+ if check_right:
+ return result[1]
+ else:
+ return False
except ValueError:
pass
return False
@@ -47,7 +53,13 @@ class hr_employee(osv.osv):
md = self.pool.get('ir.model.data')
try:
result = md.get_object_reference(cr, uid, 'product', 'product_product_consultant')
- return result[1]
+ #search on id found in result to check if current user has read access right, if he does, it will return same id,
+ #otherwise it will return empty list
+ check_right = self.pool.get('product.template').search(cr, uid, [('id', '=', result[1])], context=context)
+ if check_right:
+ return result[1]
+ else:
+ return False
except ValueError:
pass
return False