From: Denis Ledoux Date: Thu, 23 Oct 2014 14:40:53 +0000 (+0200) Subject: [FIX] calendar: avoid to pass ids as string to unlink and write methods X-Git-Url: http://git.inspyration.org/?a=commitdiff_plain;h=2c1bcfb2c90c2dbe5273e890bad173e2f345bb1b;p=odoo%2Fodoo.git [FIX] calendar: avoid to pass ids as string to unlink and write methods opw-616532: if the event is associated somehow to a workflow, an assert is done to check that element of the ids list are (int, long) --- diff --git a/addons/calendar/calendar.py b/addons/calendar/calendar.py index 6903e69..870b9b7 100644 --- a/addons/calendar/calendar.py +++ b/addons/calendar/calendar.py @@ -1465,8 +1465,8 @@ class calendar_event(osv.Model): res = False new_id = False - # Special write of complex IDS - for event_id in ids: + # Special write of complex IDS + for event_id in list(ids): if len(str(event_id).split('-')) == 1: continue @@ -1484,7 +1484,7 @@ class calendar_event(osv.Model): if data.get('rrule'): new_id = self._detach_one_event(cr, uid, event_id, values, context=None) - res = super(calendar_event, self).write(cr, uid, ids, values, context=context) + res = super(calendar_event, self).write(cr, uid, [int(event_id) for event_id in ids], values, context=context) # set end_date for calendar searching if values.get('recurrency', True) and values.get('end_type', 'count') in ('count', unicode('count')) and \ @@ -1613,7 +1613,7 @@ class calendar_event(osv.Model): if self.browse(cr, uid, event_id).recurrent_id: ids_to_exclure.append(event_id) else: - ids_to_unlink.append(event_id) + ids_to_unlink.append(int(event_id)) else: ids_to_exclure.append(event_id)