See ChangeLog

Monotone-Parent: a81f3635524596f99835829a1a4835f3a7f58c1b
Monotone-Revision: 1306bcb572d16a67199e32e625572c3430d39626

Monotone-Author: ludovic@Sophos.ca
Monotone-Date: 2008-12-01T19:20:25
Monotone-Branch: ca.inverse.sogo
This commit is contained in:
Ludovic Marcotte committed 2008-12-01 19:20:25 +00:00
1 parent 5732d7883e
commit e95d7fa39e
4 files changed
+29 -7

No files matched your search

@@ -368,6 +368,10 @@
[[newEvent parent] setMethod: @""];
ownerUser = [SOGoUser userWithLogin: owner roles: nil];
// We first save the event. It is important to this initially
// as the event's UID might get modified in SOGoCalendarComponent: -saveComponent:
[super saveComponent: newEvent];
if ([newEvent userIsOrganizer: ownerUser])
{
@@ -395,8 +399,6 @@
[self _handleUpdatedEvent: newEvent fromOldEvent: oldEvent];
}
}
[super saveComponent: newEvent];
}
//
+16 -1
View File
@@ -409,11 +409,26 @@ _occurenceHasID (iCalRepeatableEntityObject *occurence, NSString *recID)
- (void) saveComponent: (iCalRepeatableEntityObject *) newObject
{
NSString *newiCalString;
NSString *newiCalString, *newUid;
if (!isNew
&& [newObject isRecurrent])
[self _updateRecurrenceIDs];
// As much as we can, we try to use c_name == c_uid in order
// to avoid tricky scenarios with some CalDAV clients. For example,
// if Alice invites Bob (both use SOGo) and Bob accepts the invitation
// using Lightning before having refreshed his calendar, he'll end up
// with a duplicate of the event in his database tables.
if (isNew)
{
newUid = nameInContainer;
if ([newUid hasSuffix: @".ics"])
newUid = [newUid substringToIndex: [newUid length]-4];
[newObject setUid: newUid];
}
newiCalString = [[newObject parent] versitString];
[self saveContentString: newiCalString];