View Issue Details

IDProjectCategoryView StatusLast Update
0001888SOGoWeb Calendarpublic2012-07-25 15:40
Reporternetphantm Assigned To 
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Product Version1.3.16 
Target Version1.3.17Fixed in Version1.3.17 
Summary0001888: iCal allows all attendees to change recurring events after someone accepts one occurence of it
Description

If a user accepts one occurence of a recurring event in the webGUI, iCal allows all attendees to edit the (entire or just an occurence of the) event in iCal but not to change their status for the event (accept/decline/decide later).
I think that's because the ORGANIZER field is not set for that specific VEVENT.
If the organizer changes (splits) the event by changing soemthing (e.g. "Description") in each occurence, the ORGANIZER is set for all VEVENTs, thus the event appears like it should in iCal, even after another attendee accepts only one occurence.

Additional Information

create event with user foo as an attendee:

BEGIN:VCALENDAR
PRODID:-//Apple Inc.//iCal 4.0.4//EN
VERSION:2.0
CALSCALE:GREGORIAN
BEGIN:VTIMEZONE
TZID:Europe/Berlin
BEGIN:DAYLIGHT
TZOFFSETFROM:+0100
TZNAME:GMT+02:00
TZOFFSETTO:+0200
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
DTSTART:19810329T020000
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:+0200
TZNAME:GMT+01:00
TZOFFSETTO:+0100
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
DTSTART:19961027T030000
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
UID:7AFA14AB-0C34-4DC3-819C-D350B012F739
DTSTAMP:20120717T145649Z
RRULE:FREQ=DAILY;INTERVAL=1;COUNT=4
TRANSP:OPAQUE
CREATED:20120717T145630Z
SUMMARY:Neues Ereignis
ORGANIZER;CN=Bruno Lingner:mailto:bli@kochan.de
SEQUENCE:6
DTEND;TZID=Europe/Berlin:20120716T083000
DTSTART;TZID=Europe/Berlin:20120716T081500
ATTENDEE;PARTSTAT=NEEDS-ACTION;ROLE=REQ-PARTICIPANT;EMAIL=foo.bar@kochan.de
;CN=Foo Bär;CUTYPE=INDIVIDUAL;RSVP=TRUE:mailto:foo.bar@kochan.de
END:VEVENT
END:VCALENDAR

after foo accepts in the webGUI the first occurence of the event:

BEGIN:VCALENDAR
PRODID:-//Apple Inc.//iCal 4.0.4//EN
VERSION:2.0
CALSCALE:GREGORIAN
BEGIN:VTIMEZONE
TZID:Europe/Berlin
BEGIN:DAYLIGHT
TZOFFSETFROM:+0100
TZNAME:GMT+02:00
TZOFFSETTO:+0200
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
DTSTART:19810329T020000
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:+0200
TZNAME:GMT+01:00
TZOFFSETTO:+0100
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
DTSTART:19961027T030000
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
UID:7AFA14AB-0C34-4DC3-819C-D350B012F739
DTSTAMP:20120717T145649Z
RRULE:FREQ=DAILY;INTERVAL=1;COUNT=4
TRANSP:OPAQUE
CREATED:20120717T145630Z
SUMMARY:Neues Ereignis
ORGANIZER;CN=Bruno Lingner:mailto:bli@kochan.de
SEQUENCE:6
DTEND;TZID=Europe/Berlin:20120716T083000
DTSTART;TZID=Europe/Berlin:20120716T081500
ATTENDEE;PARTSTAT=NEEDS-ACTION;ROLE=REQ-PARTICIPANT;EMAIL=foo.bar@kochan.de
;CN=Foo Bär;CUTYPE=INDIVIDUAL;RSVP=TRUE:mailto:foo.bar@kochan.de
END:VEVENT
BEGIN:VEVENT
UID:7AFA14AB-0C34-4DC3-819C-D350B012F739
DTSTAMP:20120717T145649Z
TRANSP:OPAQUE
CREATED:20120717T145630Z
SUMMARY:Neues Ereignis
SEQUENCE:6
DTEND;TZID=Europe/Berlin:20120716T083000
DTSTART;TZID=Europe/Berlin:20120716T081500
ATTENDEE;PARTSTAT=ACCEPTED;ROLE=REQ-PARTICIPANT;EMAIL=foo.bar@kochan.de;RSV
P=TRUE;CUTYPE=INDIVIDUAL;CN=Foo Bär:mailto:foo.bar@kochan.de
RECURRENCE-ID:20120716T061500Z
END:VEVENT
END:VCALENDAR

TagsNo tags attached.

Activities

netphantm

netphantm

2012-07-18 09:37

reporter   ~0004170

Last edited: 2012-07-18 09:37

don't know if this is the same bug or a lightning bug, but in TB 10/13 + lightning 1.2.3/1.5.2 if an attendee tries to accept only 1 occurence of the following event, he gets the "edit this event" windows instead of the one to change his status (accept/decline/..)

BEGIN:VCALENDAR
PRODID:-//Mozilla.org/NONSGML Mozilla Calendar V1.1//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Europe/Berlin
X-LIC-LOCATION:Europe/Berlin
BEGIN:DAYLIGHT
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
TZNAME:CEST
DTSTART:19700329T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:+0200
TZOFFSETTO:+0100
TZNAME:CET
DTSTART:19701025T030000
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
CREATED:20120718T093017Z
LAST-MODIFIED:20120718T093044Z
DTSTAMP:20120718T093044Z
UID:b0b477e6-fb3a-45e1-872f-ec1032f3dd9f
SUMMARY:New Event
ORGANIZER;ROLE=CHAIR;PARTSTAT=ACCEPTED;RSVP=TRUE:mailto:bruno.lingner@kocha
n.de
ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;CN=Foo Bär;RSVP=TRUE:ma
ilto:foo.bar@kochan.de
RRULE:FREQ=DAILY;COUNT=4
DTSTART;TZID=Europe/Berlin:20120716T100000
DTEND;TZID=Europe/Berlin:20120716T101500
TRANSP:OPAQUE
SEQUENCE:2
X-MOZ-GENERATION:1
END:VEVENT
END:VCALENDAR

netphantm

netphantm

2012-07-24 15:06

reporter   ~0004217

this fix works for us:

--- SOGoCalendarComponent.m.patch 2012-07-03 16:47:55.000000000 +0200
+++ SOGoCalendarComponent.m 2012-07-24 17:00:12.000000000 +0200
@@ -323,6 +323,7 @@
iCalCalendar calendar;
NSCalendarDate
recDate;
NSTimeZone *timeZone;

  • iCalPerson *organizer;

    recDate = [NSCalendarDate dateWithTimeIntervalSince1970: [recID intValue]];
    masterOccurence = [self component: NO secure: NO];
    @@ -332,11 +333,12 @@
    if ([masterOccurence doesOccurOnDate: recDate])
    {
    newOccurence = [masterOccurence mutableCopy];

  • organizer = [masterOccurence organizer];
    [newOccurence autorelease];
    [newOccurence removeAllRecurrenceRules];
    [newOccurence removeAllExceptionRules];
    [newOccurence removeAllExceptionDates];
  • [newOccurence setOrganizer: nil];
  • [newOccurence setOrganizer: organizer];
    [newOccurence setRecurrenceId: recDate];

    calendar = [masterOccurence parent];

is this the right approach?

ludovic

ludovic

2012-07-24 15:17

administrator   ~0004218

Yes, otherwise it confuses TB 10.

Nonetheless if TB 10 (the attendee) creates a recurrence-id, he will have the problem you mentioned - that's a bug in TB 10 (Lightning v1.2) and we can't fix it.

ludovic

ludovic

2012-07-24 15:19

administrator   ~0004219

Fix pushed: http://mtn.inverse.ca/revision/diff/247bc51241f490e20ac9abc386e95d4198cefbaf/with/5c693d8846aabef79f3f26fae416c99fe51bed78

Issue History

Date Modified Username Field Change
2012-07-17 15:42 netphantm New Issue
2012-07-18 09:37 netphantm Note Added: 0004170
2012-07-18 09:37 netphantm Note Edited: 0004170
2012-07-24 15:06 netphantm Note Added: 0004217
2012-07-24 15:17 ludovic Note Added: 0004218
2012-07-24 15:19 ludovic Note Added: 0004219
2012-07-24 15:19 ludovic Status new => closed
2012-07-24 15:19 ludovic Resolution open => fixed
2012-07-24 15:19 ludovic Fixed in Version => 1.3.17
2012-07-25 15:40 francis Target Version => 1.3.17