Monotone-Parent: f98be962d0c592280a8de1c653bbe3828f18ecee

Monotone-Revision: b577b5789ba850c92417e70690576edfd3a2793b

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2009-06-09T21:10:25
Monotone-Branch: ca.inverse.sogo
maint-2.0.2
Wolfgang Sourdeau 2009-06-09 21:10:25 +00:00
parent 03ba864004
commit be78b5890e
4 changed files with 20 additions and 5 deletions

View File

@ -1,9 +1,9 @@
2009-06-09 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* SoObjects/Appointments/SOGoFreeBusyObject.m
(-iCalStringForFreeBusyInfos:withMethod:andUID:from:to:): accept
an additional "UID" parameter that will be set as UID attribute on
the reported freebusy object.
(-iCalStringForFreeBusyInfos:withMethod:andUID:andOrganizer:from:to:):
accept additional "UID" and "organizer" parameters that will be set as
attributes on the reported freebusy object.
* SoObjects/Appointments/SOGoAppointmentFolder.m
(-freebusyResponseForRecipient:withUser:andCalendarData:): expose

View File

@ -2044,6 +2044,7 @@ firstInstanceCalendarDateRange: (NGCalendarDateRange *) fir
- (NSDictionary *) caldavFreeBusyRequestOnRecipient: (NSString *) recipient
withUID: (NSString *) uid
andOrganizer: (iCalPerson *) organizer
from: (NSCalendarDate *) start
to: (NSCalendarDate *) to
{
@ -2068,6 +2069,7 @@ firstInstanceCalendarDateRange: (NGCalendarDateRange *) fir
inContext: context];
calendarData = [freebusy contentAsStringWithMethod: @"REPLY"
andUID: uid
andOrganizer: organizer
from: start to: to];
}
}
@ -2084,16 +2086,19 @@ firstInstanceCalendarDateRange: (NGCalendarDateRange *) fir
NSDictionary *responseElement;
NSMutableArray *elements;
NSString *recipient, *uid;
iCalPerson *organizer;
NSEnumerator *allRecipients;
NSCalendarDate *startDate, *endDate;
elements = [NSMutableArray new];
[freebusy fillStartDate: &startDate andEndDate: &endDate];
uid = [freebusy uid];
organizer = [freebusy organizer];
allRecipients = [recipients objectEnumerator];
while ((recipient = [allRecipients nextObject]))
[elements addObject: [self caldavFreeBusyRequestOnRecipient: recipient
withUID: uid
andOrganizer: organizer
from: startDate
to: endDate]];
responseElement = davElementWithContent (@"schedule-response",

View File

@ -31,7 +31,10 @@
Represents Free/Busy information for a single user as specified in RFC2445.
*/
@class NSArray, NSCalendarDate;
@class NSArray;
@class NSCalendarDate;
@class iCalPerson;
@interface SOGoFreeBusyObject : SOGoObject
{
@ -45,6 +48,7 @@
to: (NSCalendarDate *) _endDate;
- (NSString *) contentAsStringWithMethod: (NSString *) method
andUID: (NSString *) uid
andOrganizer: (iCalPerson *) organizer
from: (NSCalendarDate *) _startDate
to: (NSCalendarDate *) _endDate;

View File

@ -108,6 +108,7 @@ static unsigned int freebusyRangeEnd = 0;
- (NSString *) iCalStringForFreeBusyInfos: (NSArray *) _infos
withMethod: (NSString *) method
andUID: (NSString *) uid
andOrganizer: (iCalPerson *) organizer
from: (NSCalendarDate *) _startDate
to: (NSCalendarDate *) _endDate
{
@ -133,6 +134,8 @@ static unsigned int freebusyRangeEnd = 0;
freebusy = [iCalFreeBusy groupWithTag: @"vfreebusy"];
if (uid)
[freebusy setUid: uid];
if (organizer)
[freebusy setOrganizer: organizer];
[freebusy addToAttendees: [self iCalPersonWithUID: login]];
[freebusy setTimeStampAsDate: [NSCalendarDate calendarDate]];
[freebusy setStartDate: _startDate];
@ -214,6 +217,7 @@ static unsigned int freebusyRangeEnd = 0;
- (NSString *) contentAsStringWithMethod: (NSString *) method
andUID: (NSString *) UID
andOrganizer: (iCalPerson *) organizer
from: (NSCalendarDate *) _startDate
to: (NSCalendarDate *) _endDate
{
@ -222,7 +226,8 @@ static unsigned int freebusyRangeEnd = 0;
infos = [self fetchFreeBusyInfosFrom: _startDate to: _endDate];
return [self iCalStringForFreeBusyInfos: infos
withMethod: method andUID: UID
withMethod: method
andUID: UID andOrganizer: organizer
from: _startDate to: _endDate];
}
@ -230,6 +235,7 @@ static unsigned int freebusyRangeEnd = 0;
to: (NSCalendarDate *) _endDate
{
return [self contentAsStringWithMethod: nil andUID: nil
andOrganizer: nil
from: _startDate
to: _endDate];
}