Time for an update on GSoC. In the last weeks i finished working on the delegation code and added the counter method as well.
After the work on the imip-bar was described in the earlier posts, the missing part is the event-summary-dialog. Especially when using caldav, this is the main entrypoint for delegation requests. I extended the dialog to hold up possible delegetation info and do the needed transactions with the caldav server.
This was followed by extensive tests between SOGo , Zimbra  and the Lightning in memory calendar implementations.
Finally i put some work into cosmetic updates, like additional informations for the imip template on delegation.
The imip counter method had to be added from scratch. I startet again with the calItipUtils module where the new methods “COUNTER” and “DECLINECOUNTER” were registered at various places.
Most effort was spend on a new dialog holding the nessassary informations and not adding to the already overloaded and overwhelming calendar-event-dialog files.
When the user changed the wanted time or location properties, a new COUNTER request is send to the organiser.
BEGIN:VCALENDAR PRODID:-//Example/ExampleCalendarClient//EN METHOD:COUNTER VERSION:2.0 BEGIN:VEVENT ORGANIZER:mailto:email@example.com ATTENDEE;ROLE=CHAIR;PARTSTAT=ACCEPTED:mailto:firstname.lastname@example.org ATTENDEE;RSVP=TRUE;CUTYPE=INDIVIDUAL:mailto:email@example.com ATTENDEE;RSVP=TRUE;CUTYPE=INDIVIDUAL:mailto:firstname.lastname@example.org DTSTART:19970701T160000Z DTEND:19970701T170000Z DTSTAMP:19970612T190000Z SUMMARY:Discuss the Merits of the election results LOCATION:Blue Conference Room COMMENT:This time works much better and I think the big conference room is too big UID:email@example.com SEQUENCE:0 END:VEVENT END:VCALENDAR
The organizer can either reject the request by sending a DECLINECOUNTER with the originial itip item back to the attendee or accept by sending a new REQUEST with updated sequence number.
BEGIN:VCALENDAR PRODID:-//Example/ExampleCalendarClient//EN METHOD:DECLINECOUNTER VERSION:2.0 BEGIN:VEVENT ORGANIZER:mailto:firstname.lastname@example.org ATTENDEE;RSVP=TRUE;CUTYPE=INDIVIDUAL:mailto:email@example.com COMMENT:Sorry, I cannot change this meeting time UID:firstname.lastname@example.org SEQUENCE:0 DTSTAMP:19970614T190000Z END:VEVENT END:VCALENDAR
See RFC 5546  for more information.
 SOGo - http://www.sogo.nu
 Zimbra - http://www.zimbra.com/
 RFC 5546 - http://tools.ietf.org/html/rfc5546#page-33