Fix options availability in Contacts module
A user can edit/delete a card from a system addressbook if included in the "modifiers". Enable the delete/move options of the contextual menu in this case. Fixes #3342
This commit is contained in:
parent
b910501afa
commit
861057f22f
|
@ -251,6 +251,24 @@ Class SOGoContactSourceFolderK, SOGoGCSFolderK;
|
||||||
? @"available": @"unavailable");
|
? @"available": @"unavailable");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (NSDictionary *) currentContactFolderCardRights
|
||||||
|
{
|
||||||
|
NSArray *roles;
|
||||||
|
NSString *userLogin, *owner;
|
||||||
|
BOOL objectEditor, objectEraser;
|
||||||
|
|
||||||
|
userLogin = [[context activeUser] login];
|
||||||
|
owner = [currentFolder ownerInContext: context];
|
||||||
|
roles = [currentFolder aclsForUser: userLogin];
|
||||||
|
objectEditor = ([owner isEqualToString: userLogin] || [roles containsObject: SOGoRole_ObjectEditor]);
|
||||||
|
objectEraser = ([owner isEqualToString: userLogin] || [roles containsObject: SOGoRole_ObjectEraser]);
|
||||||
|
|
||||||
|
return [NSDictionary dictionaryWithObjectsAndKeys:
|
||||||
|
(objectEditor? @"available": @"unavailable"), @"editing",
|
||||||
|
(objectEraser? @"available": @"unavailable"), @"deleting",
|
||||||
|
nil];
|
||||||
|
}
|
||||||
|
|
||||||
- (NSString *) verticalDragHandleStyle
|
- (NSString *) verticalDragHandleStyle
|
||||||
{
|
{
|
||||||
NSString *vertical;
|
NSString *vertical;
|
||||||
|
|
|
@ -110,6 +110,8 @@
|
||||||
var:class="currentContactFolderClass"
|
var:class="currentContactFolderClass"
|
||||||
var:acl-editing="currentContactFolderAclEditing"
|
var:acl-editing="currentContactFolderAclEditing"
|
||||||
var:list-editing="currentContactFolderListEditing"
|
var:list-editing="currentContactFolderListEditing"
|
||||||
|
var:card-editing="currentContactFolderCardRights.editing"
|
||||||
|
var:card-deleting="currentContactFolderCardRights.deleting"
|
||||||
><span><var:string value="currentContactFolderName"/></span></li
|
><span><var:string value="currentContactFolderName"/></span></li
|
||||||
></var:foreach
|
></var:foreach
|
||||||
>
|
>
|
||||||
|
|
Loading…
Reference in a new issue