Monotone-Parent: 0ad0dd5ada272b8cb3b3ec56737e667ebeccd725

Monotone-Revision: fccd21ec84b5d4e56232523b4a8b8733c3d3a051

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2012-03-19T20:57:35
Monotone-Branch: ca.inverse.sogo
This commit is contained in:
Wolfgang Sourdeau
2012-03-19 20:57:35 +00:00
parent c7be84d277
commit 1af2ab7453
2 changed files with 43 additions and 0 deletions
+3
View File
@@ -1,5 +1,8 @@
2012-03-19 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* SoObjects/Appointments/SOGoUserFolder+Appointments.m
(-davCalendarUserType, -davEmailAddressSet): new DAV accessors.
* OpenChange/MAPIStoreCalendarMessage.m (-save): check recipients
even if PidLidAppointmentStateFlags is nil or 0, since all that
matters is that the "recipients" dict be present in the properties
@@ -89,6 +89,46 @@
return addresses;
}
- (NSString *) davCalendarUserType
{
/* FIXME: not always true */
return @"INDIVIDUAL";
}
- (NSArray *) davEmailAddressSet
{
NSArray *tag;
NSMutableArray *addresses;
NSEnumerator *emails;
NSMutableDictionary *doneEmails;
NSString *currentEmail;
SOGoUser *ownerUser;
addresses = [NSMutableArray array];
doneEmails = [NSMutableDictionary dictionary];
ownerUser = [SOGoUser userWithLogin: owner];
emails = [[ownerUser allEmails] objectEnumerator];
while ((currentEmail = [emails nextObject]))
{
if (![doneEmails objectForKey: currentEmail])
{
tag = [NSArray arrayWithObjects: @"email-address", XMLNS_CalendarServerOrg, @"cso",
[NSString stringWithFormat: @"%@", currentEmail],
nil];
[addresses addObject: tag];
[doneEmails setObject: [NSNull null] forKey: currentEmail];
}
}
tag = [NSArray arrayWithObjects: @"href", XMLNS_WEBDAV, @"D",
[NSString stringWithFormat: @"/SOGo/dav/%@/", nameInContainer],
nil];
[addresses addObjectUniquely: tag];
return addresses;
}
/* CalDAV support */
- (NSArray *) davCalendarHomeSet
{