summaryrefslogtreecommitdiff
path: root/addons/process/process.py
diff options
context:
space:
mode:
Diffstat (limited to 'addons/process/process.py')
-rw-r--r--addons/process/process.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/addons/process/process.py b/addons/process/process.py
index 524a3236e7b..3eae5cc9565 100644
--- a/addons/process/process.py
+++ b/addons/process/process.py
@@ -118,6 +118,7 @@ class process_process(osv.osv):
data['active'] = False
data['gray'] = False
data['url'] = node.help_url
+ data['model_states'] = node.model_states
# get assosiated workflow
if data['model']:
@@ -198,6 +199,12 @@ class process_process(osv.osv):
resource['name'] = refobj.name_get(context)[0][1]
resource['perm'] = pool.get(ref_model).perm_read(cr, uid, [ref_id], context)[0]
+ ref_expr_context = Env(refobj, current_user)
+ try:
+ if not nodes[nid]['gray']:
+ nodes[nid]['active'] = eval(nodes[nid]['model_states'], ref_expr_context)
+ except:
+ pass
for r in relatives:
node = nodes[r]
if 'res' not in node: