diff --git a/ChangeLog b/ChangeLog index dc82f0a0f..16d62b47a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2010-11-12 Francis Lachapelle + + * SoObjects/SOGo/SOGoGCSFolder.m + (-folderPropertyValueInCategory:forUser:): new method that allows + to specify the user from which to fetch the settings. + + * SoObjects/Appointments/SOGoAppointmentFolder.m + (-includeInFreeBusy): the verification is now performed on the + calendar owner's settings instead of the activer user's settings. + 2010-11-11 Francis Lachapelle * UI/WebServerResources/MailerUI.js (deleteSelectedMessages): diff --git a/NEWS b/NEWS index a398af47e..dc819cb3f 100644 --- a/NEWS +++ b/NEWS @@ -9,6 +9,9 @@ originating IP - added the ability to add categories to contacts as well as to configure the list of contact categories in the preferences +- improved performance of live-loading of messages in the webmail interface +- fixed a bug that would not identify which calendars must be excluded from the + freebusy information 1.3-20101019 (1.3.3) -------------------- diff --git a/SoObjects/Appointments/SOGoAppointmentFolder.m b/SoObjects/Appointments/SOGoAppointmentFolder.m index aa4d7fb19..84d3fdc08 100644 --- a/SoObjects/Appointments/SOGoAppointmentFolder.m +++ b/SoObjects/Appointments/SOGoAppointmentFolder.m @@ -410,8 +410,10 @@ static NSNumber *sharedYes = nil; { NSNumber *excludeFromFreeBusy; + // Check if the owner (not the active user) has excluded the calendar from her/his free busy data. excludeFromFreeBusy - = [self folderPropertyValueInCategory: @"FreeBusyExclusions"]; + = [self folderPropertyValueInCategory: @"FreeBusyExclusions" + forUser: [SOGoUser userWithLogin: [self ownerInContext: context]]]; return ![excludeFromFreeBusy boolValue]; } diff --git a/SoObjects/SOGo/SOGoGCSFolder.m b/SoObjects/SOGo/SOGoGCSFolder.m index da976376d..2079525ea 100644 --- a/SoObjects/SOGo/SOGoGCSFolder.m +++ b/SoObjects/SOGo/SOGoGCSFolder.m @@ -255,12 +255,19 @@ static NSArray *childRecordFields = nil; } - (id) folderPropertyValueInCategory: (NSString *) theKey +{ + return [self folderPropertyValueInCategory: theKey + forUser: [context activeUser]]; +} + +- (id) folderPropertyValueInCategory: (NSString *) theKey + forUser: (SOGoUser *) theUser { SOGoUserSettings *settings; NSDictionary *folderSettings; id value; - settings = [[context activeUser] userSettings]; + settings = [theUser userSettings]; folderSettings = [settings objectForKey: [container nameInContainer]]; value = [[folderSettings objectForKey: theKey] objectForKey: [self folderReference]];