mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-07-06 08:55:08 +00:00
See ChangeLog
Monotone-Parent: c6f02e683516d8272f34a92875af92b45b067767 Monotone-Revision: d7f6037ae6e1e2123a306d459ff6f96271bfc190 Monotone-Author: crobert@inverse.ca Monotone-Date: 2009-10-15T21:33:56 Monotone-Branch: ca.inverse.sogo
This commit is contained in:
@@ -221,13 +221,13 @@ static int davCalendarStartTimeLimit, davTimeLimitSeconds,
|
||||
asChildOf: davElement (@"write", XMLNS_WEBDAV)];
|
||||
[aclManager
|
||||
registerDAVPermission: davElement (@"write-properties", XMLNS_WEBDAV)
|
||||
abstract: YES
|
||||
abstract: NO
|
||||
withEquivalent: SoPerm_ChangePermissions /* hackish */
|
||||
asChildOf: davElement (@"write", XMLNS_WEBDAV)];
|
||||
[aclManager
|
||||
registerDAVPermission: davElement (@"write-content", XMLNS_WEBDAV)
|
||||
abstract: YES
|
||||
withEquivalent: nil
|
||||
abstract: NO
|
||||
withEquivalent: SoPerm_AddDocumentsImagesAndFiles
|
||||
asChildOf: davElement (@"write", XMLNS_WEBDAV)];
|
||||
[aclManager registerDAVPermission: davElement (@"admin", nsI)
|
||||
abstract: YES
|
||||
|
||||
@@ -39,6 +39,10 @@
|
||||
#import <SOGo/NSObject+DAV.h>
|
||||
#import <SOGo/SOGoWebDAVValue.h>
|
||||
#import <SOGo/SOGoUser.h>
|
||||
#import <SOGo/SOGoParentFolder.h>
|
||||
#import <SOGo/SOGoPermissions.h>
|
||||
#import <SOGo/SOGoWebDAVAclManager.h>
|
||||
|
||||
#import "SOGoAppointmentFolder.h"
|
||||
#import "SOGoWebAppointmentFolder.h"
|
||||
|
||||
@@ -341,4 +345,30 @@
|
||||
return error;
|
||||
}
|
||||
|
||||
+ (SOGoWebDAVAclManager *) webdavAclManager
|
||||
{
|
||||
static SOGoWebDAVAclManager *aclManager = nil;
|
||||
|
||||
if (!aclManager)
|
||||
{
|
||||
aclManager = [[super webdavAclManager] copy];
|
||||
[aclManager
|
||||
registerDAVPermission: davElement (@"write", XMLNS_WEBDAV)
|
||||
abstract: NO
|
||||
withEquivalent: SoPerm_AddDocumentsImagesAndFiles
|
||||
asChildOf: davElement (@"all", XMLNS_WEBDAV)];
|
||||
[aclManager
|
||||
registerDAVPermission: davElement (@"write-properties", XMLNS_WEBDAV)
|
||||
abstract: YES
|
||||
withEquivalent: SoPerm_AddDocumentsImagesAndFiles
|
||||
asChildOf: davElement (@"write", XMLNS_WEBDAV)];
|
||||
[aclManager
|
||||
registerDAVPermission: davElement (@"write-content", XMLNS_WEBDAV)
|
||||
abstract: YES
|
||||
withEquivalent: SoPerm_AddDocumentsImagesAndFiles
|
||||
asChildOf: davElement (@"write", XMLNS_WEBDAV)];
|
||||
}
|
||||
return aclManager;
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
@@ -82,6 +82,8 @@ SEL SOGoSelectorForPropertySetter (NSString *property);
|
||||
|
||||
- (id) initWithName: (NSString *) _name inContainer:(id)_container;
|
||||
|
||||
+ (SOGoWebDAVAclManager *) webdavAclManager;
|
||||
|
||||
/* accessors */
|
||||
|
||||
- (NSString *) nameInContainer;
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
@class SOGoUser;
|
||||
@class SOGoWebDAVValue;
|
||||
|
||||
@interface SOGoWebDAVAclManager : NSObject
|
||||
@interface SOGoWebDAVAclManager : NSObject <NSCopying>
|
||||
{
|
||||
NSMutableDictionary *aclTree;
|
||||
}
|
||||
|
||||
@@ -262,4 +262,14 @@ static NSNumber *yesObject = nil;
|
||||
[aclTree objectForKey: @"{DAV:}all"]];
|
||||
}
|
||||
|
||||
- (id) copyWithZone: (NSZone *) aZone
|
||||
{
|
||||
SOGoWebDAVAclManager *x;
|
||||
|
||||
x = [[SOGoWebDAVAclManager allocWithZone: aZone] init];
|
||||
x->aclTree = [aclTree mutableCopyWithZone: aZone];
|
||||
|
||||
return x;
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
Reference in New Issue
Block a user