[CalendarServer-changes] [9242] CalendarServer/trunk/twistedcaldav/scheduling/itip.py

source_changes at macosforge.org source_changes at macosforge.org
Fri May 11 09:40:31 PDT 2012


Revision: 9242
          http://trac.macosforge.org/projects/calendarserver/changeset/9242
Author:   cdaboo at apple.com
Date:     2012-05-11 09:40:31 -0700 (Fri, 11 May 2012)
Log Message:
-----------
Sequence number now properly updated on a CANCEL.

Modified Paths:
--------------
    CalendarServer/trunk/twistedcaldav/scheduling/itip.py

Modified: CalendarServer/trunk/twistedcaldav/scheduling/itip.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/scheduling/itip.py	2012-05-11 16:40:12 UTC (rev 9241)
+++ CalendarServer/trunk/twistedcaldav/scheduling/itip.py	2012-05-11 16:40:31 UTC (rev 9242)
@@ -202,8 +202,10 @@
                 # Delete the entire event off the auto-processed calendar
                 return True, True, None
             else:
-                # Cancel every instance in the existing event
+                # Cancel every instance in the existing event and sync over SEQUENCE
                 calendar.replacePropertyInAllComponents(Property("STATUS", "CANCELLED"))
+                newseq = itip_message.masterComponent().propertyValue("SEQUENCE")
+                calendar.replacePropertyInAllComponents(Property("SEQUENCE", newseq))
                 return True, False, None
 
         # iTIP CANCEL can contain multiple components being cancelled in the RECURRENCE-ID case.
@@ -238,6 +240,8 @@
                 else:
                     # Existing component is cancelled.
                     overridden.replaceProperty(Property("STATUS", "CANCELLED"))
+                    newseq = component.propertyValue("SEQUENCE")
+                    overridden.replacePropertyInAllComponents(Property("SEQUENCE", newseq))
 
             elif calendar_master:
                 # We are trying to CANCEL a non-overridden instance.
@@ -251,6 +255,8 @@
                     if overridden:
                         overridden.replaceProperty(Property("STATUS", "CANCELLED"))
                         calendar.addComponent(overridden)
+                        newseq = component.propertyValue("SEQUENCE")
+                        overridden.replacePropertyInAllComponents(Property("SEQUENCE", newseq))
 
         # If we have any EXDATEs lets add them to the existing calendar object.
         if exdates and calendar_master:
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20120511/3eec0ada/attachment-0001.html>


More information about the calendarserver-changes mailing list