diff options
| author | mra (Open ERP) <mra@tinyerp.com> | 2010-04-05 14:14:37 +0530 |
|---|---|---|
| committer | mra (Open ERP) <mra@tinyerp.com> | 2010-04-05 14:14:37 +0530 |
| commit | 84c1940f7bf4c06a731f81bcff828ec45e85ab91 (patch) | |
| tree | 7d548275360ac250df47838c55626c1a72ce5bca /addons/project/project.py | |
| parent | c6ad3b57510100445291450716869f892689170b (diff) | |
[ADD] Project: Osv memory wizard convert (Close Task)
bzr revid: mra@tinyerp.com-20100405084437-7309p0p0p1lg9g0m
Diffstat (limited to 'addons/project/project.py')
| -rw-r--r-- | addons/project/project.py | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/addons/project/project.py b/addons/project/project.py index 0c6cc839f6d..278646e097a 100644 --- a/addons/project/project.py +++ b/addons/project/project.py @@ -358,6 +358,8 @@ class task(osv.osv): return res def do_close(self, cr, uid, ids, *args): + mail_send = False + mod_obj = self.pool.get('ir.model.data') request = self.pool.get('res.request') tasks = self.browse(cr, uid, ids) for task in tasks: @@ -373,6 +375,9 @@ class task(osv.osv): 'ref_doc1': 'project.task,%d'% (task.id,), 'ref_doc2': 'project.project,%d'% (project.id,), }) + elif project.warn_manager: + task_id = ids[0] + mail_send = True self.write(cr, uid, [task.id], {'state': 'done', 'date_end':time.strftime('%Y-%m-%d %H:%M:%S'), 'remaining_hours': 0.0}) for parent_id in task.parent_ids: if parent_id.state in ('pending','draft'): @@ -382,6 +387,20 @@ class task(osv.osv): reopen = False if reopen: self.do_reopen(cr, uid, [parent_id.id]) + if mail_send: + model_data_ids = mod_obj.search(cr,uid,[('model','=','ir.ui.view'),('name','=','view_project_close_task')]) + resource_id = mod_obj.read(cr, uid, model_data_ids, fields=['res_id'])[0]['res_id'] + return { + 'name': _('Email Send to Customer'), + 'view_type': 'form', + 'context': {'task_id': task_id,}, # improve me + 'view_mode': 'tree,form', + 'res_model': 'close.task', + 'views': [(resource_id,'form')], + 'type': 'ir.actions.act_window', + 'target': 'new', + 'nodestroy': True + } return True def do_reopen(self, cr, uid, ids, *args): |
