[FIX] project_retro_planning: currection in write method.
authorvra <vra@tinyerp.com>
Wed, 4 Aug 2010 09:02:57 +0000 (14:32 +0530)
committervra <vra@tinyerp.com>
Wed, 4 Aug 2010 09:02:57 +0000 (14:32 +0530)
lp bug: https://launchpad.net/bugs/610198 fixed

bzr revid: vra@tinyerp.com-20100804090257-6tzeeip7vd1e46qb

addons/project_retro_planning/project_retro_planning.py

index e928cec..743d308 100644 (file)
@@ -29,8 +29,10 @@ class project_project(osv.osv):
     _inherit = 'project.project'
     _description = 'project.project'
 
-    def write(self, cr, uid, ids,vals, *args, **kwargs):
-        if 'date_end' in vals and vals['date_end']:
+    def write(self, cr, uid, ids, vals, *args, **kwargs):
+        if isinstance(ids, (int, long)):
+            ids = [ids]
+        if vals.get('date_end', False):
             data_project = self.browse(cr,uid,ids)
             for prj in data_project:
                 c= date(*time.strptime(vals['date_end'],'%Y-%m-%d')[:3])
@@ -40,9 +42,9 @@ class project_project(osv.osv):
                         start_dt = (datetime(*time.strptime(task.date_start,'%Y-%m-%d  %H:%M:%S')[:6])+(c-d)).strftime('%Y-%m-%d %H:%M:%S')
                         if task.date_deadline:
                             deadline_dt = (datetime(*time.strptime(task.date_deadline,'%Y-%m-%d  %H:%M:%S')[:6])+(c-d)).strftime('%Y-%m-%d %H:%M:%S')
-                            self.pool.get('project.task').write(cr,uid,task.id,{'date_start':start_dt, 'date_deadline':deadline_dt})
+                            self.pool.get('project.task').write(cr,uid, [task.id], {'date_start':start_dt, 'date_deadline':deadline_dt})
                         else:
-                            self.pool.get('project.task').write(cr,uid,task.id,{'date_start':start_dt})
+                            self.pool.get('project.task').write(cr, uid, [task.id], {'date_start':start_dt})
         return super(project_project,self).write(cr, uid, ids,vals, *args, **kwargs)
 
 project_project()