From 9d1c65eb21d04de928b02f4f03ce02ed7d5d8157 Mon Sep 17 00:00:00 2001 From: "ARA (OpenERP)" Date: Tue, 29 Mar 2011 17:01:17 +0530 Subject: [PATCH] [FIX] hr_holidays: Second validation bzr revid: ara@tinyerp.com-20110329113117-yxldstrlmf4x0mpn --- addons/hr_holidays/hr_holidays.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/addons/hr_holidays/hr_holidays.py b/addons/hr_holidays/hr_holidays.py index 499a6e6884a..6c6a339b3a4 100644 --- a/addons/hr_holidays/hr_holidays.py +++ b/addons/hr_holidays/hr_holidays.py @@ -235,9 +235,10 @@ class hr_holidays(osv.osv): manager = ids2 and ids2[0] or False self.write(cr, uid, ids, {'state':'validate'}) data_holiday = self.browse(cr, uid, ids) + holiday_ids = set() for record in data_holiday: if record.holiday_status_id.double_validation: - self.write(cr, uid, ids, {'manager_id2': manager}) + holiday_ids.add(record.id) if record.holiday_type == 'employee' and record.type == 'remove': meeting_obj = self.pool.get('crm.meeting') vals = { @@ -274,6 +275,9 @@ class hr_holidays(osv.osv): wf_service.trg_validate(uid, 'hr.holidays', leave_id, 'confirm', cr) wf_service.trg_validate(uid, 'hr.holidays', leave_id, 'validate', cr) wf_service.trg_validate(uid, 'hr.holidays', leave_id, 'second_validate', cr) + holiday_ids = list(holiday_ids) + if holiday_ids: + self.write(cr, uid, holiday_ids, {'manager_id2': manager}) return True def holidays_confirm(self, cr, uid, ids, *args):