| gmail.com |
add">+ else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ # vobject isn't meshing well with dateutil when dtstart isDate;
+ # dtstart is converted to a datetime for dateutil, but rdate
+ # isn't. To make dateutil happy, convert rdates which are dates to
+ # datetimes until vobject is fixed.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vobject to
+ # deal with unusual RRULEs correctly
+ if event.rdate[i] == dt:
+ del event.rdate[i]
+
+ # ignore timezones and recurrence till tzinfo -> PyICU is written
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ "RECURRENCE-ID = %s" % recurrenceID
+ else:
</span><span class="cx"> eventItem = uidMatchItem
</span><span class="rem">- uidMatchItem = None
</span><span class="cx"> countUpdated += 1
</span><span class="rem">- else:
- eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eventItem.icalUID = unicode(eventItem.itsUUID)
-
- logger.debug("eventItem is %s" % str(eventItem))
</span><span class="add">+ else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ # vobject isn't meshing well with dateutil when dtstart isDate;
+ # dtstart is converted to a datetime for dateutil, but rdate
+ # isn't. To make dateutil happy, convert rdates which are dates to
+ # datetimes until vobject is fixed.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eveen
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = dt.astimezone(localtime).replace(tzinfo=None)
+ except ValueError: # astimezone will fail for naive datetimes
+ pass
</span><span class="cx">
</span><span class="rem">- #Default to NOT any time
- eventItem.anyTime = False
-
- eventItem.displayName = displayName
- if isDate:
- eventItem.allDay = True
- eventItem.startTime = dt
- if v |
Fri, 13 Feb, 06:31 |
| gmail.com |
add">+ else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ # vobject isn't meshing well with dateutil when dtstart isDate;
+ # dtstart is converted to a datetime for dateutil, but rdate
+ # isn't. To make dateutil happy, convert rdates which are dates to
+ # datetimes until vobject is fixed.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vobject to
+ # deal with unusual RRULEs correctly
+ if event.rdate[i] == dt:
+ del event.rdate[i]
+
+ # ignore timezones and recurrence till tzinfo -> PyICU is written
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ "RECURRENCE-ID = %s" % recurrenceID
+ else:
</span><span class="cx"> eventItem = uidMatchItem
</span><span class="rem">- uidMatchItem = None
</span><span class="cx"> countUpdated += 1
</span><span class="rem">- else:
- eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eventItem.icalUID = unicode(eventItem.itsUUID)
-
- logger.debug("eventItem is %s" % str(eventItem))
</span><span class="add">+ else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ # vobject isn't meshing well with dateutil when dtstart isDate;
+ # dtstart is converted to a datetime for dateutil, but rdate
+ # isn't. To make dateutil happy, convert rdates which are dates to
+ # datetimes until vobject is fixed.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eveen
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = dt.astimezone(localtime).replace(tzinfo=None)
+ except ValueError: # astimezone will fail for naive datetimes
+ pass
</span><span class="cx">
</span><span class="rem">- #Default to NOT any time
- eventItem.anyTime = False
-
- eventItem.displayName = displayName
- if isDate:
- eventItem.allDay = True
- eventItem.startTime = dt
- if v |
Fri, 13 Feb, 06:31 |
| gmail.com |
d.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vobject to
+ # deal with unusual RRULEs correctly
+ if event.rdate[i] == dt:
+ del event.rdate[i]
+
+ # ignore timezones and recurrence till tzinfo -> PyICU is written
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ "RECURRENCE-ID = %s" % recurrenceID
+ else:
</span><span class="cx"> eventItem = uidMatchItem
</span><span class="rem">- uidMatchItem = None
</span><span class="cx"> countUpdated += 1
</span><span class="rem">- else:
- eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eventItem.icalUID = unicode(eventItem.itsUUID)
-
- logger.debug("eventItem is %s" % str(eventItem))
</span><span class="add">+ else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ # vobject isn't meshing well with dateutil when dtstart isDate;
+ # dtstart is converted to a datetime for dateutil, but rdate
+ # isn't. To make dateutil happy, convert rdates which are dates to
+ # datetimes until vobject is fixed.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eveen
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = dt.astimezone(localtime).replace(tzinfo=None)
+ except ValueError: # astimezone will fail for naive datetimes
+ pass
</span><span class="cx">
</span><span class="rem">- #Default to NOT any time
- eventItem.anyTime = False
-
- eventItem.displayName = displayName
- if isDate:
- eventItem.allDay = True
- eventItem.startTime = dt
- if v |
Fri, 13 Feb, 06:31 |
| gmail.com |
d.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vobject to
+ # deal with unusual RRULEs correctly
+ if event.rdate[i] == dt:
+ del event.rdate[i]
+
+ # ignore timezones and recurrence till tzinfo -> PyICU is written
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ "RECURRENCE-ID = %s" % recurrenceID
+ else:
</span><span class="cx"> eventItem = uidMatchItem
</span><span class="rem">- uidMatchItem = None
</span><span class="cx"> countUpdated += 1
</span><span class="rem">- else:
- eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eventItem.icalUID = unicode(eventItem.itsUUID)
-
- logger.debug("eventItem is %s" % str(eventItem))
</span><span class="add">+ else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ # vobject isn't meshing well with dateutil when dtstart isDate;
+ # dtstart is converted to a datetime for dateutil, but rdate
+ # isn't. To make dateutil happy, convert rdates which are dates to
+ # datetimes until vobject is fixed.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eveen
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = dt.astimezone(localtime).replace(tzinfo=None)
+ except ValueError: # astimezone will fail for naive datetimes
+ pass
</span><span class="cx">
</span><span class="rem">- #Default to NOT any time
- eventItem.anyTime = False
-
- eventItem.displayName = displayName
- if isDate:
- eventItem.allDay = True
- eventItem.startTime = dt
- if v |
Fri, 13 Feb, 06:31 |
| gmail.com |
d.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vobject to
+ # deal with unusual RRULEs correctly
+ if event.rdate[i] == dt:
+ del event.rdate[i]
+
+ # ignore timezones and recurrence till tzinfo -> PyICU is written
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ "RECURRENCE-ID = %s" % recurrenceID
+ else:
</span><span class="cx"> eventItem = uidMatchItem
</span><span class="rem">- uidMatchItem = None
</span><span class="cx"> countUpdated += 1
</span><span class="rem">- else:
- eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eventItem.icalUID = unicode(eventItem.itsUUID)
-
- logger.debug("eventItem is %s" % str(eventItem))
</span><span class="add">+ else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ # vobject isn't meshing well with dateutil when dtstart isDate;
+ # dtstart is converted to a datetime for dateutil, but rdate
+ # isn't. To make dateutil happy, convert rdates which are dates to
+ # datetimes until vobject is fixed.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eveen
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = dt.astimezone(localtime).replace(tzinfo=None)
+ except ValueError: # astimezone will fail for naive datetimes
+ pass
</span><span class="cx">
</span><span class="rem">- #Default to NOT any time
- eventItem.anyTime = False
-
- eventItem.displayName = displayName
- if isDate:
- eventItem.allDay = True
- eventItem.startTime = dt
- if v |
Fri, 13 Feb, 06:31 |
| gmail.com |
d.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vobject to
+ # deal with unusual RRULEs correctly
+ if event.rdate[i] == dt:
+ del event.rdate[i]
+
+ # ignore timezones and recurrence till tzinfo -> PyICU is written
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ "RECURRENCE-ID = %s" % recurrenceID
+ else:
</span><span class="cx"> eventItem = uidMatchItem
</span><span class="rem">- uidMatchItem = None
</span><span class="cx"> countUpdated += 1
</span><span class="rem">- else:
- eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eventItem.icalUID = unicode(eventItem.itsUUID)
-
- logger.debug("eventItem is %s" % str(eventItem))
</span><span class="add">+ else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ # vobject isn't meshing well with dateutil when dtstart isDate;
+ # dtstart is converted to a datetime for dateutil, but rdate
+ # isn't. To make dateutil happy, convert rdates which are dates to
+ # datetimes until vobject is fixed.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eveen
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = dt.astimezone(localtime).replace(tzinfo=None)
+ except ValueError: # astimezone will fail for naive datetimes
+ pass
</span><span class="cx">
</span><span class="rem">- #Default to NOT any time
- eventItem.anyTime = False
-
- eventItem.displayName = displayName
- if isDate:
- eventItem.allDay = True
- eventItem.startTime = dt
- if v |
Fri, 13 Feb, 06:31 |
| gmail.com |
d.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vobject to
+ # deal with unusual RRULEs correctly
+ if event.rdate[i] == dt:
+ del event.rdate[i]
+
+ # ignore timezones and recurrence till tzinfo -> PyICU is written
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ "RECURRENCE-ID = %s" % recurrenceID
+ else:
</span><span class="cx"> eventItem = uidMatchItem
</span><span class="rem">- uidMatchItem = None
</span><span class="cx"> countUpdated += 1
</span><span class="rem">- else:
- eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eventItem.icalUID = unicode(eventItem.itsUUID)
-
- logger.debug("eventItem is %s" % str(eventItem))
</span><span class="add">+ else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ # vobject isn't meshing well with dateutil when dtstart isDate;
+ # dtstart is converted to a datetime for dateutil, but rdate
+ # isn't. To make dateutil happy, convert rdates which are dates to
+ # datetimes until vobject is fixed.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eveen
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = dt.astimezone(localtime).replace(tzinfo=None)
+ except ValueError: # astimezone will fail for naive datetimes
+ pass
</span><span class="cx">
</span><span class="rem">- #Default to NOT any time
- eventItem.anyTime = False
-
- eventItem.displayName = displayName
- if isDate:
- eventItem.allDay = True
- eventItem.startTime = dt
- if v |
Fri, 13 Feb, 06:31 |
| gmail.com |
d.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vobject to
+ # deal with unusual RRULEs correctly
+ if event.rdate[i] == dt:
+ del event.rdate[i]
+
+ # ignore timezones and recurrence till tzinfo -> PyICU is written
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ "RECURRENCE-ID = %s" % recurrenceID
+ else:
</span><span class="cx"> eventItem = uidMatchItem
</span><span class="rem">- uidMatchItem = None
</span><span class="cx"> countUpdated += 1
</span><span class="rem">- else:
- eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eventItem.icalUID = unicode(eventItem.itsUUID)
-
- logger.debug("eventItem is %s" % str(eventItem))
</span><span class="add">+ else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ # vobject isn't meshing well with dateutil when dtstart isDate;
+ # dtstart is converted to a datetime for dateutil, but rdate
+ # isn't. To make dateutil happy, convert rdates which are dates to
+ # datetimes until vobject is fixed.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eveen
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = dt.astimezone(localtime).replace(tzinfo=None)
+ except ValueError: # astimezone will fail for naive datetimes
+ pass
</span><span class="cx">
</span><span class="rem">- #Default to NOT any time
- eventItem.anyTime = False
-
- eventItem.displayName = displayName
- if isDate:
- eventItem.allDay = True
- eventItem.startTime = dt
- if v |
Fri, 13 Feb, 06:31 |
| gmail.com |
d.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vobject to
+ # deal with unusual RRULEs correctly
+ if event.rdate[i] == dt:
+ del event.rdate[i]
+
+ # ignore timezones and recurrence till tzinfo -> PyICU is written
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ "RECURRENCE-ID = %s" % recurrenceID
+ else:
</span><span class="cx"> eventItem = uidMatchItem
</span><span class="rem">- uidMatchItem = None
</span><span class="cx"> countUpdated += 1
</span><span class="rem">- else:
- eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eventItem.icalUID = unicode(eventItem.itsUUID)
-
- logger.debug("eventItem is %s" % str(eventItem))
</span><span class="add">+ else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ # vobject isn't meshing well with dateutil when dtstart isDate;
+ # dtstart is converted to a datetime for dateutil, but rdate
+ # isn't. To make dateutil happy, convert rdates which are dates to
+ # datetimes until vobject is fixed.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eveen
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = dt.astimezone(localtime).replace(tzinfo=None)
+ except ValueError: # astimezone will fail for naive datetimes
+ pass
</span><span class="cx">
</span><span class="rem">- #Default to NOT any time
- eventItem.anyTime = False
-
- eventItem.displayName = displayName
- if isDate:
- eventItem.allDay = True
- eventItem.startTime = dt
- if v |
Fri, 13 Feb, 06:31 |
| gmail.com |
d.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vobject to
+ # deal with unusual RRULEs correctly
+ if event.rdate[i] == dt:
+ del event.rdate[i]
+
+ # ignore timezones and recurrence till tzinfo -> PyICU is written
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ "RECURRENCE-ID = %s" % recurrenceID
+ else:
</span><span class="cx"> eventItem = uidMatchItem
</span><span class="rem">- uidMatchItem = None
</span><span class="cx"> countUpdated += 1
</span><span class="rem">- else:
- eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eventItem.icalUID = unicode(eventItem.itsUUID)
-
- logger.debug("eventItem is %s" % str(eventItem))
</span><span class="add">+ else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ # vobject isn't meshing well with dateutil when dtstart isDate;
+ # dtstart is converted to a datetime for dateutil, but rdate
+ # isn't. To make dateutil happy, convert rdates which are dates to
+ # datetimes until vobject is fixed.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eveen
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = dt.astimezone(localtime).replace(tzinfo=None)
+ except ValueError: # astimezone will fail for naive datetimes
+ pass
</span><span class="cx">
</span><span class="rem">- #Default to NOT any time
- eventItem.anyTime = False
-
- eventItem.displayName = displayName
- if isDate:
- eventItem.allDay = True
- eventItem.startTime = dt
- if v |
Fri, 13 Feb, 06:31 |
| gmail.com |
d.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vobject to
+ # deal with unusual RRULEs correctly
+ if event.rdate[i] == dt:
+ del event.rdate[i]
+
+ # ignore timezones and recurrence till tzinfo -> PyICU is written
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ "RECURRENCE-ID = %s" % recurrenceID
+ else:
</span><span class="cx"> eventItem = uidMatchItem
</span><span class="rem">- uidMatchItem = None
</span><span class="cx"> countUpdated += 1
</span><span class="rem">- else:
- eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eventItem.icalUID = unicode(eventItem.itsUUID)
-
- logger.debug("eventItem is %s" % str(eventItem))
</span><span class="add">+ else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ # vobject isn't meshing well with dateutil when dtstart isDate;
+ # dtstart is converted to a datetime for dateutil, but rdate
+ # isn't. To make dateutil happy, convert rdates which are dates to
+ # datetimes until vobject is fixed.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eveen
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = dt.astimezone(localtime).replace(tzinfo=None)
+ except ValueError: # astimezone will fail for naive datetimes
+ pass
</span><span class="cx">
</span><span class="rem">- #Default to NOT any time
- eventItem.anyTime = False
-
- eventItem.displayName = displayName
- if isDate:
- eventItem.allDay = True
- eventItem.startTime = dt
- if v |
Fri, 13 Feb, 06:31 |
| gmail.com |
d.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vobject to
+ # deal with unusual RRULEs correctly
+ if event.rdate[i] == dt:
+ del event.rdate[i]
+
+ # ignore timezones and recurrence till tzinfo -> PyICU is written
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ "RECURRENCE-ID = %s" % recurrenceID
+ else:
</span><span class="cx"> eventItem = uidMatchItem
</span><span class="rem">- uidMatchItem = None
</span><span class="cx"> countUpdated += 1
</span><span class="rem">- else:
- eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eventItem.icalUID = unicode(eventItem.itsUUID)
-
- logger.debug("eventItem is %s" % str(eventItem))
</span><span class="add">+ else:
+ eventItem = pickKind.newItem(None, newItemParent)
+ countNew += 1
+ eventItem.icalUID = event.uid[0].value
+
+
+ # vobject isn't meshing well with dateutil when dtstart isDate;
+ # dtstart is converted to a datetime for dateutil, but rdate
+ # isn't. To make dateutil happy, convert rdates which are dates to
+ # datetimes until vobject is fixed.
+ for i, rdate in enumerate(event.rdate):
+ if type(rdate) == date:
+ event.rdate[i] = datetime.datetime.combine(rdate, time(0))
+ # get rid of RDATES that match dtstart, created by vo eventItem = pickKind.newItem(None, newItemParent)
- countNew += 1
- if first:
- eventItem.icalUID = event.uid[0].value
- first = False
- else:
- eveen
+ # give the repository a naive datetime, no timezone
+ try:
+ dt = dt.astimezone(localtime).replace(tzinfo=None)
+ except ValueError: # astimezone will fail for naive datetimes
+ pass
</span><span class="cx">
</span><span class="rem">- #Default to NOT any time
- eventItem.anyTime = False
-
- eventItem.displayName = displayName
- if isDate:
- eventItem.allDay = True
- eventItem.startTime = dt
- if v |
Fri, 13 Feb, 06:31 |