Monotone-Parent: b9fe5f69982d5b9b75bf023532dd4a76d1435875

Monotone-Revision: 7158469e2118ab9dc200e78b0beaa52690e57679

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2007-06-01T21:04:56
Monotone-Branch: ca.inverse.sogo
This commit is contained in:
Wolfgang Sourdeau
2007-06-01 21:04:56 +00:00
parent cfac03935f
commit ca41e65c61
3 changed files with 20 additions and 11 deletions

View File

@@ -1,5 +1,10 @@
2007-06-01 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* SoObjects/SOGo/SOGoObject.m ([SOGoObject
-_urlPreferringParticle:expectedoverThisOne:possible]): unescape
the result of [self baseURLInContext:] to avoid a double escaping
in the resulting string.
* SoObjects/SOGo/SOGoFolder.m ([SOGoFolder -aclsForUser:uid]): if
the user has the "ObjectReader" role on the parent container, then
he is granted the "ObjectViewer" role on this object. Same for

View File

@@ -57,7 +57,7 @@
{
WOContext *context;
NSString *nameInContainer;
id container;
id container;
NSString *owner;
}

View File

@@ -40,6 +40,7 @@
#import <NGObjWeb/WORequest+So.h>
#import <NGObjWeb/NSException+HTTP.h>
#import <NGExtensions/NSObject+Logs.h>
#import <NGExtensions/NSString+misc.h>
#import <NGCards/NSDictionary+NGCards.h>
#import <UI/SOGoUI/SOGoACLAdvisory.h>
@@ -76,7 +77,7 @@
{
return [NSDictionary dictionaryWithObjectsAndKeys:
@"read", SoPerm_AccessContentsInformation,
@"read", SoPerm_View,
@"read", SoPerm_AccessContentsInformation,
@"bind", SoPerm_AddDocumentsImagesAndFiles,
@"unbind", SoPerm_DeleteObjects,
@"write-acl", SoPerm_ChangePermissions,
@@ -435,10 +436,13 @@ static BOOL kontactGroupDAV = YES;
/* accessors */
- (NSString *)nameInContainer {
- (NSString *) nameInContainer
{
return nameInContainer;
}
- (id)container {
- (id) container
{
return container;
}
@@ -812,12 +816,12 @@ static BOOL kontactGroupDAV = YES;
- (NSURL *) _urlPreferringParticle: (NSString *) expected
overThisOne: (NSString *) possible
{
NSURL *serverURL, *davURL;
NSURL *serverURL, *url;
NSMutableArray *path;
NSString *baseURL, *urlMethod;
serverURL = [context serverURL];
baseURL = [self baseURLInContext: context];
baseURL = [[self baseURLInContext: context] stringByUnescapingURL];
path = [NSMutableArray arrayWithArray: [baseURL componentsSeparatedByString:
@"/"]];
urlMethod = [path objectAtIndex: 2];
@@ -829,12 +833,12 @@ static BOOL kontactGroupDAV = YES;
[path insertObject: expected atIndex: 2];
}
davURL = [[NSURL alloc] initWithScheme: [serverURL scheme]
host: [serverURL host]
path: [path componentsJoinedByString: @"/"]];
[davURL autorelease];
url = [[NSURL alloc] initWithScheme: [serverURL scheme]
host: [serverURL host]
path: [path componentsJoinedByString: @"/"]];
[url autorelease];
return davURL;
return url;
}
- (NSURL *) davURL