Monotone-Parent: e2612f65bcad1f3bf690e9591362c3fcf8825a80

Monotone-Revision: 55b46093b748e72cd037f89dc45b4785c5466dc6

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2007-03-09T23:10:43
Monotone-Branch: ca.inverse.sogo
maint-2.0.2
Wolfgang Sourdeau 2007-03-09 23:10:43 +00:00
parent 7a5da6bcdc
commit fd0d5ab723
3 changed files with 52 additions and 1 deletions

View File

@ -1,3 +1,11 @@
2007-02-09 Helge Hess <helge.hess@opengroupware.org>
* SoObjects/Appointments/SOGoAppointmentFolder.m: added CalDAV
resourcetype
* SoObjects/SOGo/SOGoUserFolder.m: added davCalendarHomeSet CalDAV
property to point at the user folder
2007-03-07 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* SoObjects/SOGo/SOGoAuthenticator.m ([SOGoAuthenticator

View File

@ -20,12 +20,13 @@
*/
#import <GDLContentStore/GCSFolder.h>
#import <SaxObjC/SaxObjC.h>
#import <NGCards/NGCards.h>
#import <NGObjWeb/SoObject+SoDAV.h>
#import <NGObjWeb/WOContext.h>
#import <NGObjWeb/WOMessage.h>
#import <NGExtensions/NGCalendarDateRange.h>
#import <SaxObjC/SaxObjC.h>
#import <SaxObjC/XMLNamespaces.h>
// #import <NGObjWeb/SoClassSecurityInfo.h>
#import <SOGo/SOGoCustomGroupFolder.h>
@ -107,6 +108,8 @@ static NSNumber *sharedYes = nil;
NSString *s;
s = [[self container] nameInContainer];
#warning HH DEBUG
[self logWithFormat:@"CAL UID: %@", s];
return [s isNotNull] ? [NSArray arrayWithObjects:&s count:1] : nil;
}
@ -406,6 +409,23 @@ static NSNumber *sharedYes = nil;
return @"vevent-collection";
}
- (NSArray *) davResourceType
{
static NSArray *colType = nil;
NSArray *gdCol, *cdCol;
if (!colType)
{
cdCol = [NSArray arrayWithObjects: @"calendar", XMLNS_CALDAV, nil];
gdCol = [NSArray arrayWithObjects: [self groupDavResourceType],
XMLNS_GROUPDAV, nil];
colType = [NSArray arrayWithObjects: @"collection", cdCol, gdCol, nil];
[colType retain];
}
return colType;
}
/* vevent UID handling */
- (NSString *) resourceNameForEventUID: (NSString *)_u

View File

@ -231,4 +231,27 @@
return YES;
}
/* CalDAV support */
- (NSArray *) davCalendarHomeSet
{
/*
<C:calendar-home-set xmlns:D="DAV:"
xmlns:C="urn:ietf:params:xml:ns:caldav">
<D:href>http://cal.example.com/home/bernard/calendars/</D:href>
</C:calendar-home-set>
Note: this is the *container* for calendar collections, not the
collections itself. So for use its the home folder, the
public folder and the groups folder.
*/
WOContext *context;
NSArray *tag;
context = [[WOApplication application] context];
tag = [NSArray arrayWithObjects: @"href", @"DAV:", @"D",
[self baseURLInContext: context], nil];
return [NSArray arrayWithObject: tag];
}
@end /* SOGoUserFolder */