[CalendarServer-changes] [5213] CalendarServer/trunk/twistedcaldav/ical.py

source_changes at macosforge.org source_changes at macosforge.org
Wed Feb 24 21:37:55 PST 2010


Revision: 5213
          http://trac.macosforge.org/projects/calendarserver/changeset/5213
Author:   wsanchez at apple.com
Date:     2010-02-24 21:37:52 -0800 (Wed, 24 Feb 2010)
Log Message:
-----------
Use timerange

Modified Paths:
--------------
    CalendarServer/trunk/twistedcaldav/ical.py

Modified: CalendarServer/trunk/twistedcaldav/ical.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/ical.py	2010-02-25 05:04:10 UTC (rev 5212)
+++ CalendarServer/trunk/twistedcaldav/ical.py	2010-02-25 05:37:52 UTC (rev 5213)
@@ -42,14 +42,12 @@
 from vobject.base import Component as vComponent, ContentLine as vContentLine, ParseError as vParseError
 from vobject.icalendar import TimezoneComponent, dateTimeToString, deltaToOffset, getTransition, stringToDate, stringToDateTime, stringToDurations, utc
 
-from twext.web2.dav.util import allDataFromStream
+from twext.python.log import Logger
+from twext.python.datetime import timerange, asUTC, iCalendarString
 from twext.web2.stream import IStream
+from twext.web2.dav.util import allDataFromStream
 
-from twext.python.log import Logger
-from twext.python.datetime import asUTC, iCalendarString
-
-from twistedcaldav.dateops import compareDateTime, timeRangesOverlap,\
-    normalizeStartEndDuration, normalizeForIndex, differenceDateTime
+from twistedcaldav.dateops import compareDateTime, timeRangesOverlap, normalizeForIndex, differenceDateTime
 from twistedcaldav.instance import InstanceList
 from twistedcaldav.scheduling.cuaddress import normalizeCUAddr
 
@@ -2013,24 +2011,24 @@
             dtend = self.getProperty("DTEND")
             duration = self.getProperty("DURATION")
             
-            newdtstart, newdtend = normalizeStartEndDuration(
-                dtstart.value(),
-                dtend.value() if dtend is not None else None,
-                duration.value() if duration is not None else None,
+            timeRange = timerange(
+                start    = dtstart.value(),
+                end      = dtend.value()    if dtend is not None else None,
+                duration = duration.value() if duration is not None else None,
             )
-            
-            dtstart.setValue(newdtstart)
+
+            dtstart.setValue(timeRange.start().asUTC().dateOrDatetime())
             if "X-VOBJ-ORIGINAL-TZID" in dtstart.params():
                 dtstart.params()["ORIGINAL-TZID"] = dtstart.params()["X-VOBJ-ORIGINAL-TZID"]
                 del dtstart.params()["X-VOBJ-ORIGINAL-TZID"]
             if dtend is not None:
-                dtend.setValue(newdtend)
+                dtend.setValue(timeRange.end().asUTC().dateOrDatetime())
                 if "X-VOBJ-ORIGINAL-TZID" in dtend.params():
                     dtend.params()["ORIGINAL-TZID"] = dtend.params()["X-VOBJ-ORIGINAL-TZID"]
                     del dtend.params()["X-VOBJ-ORIGINAL-TZID"]
             elif duration is not None:
                 self.removeProperty(duration)
-                self.addProperty(Property("DTEND", newdtend))
+                self.addProperty(Property("DTEND", timeRange.end().asUTC().dateOrDatetime()))
 
             exdates = self.properties("EXDATE")
             for exdate in exdates:
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20100224/61c39c11/attachment.html>


More information about the calendarserver-changes mailing list