Monotone-Parent: 052f9de55b5ccfe5944c8d715ee190708be0140e
Monotone-Revision: 8268efeb15753e2949b09378244938f0b6bb08a8 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2006-09-29T18:26:29 Monotone-Branch: ca.inverse.sogomaint-2.0.2
parent
49f320e49f
commit
7d81972309
|
@ -256,21 +256,6 @@ static NSString *mailTemplateDefaultLanguage = nil;
|
|||
return allErrors;
|
||||
}
|
||||
|
||||
- (iCalCalendar *) calendarFromContent: (NSString *) cnt
|
||||
{
|
||||
iCalCalendar *calendar;
|
||||
NSArray *calendars;
|
||||
|
||||
calendars = [CardGroup groupsOfClass: [iCalCalendar class]
|
||||
fromSource: cnt];
|
||||
if (calendars && [calendars count])
|
||||
calendar = [calendars objectAtIndex: 0];
|
||||
else
|
||||
calendar = nil;
|
||||
|
||||
return calendar;
|
||||
}
|
||||
|
||||
- (iCalEvent *) firstEventFromCalendar: (iCalCalendar *) calendar
|
||||
{
|
||||
iCalEvent *event;
|
||||
|
@ -338,7 +323,7 @@ static NSString *mailTemplateDefaultLanguage = nil;
|
|||
}
|
||||
else
|
||||
{
|
||||
calendar = [self calendarFromContent: oldContent];
|
||||
calendar = [iCalCalendar parseSingleFromSource: oldContent];
|
||||
oldApt = [self firstEventFromCalendar: calendar];
|
||||
}
|
||||
|
||||
|
@ -351,7 +336,7 @@ static NSString *mailTemplateDefaultLanguage = nil;
|
|||
|
||||
/* handle new content */
|
||||
|
||||
calendar = [self calendarFromContent: _iCal];
|
||||
calendar = [iCalCalendar parseSingleFromSource: _iCal];
|
||||
newApt = [self firstEventFromCalendar: calendar];
|
||||
if (newApt == nil) {
|
||||
return [NSException exceptionWithHTTPStatus:400 /* Bad Request */
|
||||
|
@ -488,7 +473,7 @@ static NSString *mailTemplateDefaultLanguage = nil;
|
|||
|
||||
/* load existing content */
|
||||
|
||||
calendar = [self calendarFromContent: [self iCalString]];
|
||||
calendar = [iCalCalendar parseSingleFromSource: [self iCalString]];
|
||||
if (calendar)
|
||||
apt = [self firstEventFromCalendar: calendar];
|
||||
else
|
||||
|
@ -541,7 +526,7 @@ static NSString *mailTemplateDefaultLanguage = nil;
|
|||
NSString *myEMail;
|
||||
|
||||
// TODO: do we need to use SOGoAppointment? (prefer iCalEvent?)
|
||||
calendar = [self calendarFromContent: [self iCalString]];
|
||||
calendar = [iCalCalendar parseSingleFromSource: [self iCalString]];
|
||||
if (calendar)
|
||||
apt = [self firstEventFromCalendar: calendar];
|
||||
else
|
||||
|
|
|
@ -24,7 +24,6 @@
|
|||
#include "common.h"
|
||||
#include <SOGo/AgenorUserManager.h>
|
||||
#include <NGCards/NGCards.h>
|
||||
#include <NGCards/iCalRenderer.h>
|
||||
|
||||
@interface NSDate(UsedPrivates)
|
||||
- (NSString *)icalString; // declared in NGCards
|
||||
|
@ -123,8 +122,9 @@
|
|||
{
|
||||
AgenorUserManager *um;
|
||||
NSMutableString *ms;
|
||||
NSString *uid, *x;
|
||||
NSString *uid;
|
||||
unsigned i, count;
|
||||
iCalPerson *person;
|
||||
|
||||
um = [AgenorUserManager sharedUserManager];
|
||||
uid = [[self container] login];
|
||||
|
@ -145,17 +145,9 @@
|
|||
/* ORGANIZER - strictly required but missing for now */
|
||||
|
||||
/* ATTENDEE */
|
||||
[ms appendString:@"ATTENDEE"];
|
||||
if ((x = [um getCNForUID:uid])) {
|
||||
[ms appendString:@";CN=\""];
|
||||
[ms appendString:[x iCalDQUOTESafeString]];
|
||||
[ms appendString:@"\""];
|
||||
}
|
||||
if ((x = [um getEmailForUID:uid])) {
|
||||
[ms appendString:@":"]; /* sic! */
|
||||
[ms appendString:[x iCalSafeString]];
|
||||
}
|
||||
[ms appendString:@"\r\n"];
|
||||
person = [um iCalPersonWithUid: uid];
|
||||
[person setTag: @"ATTENDEE"];
|
||||
[ms appendString: [person versitString]];
|
||||
|
||||
/* DTSTART */
|
||||
[ms appendString:@"DTSTART:"];
|
||||
|
|
|
@ -49,7 +49,6 @@
|
|||
|
||||
- (NGVCard *) vCard
|
||||
{
|
||||
NSArray *cards;
|
||||
NSString *contentStr;
|
||||
|
||||
if (!card)
|
||||
|
@ -57,17 +56,14 @@
|
|||
contentStr = [self contentAsString];
|
||||
if ([contentStr hasPrefix:@"BEGIN:VCARD"])
|
||||
{
|
||||
cards = [NGVCard parseVCardsFromSource: contentStr];
|
||||
if ([cards count] > 0)
|
||||
{
|
||||
card = [cards objectAtIndex: 0];
|
||||
[card retain];
|
||||
}
|
||||
else
|
||||
card = [NGVCard new];
|
||||
card = [NGVCard parseSingleFromSource: contentStr];
|
||||
[card retain];
|
||||
}
|
||||
else
|
||||
card = [NGVCard new];
|
||||
{
|
||||
card = [NGVCard new];
|
||||
[card setTag: @"vcard"];
|
||||
}
|
||||
}
|
||||
|
||||
return card;
|
||||
|
|
|
@ -42,7 +42,7 @@ static NSString *SOGoUIDSeparator = @",";
|
|||
/* accessors */
|
||||
|
||||
- (NSArray *)unescapeURLComponents:(NSArray *)_parts {
|
||||
#warning TODO: implement URL UID unescaping if necessary
|
||||
// #warning TODO: implement URL UID unescaping if necessary
|
||||
// TODO: who calls this for what?
|
||||
// Note: remember URL encoding!
|
||||
return _parts;
|
||||
|
|
|
@ -91,12 +91,18 @@
|
|||
return [[self folderManager] folderAtPath:_path];
|
||||
}
|
||||
|
||||
- (GCSFolder *)ocsFolder {
|
||||
if (self->ocsFolder != nil)
|
||||
return [self->ocsFolder isNotNull] ? self->ocsFolder : nil;
|
||||
|
||||
self->ocsFolder = [[self ocsFolderForPath:[self ocsPath]] retain];
|
||||
return self->ocsFolder;
|
||||
- (GCSFolder *) ocsFolder {
|
||||
GCSFolder *folder;
|
||||
|
||||
if (!ocsFolder)
|
||||
ocsFolder = [[self ocsFolderForPath:[self ocsPath]] retain];
|
||||
|
||||
if ([ocsFolder isNotNull])
|
||||
folder = ocsFolder;
|
||||
else
|
||||
folder = nil;
|
||||
|
||||
return folder;
|
||||
}
|
||||
|
||||
- (NSArray *)fetchContentObjectNames {
|
||||
|
|
Loading…
Reference in New Issue