diff --git a/ChangeLog b/ChangeLog index 3900cc6ec..f951f81b8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,21 @@ +2009-01-09 Wolfgang Sourdeau + + * SoObjects/SOGo/SOGoContentObject.m ([SOGoContentObject + -aclUsers]): fixed method to invoke [container + aclUsersForObjectAtPath:] with the resulting path as argument + instead of the path itself. + + * SoObjects/SOGo/SOGoGCSFolder.m ([SOGoGCSFolder + -sendFolderAdvisoryTemplate:template]): the condition check for + sending folder advisories has been moved here. + ([SOGoGCSFolder -sendFolderAdvisoryTemplate:template]): now a + public method. + 2008-01-07 Ludovic Marcotte * Added Documentation/SOGo Mobile Devices Configuration.odt * Fixed typos in the Intallation & Configuration guide + * Added Documentation/SOGo Mozilla Thunderbird Configuration.odt 2009-01-07 Francis Lachapelle diff --git a/Documentation/SOGo Mozilla Thunderbird Configuration.odt b/Documentation/SOGo Mozilla Thunderbird Configuration.odt new file mode 100644 index 000000000..76318388b Binary files /dev/null and b/Documentation/SOGo Mozilla Thunderbird Configuration.odt differ diff --git a/Main/SOGo.h b/Main/SOGo.h new file mode 100644 index 000000000..96f4397a9 --- /dev/null +++ b/Main/SOGo.h @@ -0,0 +1,44 @@ +/* + Copyright (C) 2004-2005 SKYRIX Software AG + + This file is part of OpenGroupware.org. + + OGo is free software; you can redistribute it and/or modify it under + the terms of the GNU Lesser General Public License as published by the + Free Software Foundation; either version 2, or (at your option) any + later version. + + OGo is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public + License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with OGo; see the file COPYING. If not, write to the + Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA + 02111-1307, USA. +*/ + +#ifndef MAIN_SOGO_H +#define MAIN_SOGO_H + +#import + +@class NSArray; +@class NSDictionary; +@class NSMutableDictionary; + +@class SOGoCache; + +@interface SOGo : SoApplication +{ + NSMutableDictionary *localeLUT; + SOGoCache *cache; +} + +- (NSDictionary *) currentLocaleConsideringLanguages:(NSArray *)_langs; +- (NSDictionary *) localeForLanguageNamed:(NSString *)_name; + +@end + +#endif /* MAIN_SOGO_H */ diff --git a/Main/SOGo.m b/Main/SOGo.m index 79a6326a0..4b83530fb 100644 --- a/Main/SOGo.m +++ b/Main/SOGo.m @@ -31,7 +31,6 @@ #import #import -#import #import #import #import @@ -57,16 +56,7 @@ #import "SOGoProductLoader.h" #import "NSException+Stacktrace.h" -@interface SOGo : SoApplication -{ - NSMutableDictionary *localeLUT; - SOGoCache *cache; -} - -- (NSDictionary *) currentLocaleConsideringLanguages:(NSArray *)_langs; -- (NSDictionary *) localeForLanguageNamed:(NSString *)_name; - -@end +#import "SOGo.h" @implementation SOGo diff --git a/SoObjects/SOGo/SOGoContentObject.m b/SoObjects/SOGo/SOGoContentObject.m index 4828dd55a..d7da26f10 100644 --- a/SoObjects/SOGo/SOGoContentObject.m +++ b/SoObjects/SOGo/SOGoContentObject.m @@ -432,7 +432,7 @@ pathArray = [NSMutableArray arrayWithArray: [container pathArrayToFolder]]; [pathArray addObject: nameInContainer]; - return pathArray; + return [container aclUsersForObjectAtPath: pathArray]; } - (NSArray *) aclsForUser: (NSString *) uid diff --git a/SoObjects/SOGo/SOGoGCSFolder.h b/SoObjects/SOGo/SOGoGCSFolder.h index fcf11cd8c..e3fe35b8c 100644 --- a/SoObjects/SOGo/SOGoGCSFolder.h +++ b/SoObjects/SOGo/SOGoGCSFolder.h @@ -98,6 +98,9 @@ - (void) removeAclsForUsers: (NSArray *) users forObjectAtPath: (NSArray *) objectPathArray; +/* advisories */ +- (void) sendFolderAdvisoryTemplate: (NSString *) template; + @end #endif /* __SOGo_SOGoGCSFolder_H__ */ diff --git a/SoObjects/SOGo/SOGoGCSFolder.m b/SoObjects/SOGo/SOGoGCSFolder.m index fc25a53fa..88840eb2d 100644 --- a/SoObjects/SOGo/SOGoGCSFolder.m +++ b/SoObjects/SOGo/SOGoGCSFolder.m @@ -378,15 +378,18 @@ static NSArray *childRecordFields = nil; SOGoUser *user; SOGoFolderAdvisory *page; - user = [context activeUser]; - pageName = [NSString stringWithFormat: @"SOGoFolder%@%@Advisory", - [user language], template]; + if (sendFolderAdvisories) + { + user = [context activeUser]; + pageName = [NSString stringWithFormat: @"SOGoFolder%@%@Advisory", + [user language], template]; - page = [[WOApplication application] pageWithName: pageName - inContext: context]; - [page setFolderObject: self]; - [page setRecipientUID: [user login]]; - [page send]; + page = [[WOApplication application] pageWithName: pageName + inContext: context]; + [page setFolderObject: self]; + [page setRecipientUID: [user login]]; + [page send]; + } } - (BOOL) create @@ -398,8 +401,7 @@ static NSArray *childRecordFields = nil; atPath: ocsPath]; if (!result - && [[context request] handledByDefaultHandler] - && sendFolderAdvisories) + && [[context request] handledByDefaultHandler]) [self sendFolderAdvisoryTemplate: @"Addition"]; return (result == nil); @@ -418,8 +420,7 @@ static NSArray *childRecordFields = nil; else error = [[self folderManager] deleteFolderAtPath: ocsPath]; - if (!error && sendFolderAdvisories - && [[context request] handledByDefaultHandler]) + if (!error && [[context request] handledByDefaultHandler]) [self sendFolderAdvisoryTemplate: @"Removal"]; return error;