See ChangeLog

Monotone-Parent: 4cbfa058c2199806b08f5a11ac5cebf02316041f
Monotone-Revision: 86af39bf6245663b3ce86c22d61625d3204e5e62

Monotone-Author: ludovic@Sophos.ca
Monotone-Date: 2009-05-01T11:35:02
Monotone-Branch: ca.inverse.sogo
This commit is contained in:
Ludovic Marcotte
2009-05-01 11:35:02 +00:00
parent e53507146c
commit 9cf951d32b
2 changed files with 20 additions and 1 deletions
+7
View File
@@ -1,3 +1,10 @@
2009-05-01 Ludovic Marcotte <lmarcotte@inverse.ca>
* SoObjects/Appointments/SOGoAppointmentObject.m
([SOGoAppointmentObject -PUTAction:]): Slightly optimized
and we now consider the "X-SOGo: NoGroupsDecomposition"
special header.
2009-04-30 Ludovic Marcotte <lmarcotte@inverse.ca>
* Added SoObjects/SOGo/SOGoGroup.{h.m} and
+13 -1
View File
@@ -1325,10 +1325,15 @@
SOGoGroup *group;
iCalEvent *event;
WORequest *rq;
BOOL b;
int i;
rq = [_ctx request];
if ([[rq headersForKey: @"X-SOGo"] containsObject: @"NoGroupsDecomposition"])
return [super PUTAction: _ctx];
//NSLog(@"Content from request: %@", [rq contentAsString]);
// The algorithm is pretty straightforward:
@@ -1340,6 +1345,7 @@
//
calendar = [iCalCalendar parseSingleFromSource: [rq contentAsString]];
allEvents = [calendar events];
b = NO;
for (i = 0; i < [allEvents count]; i++)
{
@@ -1359,6 +1365,7 @@
// We did decompose a group...
[array removeObject: currentAttendee];
b = YES;
members = [group members];
for (i = 0; i < [members count]; i++)
@@ -1387,7 +1394,12 @@
//NSLog(@"Content from calendar:secure: %@", [calendar versitString]);
[rq setContent: [[calendar versitString] dataUsingEncoding: [rq contentEncoding]]];
// If we decomposed at least one group, let's rewrite the content
// of the request. Otherwise, leave it as is in case this rewrite
// isn't totaly lossless.
if (b)
[rq setContent: [[calendar versitString] dataUsingEncoding: [rq contentEncoding]]];
return [super PUTAction: _ctx];
}