mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-04-07 06:18:50 +00:00
Monotone-Parent: e2af315b632622df78228e2f3175bd974e1b5a8d
Monotone-Revision: 661ae1fcba69b174478dbc3404b4d50caf90da97 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2007-04-17T14:02:07 Monotone-Branch: ca.inverse.sogo
This commit is contained in:
@@ -1,5 +1,11 @@
|
||||
2007-04-17 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
||||
|
||||
* UI/Common/UIxObjectActions.m: new module implementing the web
|
||||
actions common to SOGoObject and all its subclasses.
|
||||
([UIxObjectActions -addUserInAclsAction]): new method that adds a
|
||||
user with the clientObject defaults user rights to the object's
|
||||
acl.
|
||||
|
||||
* UI/Common/UIxAclEditor.m: modified module so as to simplify it
|
||||
to the point where it will only list the users (and their name)
|
||||
associated with an object acl.
|
||||
|
||||
36
UI/Common/UIxObjectActions.h
Normal file
36
UI/Common/UIxObjectActions.h
Normal file
@@ -0,0 +1,36 @@
|
||||
/* UIxObjectActions.h - this file is part of SOGo
|
||||
*
|
||||
* Copyright (C) 2007 Inverse groupe conseil
|
||||
*
|
||||
* Author: Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* This file 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 General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; see the file COPYING. If not, write to
|
||||
* the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
* Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#ifndef UIXOBJECTACTIONS_H
|
||||
#define UIXOBJECTACTIONS_H
|
||||
|
||||
#import <NGObjWeb/WODirectAction.h>
|
||||
|
||||
@class WOResponse;
|
||||
|
||||
@interface UIxObjectActions : WODirectAction
|
||||
|
||||
- (WOResponse *) addUserInAclsAction;
|
||||
|
||||
@end
|
||||
|
||||
#endif /* UIXOBJECTACTIONS_H */
|
||||
66
UI/Common/UIxObjectActions.m
Normal file
66
UI/Common/UIxObjectActions.m
Normal file
@@ -0,0 +1,66 @@
|
||||
/* UIxObjectActions.m - this file is part of SOGo
|
||||
*
|
||||
* Copyright (C) 2007 Inverse groupe conseil
|
||||
*
|
||||
* Author: Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* This file 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 General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; see the file COPYING. If not, write to
|
||||
* the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
* Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#import <Foundation/NSString.h>
|
||||
#import <Foundation/NSArray.h>
|
||||
#import <NGObjWeb/WOContext+SoObjects.h>
|
||||
#import <NGObjWeb/WORequest.h>
|
||||
#import <NGObjWeb/WOResponse.h>
|
||||
#import <SoObjects/SOGo/AgenorUserManager.h>
|
||||
#import <SoObjects/SOGo/SOGoObject.h>
|
||||
|
||||
#import "UIxObjectActions.h"
|
||||
|
||||
@implementation UIxObjectActions
|
||||
|
||||
- (WOResponse *) addUserInAclsAction
|
||||
{
|
||||
WOResponse *response;
|
||||
WORequest *request;
|
||||
NSString *uid, *email;
|
||||
unsigned int code;
|
||||
AgenorUserManager *um;
|
||||
SOGoObject *clientObject;
|
||||
|
||||
code = 403;
|
||||
request = [context request];
|
||||
uid = [request formValueForKey: @"uid"];
|
||||
if ([uid length] > 0)
|
||||
{
|
||||
um = [AgenorUserManager sharedUserManager];
|
||||
email = [um getEmailForUID: uid];
|
||||
if ([email length] > 0)
|
||||
{
|
||||
clientObject = [self clientObject];
|
||||
[clientObject setRoles: [clientObject defaultAclRoles]
|
||||
forUser: uid];
|
||||
code = 204;
|
||||
}
|
||||
}
|
||||
|
||||
response = [context response];
|
||||
[response setStatus: code];
|
||||
|
||||
return response;
|
||||
}
|
||||
|
||||
@end
|
||||
Reference in New Issue
Block a user