[IMP]improve code remove method from onchange_stage_id
authorSanjay Gohel (Open ERP) <sgo@tinyerp.com>
Mon, 30 Jul 2012 13:19:47 +0000 (18:49 +0530)
committerSanjay Gohel (Open ERP) <sgo@tinyerp.com>
Mon, 30 Jul 2012 13:19:47 +0000 (18:49 +0530)
bzr revid: sgo@tinyerp.com-20120730131947-6xf23v00o3wdb7tc

addons/hr_recruitment/hr_recruitment.py

index 844357e..25416bd 100644 (file)
@@ -249,9 +249,6 @@ class hr_applicant(base_stage, osv.Model):
         if not stage_id:
             return {'value':{}}
         stage = self.pool.get('hr.recruitment.stage').browse(cr, uid, stage_id, context)
-        if stage.state == 'done':
-            context['onchange'] = True
-            self.case_close_with_emp(cr, uid, ids, context)
         if stage.state == "draft":
             return {'value':{'active': True,'date_open': False, 'date_closed': False}}
         if stage.state == "open":
@@ -463,6 +460,16 @@ class hr_applicant(base_stage, osv.Model):
         res = super(hr_applicant, self).case_reset(cr, uid, ids, context)
         self.write(cr, uid, ids, {'date_open': False, 'date_closed': False})
         return res
+    
+    def stage_set(self, cr, uid, ids, stage_id, context=None):
+        if context is None:
+            context = {}
+        res = super(hr_applicant, self).stage_set(cr, uid, ids,stage_id, context)
+        stage = self.pool.get('hr.recruitment.stage').browse(cr, uid, stage_id, context)
+        if stage.state == 'done':
+            context['onchange'] = True
+            self.case_close_with_emp(cr, uid, ids, context)
+        return res
 
     def set_priority(self, cr, uid, ids, priority, *args):
         """Set applicant priority