summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUCO,JVO <>2009-10-27 18:42:56 +0530
committerJay (Open ERP) <jvo@tinyerp.com>2009-10-27 18:42:56 +0530
commitdb8f833229f950c7bc7056cc650704f2b37d605e (patch)
tree0f01682b155552afa41676a8d2395330a7ca4940
parentab09c43edd6866b768943ddfd0b7e7f29fa41128 (diff)
[FIX] Record rule : domain evaluation problem corrected
lp bug: https://launchpad.net/bugs/410191 fixed bzr revid: jvo@tinyerp.com-20091027131256-7q2gl9vzf21jsuir
-rw-r--r--bin/addons/base/ir/ir_rule.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/bin/addons/base/ir/ir_rule.py b/bin/addons/base/ir/ir_rule.py
index a2d53b4de27..d8235403ce3 100644
--- a/bin/addons/base/ir/ir_rule.py
+++ b/bin/addons/base/ir/ir_rule.py
@@ -107,6 +107,11 @@ class ir_rule(osv.osv):
for rule in self.browse(cr, uid, ids, context):
eval_user_data = {'user': self.pool.get('res.users').browse(cr, 1, uid),
'time':time}
+ if rule.operand.startswith('user.') and rule.operand.count('.') > 1:
+ #Need to check user.field.field1.field2(if field is False,it will break the chain)
+ op = rule.operand[5:]
+ rule.operand = rule.operand[:5+len(op[:op.find('.')])] +' and '+ rule.operand + ' or False'
+
if rule.domain_force:
res[rule.id] = eval(rule.domain_force, eval_user_data)
else: