diff options
| author | pso (tiny) <pso@tinyerp.com> | 2008-12-26 17:20:25 +0530 |
|---|---|---|
| committer | pso (tiny) <pso@tinyerp.com> | 2008-12-26 17:20:25 +0530 |
| commit | d8b7f467d7fee11a7a21aa11734b9311ddd00fbe (patch) | |
| tree | e39a650c111f8efc64c2a79646bc9703e06faacd /addons/process/process.py | |
| parent | 923835229cb92dad0a71a867c0bd0bf9993b1bf0 (diff) | |
| parent | 0bc6a1dbaf93b961677e863cefb2fe7bdf89f9f3 (diff) | |
merge
bzr revid: pso@tinyerp.com-20081226115025-npblp1a580od5ddw
Diffstat (limited to 'addons/process/process.py')
| -rw-r--r-- | addons/process/process.py | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/addons/process/process.py b/addons/process/process.py index 4eba1a44410..8f88b0b92c5 100644 --- a/addons/process/process.py +++ b/addons/process/process.py @@ -60,15 +60,13 @@ class process_process(osv.osv): def search_by_model(self, cr, uid, res_model, context): pool = pooler.get_pool(cr.dbname) + model_ids = (res_model or None) and pool.get('ir.model').search(cr, uid, [('model', '=', res_model)]) - model_ids = pool.get('ir.model').search(cr, uid, [('model', '=', res_model)]) - if not model_ids: - return [] - + domain = (model_ids or []) and [('model_id', 'in', model_ids)] result = [] # search all processes - res = pool.get('process.process').search(cr, uid, [('model_id', 'in', model_ids)]) + res = pool.get('process.process').search(cr, uid, domain) if res: res = pool.get('process.process').browse(cr, uid, res, context) for process in res: @@ -76,9 +74,9 @@ class process_process(osv.osv): return result # else search process nodes - res = pool.get('process.node').search(cr, uid, [('model_id', 'in', model_ids)]) + res = pool.get('process.node').search(cr, uid, domain) if res: - res = pool.get('process.node').browse(cr, uid, res, context) + res = pool.get('process.node').browse(cr, uid, res, context) for node in res: if (node.process_id.id, node.process_id.name) not in result: result.append((node.process_id.id, node.process_id.name)) @@ -92,13 +90,15 @@ class process_process(osv.osv): pool = pooler.get_pool(cr.dbname) process = pool.get('process.process').browse(cr, uid, [id])[0] - states = dict(pool.get(res_model).fields_get(cr, uid, context=context).get('state', {}).get('selection', {})) - title = process.name expr_context = {} + states = {} perm = None + if res_model: + states = dict(pool.get(res_model).fields_get(cr, uid, context=context).get('state', {}).get('selection', {})) + if res_id: current_object = pool.get(res_model).browse(cr, uid, [res_id], context)[0] current_user = pool.get('res.users').browse(cr, uid, [uid], context)[0] |
