Monotone-Parent: 4ae01eea0221889e088ac21232d629d3b265be05

Monotone-Revision: 07066101c28f825ad99e746c40e1e3eb5c46ffd5

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2007-12-06T22:54:01
Monotone-Branch: ca.inverse.sogo
This commit is contained in:
Wolfgang Sourdeau
2007-12-06 22:54:01 +00:00
parent e1c159094d
commit 790e92d2ea
6 changed files with 90 additions and 26 deletions
@@ -27,6 +27,7 @@
#import <NGObjWeb/SoSecurityManager.h>
#import <NGObjWeb/WOApplication.h>
#import <NGObjWeb/WOContext+SoObjects.h>
#import <NGObjWeb/WORequest+So.h>
#import <NGExtensions/NSObject+Logs.h>
#import <NGExtensions/NGHashMap.h>
#import <NGCards/iCalCalendar.h>
@@ -142,6 +143,18 @@ static BOOL sendEMailNotifications = NO;
return iCalString;
}
- (NSString *) contentAsString
{
NSString *secureContent;
if ([[context request] isSoWebDAVRequest])
secureContent = [self secureContentAsString];
else
secureContent = [super contentAsString];
return secureContent;
}
- (iCalCalendar *) calendar: (BOOL) create secure: (BOOL) secure
{
NSString *componentTag;
@@ -559,6 +572,7 @@ static BOOL sendEMailNotifications = NO;
NSArray *superAcls;
iCalRepeatableEntityObject *component;
NSString *accessRole, *ownerRole;
SOGoUser *aclUser;
roles = [NSMutableArray array];
superAcls = [super aclsForUser: uid];
@@ -573,6 +587,11 @@ static BOOL sendEMailNotifications = NO;
{
if (component)
{
aclUser = [SOGoUser userWithLogin: uid roles: nil];
if ([component userIsOrganizer: aclUser])
[roles addObject: SOGoCalendarRole_Organizer];
else if ([component userIsParticipant: aclUser])
[roles addObject: SOGoCalendarRole_Participant];
accessRole = [container roleForComponentsWithAccessClass:
[component symbolicAccessClass]
forUser: uid];