Monotone-Parent: 773965cc12e1e34ce72a11b7b25f3ff6e0dc7887

Monotone-Revision: 18368f64b51826fda4f9240e4e2ee6e766ae16ed

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2008-03-25T20:34:56
Monotone-Branch: ca.inverse.sogo
This commit is contained in:
Wolfgang Sourdeau
2008-03-25 20:34:56 +00:00
parent faff3ed110
commit 823db80b8d
2 changed files with 26 additions and 4 deletions
+8
View File
@@ -1,3 +1,11 @@
2008-03-25 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* SoObjects/SOGo/SOGoGCSFolder.m ([SOGoGCSFolder
-davSetProperties:setPropsremovePropertiesNamed:removedPropsinContext:localContext]):
returns an exception if the property to modify is not
"davDisplayName" and if the current user has not the owner role
over the current collection.
2008-03-18 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* SoObjects/Appointments/SOGoAppointmentFolder.m
+18 -4
View File
@@ -528,12 +528,26 @@ static BOOL sendFolderAdvisories = NO;
inContext: (WOContext *) localContext
{
NSString *newDisplayName;
NSException *exception;
NSArray *currentRoles;
newDisplayName = [setProps objectForKey: @"davDisplayName"];
if ([newDisplayName length])
[self renameTo: newDisplayName];
currentRoles = [[localContext activeUser] rolesForObject: self
inContext: localContext];
if ([currentRoles containsObject: SoRole_Owner])
{
newDisplayName = [setProps objectForKey: @"davDisplayName"];
if ([newDisplayName length])
{
[self renameTo: newDisplayName];
exception = nil;
}
else
exception = [NSException exceptionWithHTTPStatus: 404];
}
else
exception = [NSException exceptionWithHTTPStatus: 403];
return nil;
return exception;
}
/* acls as a container */