From bd76d0a66a42c534bfa21fa9e408b13c13e60ae3 Mon Sep 17 00:00:00 2001 From: "rpa (Open ERP)" Date: Wed, 4 Aug 2010 19:07:58 +0530 Subject: [PATCH] [FIX]: caldav: Fixed problem of Importing date with timezone information(converted into utc) bzr revid: rpa@tinyerp.com-20100804133758-a0u50if8z3rol31l --- addons/caldav/calendar.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/addons/caldav/calendar.py b/addons/caldav/calendar.py index 8a40d7c253d..c60bccad036 100644 --- a/addons/caldav/calendar.py +++ b/addons/caldav/calendar.py @@ -257,6 +257,9 @@ class CalDAV(object): if cal_data.name.lower() in self.__attribute__: if cal_data.params.get('X-VOBJ-ORIGINAL-TZID'): self.ical_set('vtimezone', cal_data.params.get('X-VOBJ-ORIGINAL-TZID'), 'value') + date_utc = cal_data.value.astimezone(pytz.utc) + self.ical_set(cal_data.name.lower(), date_utc, 'value') + continue self.ical_set(cal_data.name.lower(), cal_data.value, 'value') vals = map_data(cr, uid, self, context=context) return vals @@ -331,8 +334,7 @@ class CalDAV(object): if tzval: date_1 = datetime.strptime(data[map_field], '%Y-%m-%d %H:%M:%S') desttz = pytz.timezone(tzval.title()) - srctz = pytz.timezone('GMT') - date_gmt = date_1.replace(tzinfo=srctz).astimezone(desttz).strftime('%Y-%m-%d %H:%M:%S') + date_gmt = date_1.replace(tzinfo=pytz.utc).astimezone(desttz).strftime('%Y-%m-%d %H:%M:%S') dtfield.params['TZID'] = [tzval.title()] dtfield.value = parser.parse(date_gmt) else: