summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorFrederic Guillot <fred@kanboard.net>2017-01-27 18:38:34 -0500
committerFrederic Guillot <fred@kanboard.net>2017-01-27 18:38:34 -0500
commit20832b439d16510bad1ac607fe5db9b338d11ea7 (patch)
treeba6f54235470922ef75453f7569471ec7d1724ce /app
parentdb88388c92d8fae5ca9e86cf9ebfc3abb2fd5c70 (diff)
More API procedures are now available to project members and project viewers
Diffstat (limited to 'app')
-rw-r--r--app/ServiceProvider/AuthenticationProvider.php19
1 files changed, 9 insertions, 10 deletions
diff --git a/app/ServiceProvider/AuthenticationProvider.php b/app/ServiceProvider/AuthenticationProvider.php
index 3c04ff61..6a9a820e 100644
--- a/app/ServiceProvider/AuthenticationProvider.php
+++ b/app/ServiceProvider/AuthenticationProvider.php
@@ -197,20 +197,19 @@ class AuthenticationProvider implements ServiceProviderInterface
$acl->setRoleHierarchy(Role::PROJECT_MEMBER, array(Role::PROJECT_VIEWER));
$acl->add('ActionProcedure', array('removeAction', 'getActions', 'createAction'), Role::PROJECT_MANAGER);
- $acl->add('CategoryProcedure', '*', Role::PROJECT_MANAGER);
+ $acl->add('CategoryProcedure', array('removeCategory', 'createCategory', 'updateCategory'), Role::PROJECT_MANAGER);
$acl->add('ColumnProcedure', array('updateColumn', 'addColumn', 'removeColumn', 'changeColumnPosition'), Role::PROJECT_MANAGER);
- $acl->add('ColumnProcedure', array('getColumns', 'getColumn'), Role::PROJECT_VIEWER);
$acl->add('CommentProcedure', array('removeComment', 'createComment', 'updateComment'), Role::PROJECT_MEMBER);
- $acl->add('ProjectPermissionProcedure', '*', Role::PROJECT_MANAGER);
+ $acl->add('ProjectPermissionProcedure', array('addProjectUser', 'addProjectGroup', 'removeProjectUser', 'removeProjectGroup', 'changeProjectUserRole', 'changeProjectGroupRole'), Role::PROJECT_MANAGER);
$acl->add('ProjectProcedure', array('updateProject', 'removeProject', 'enableProject', 'disableProject', 'enableProjectPublicAccess', 'disableProjectPublicAccess'), Role::PROJECT_MANAGER);
- $acl->add('SubtaskProcedure', '*', Role::PROJECT_MEMBER);
- $acl->add('SubtaskTimeTrackingProcedure', '*', Role::PROJECT_MEMBER);
- $acl->add('SwimlaneProcedure', '*', Role::PROJECT_MANAGER);
- $acl->add('ProjectFileProcedure', '*', Role::PROJECT_MEMBER);
- $acl->add('TaskFileProcedure', '*', Role::PROJECT_MEMBER);
- $acl->add('TaskLinkProcedure', '*', Role::PROJECT_MEMBER);
+ $acl->add('SubtaskProcedure', array('removeSubtask', 'createSubtask', 'updateSubtask'), Role::PROJECT_MEMBER);
+ $acl->add('SubtaskTimeTrackingProcedure', array('setSubtaskStartTime', 'setSubtaskEndTime'), Role::PROJECT_MEMBER);
+ $acl->add('SwimlaneProcedure', array('addSwimlane', 'updateSwimlane', 'removeSwimlane', 'disableSwimlane', 'enableSwimlane', 'changeSwimlanePosition'), Role::PROJECT_MANAGER);
+ $acl->add('ProjectFileProcedure', array('createProjectFile', 'removeProjectFile', 'removeAllProjectFiles'), Role::PROJECT_MEMBER);
+ $acl->add('TaskFileProcedure', array('createTaskFile', 'removeTaskFile', 'removeAllTaskFiles'), Role::PROJECT_MEMBER);
+ $acl->add('TaskLinkProcedure', array('createTaskLink', 'updateTaskLink', 'removeTaskLink'), Role::PROJECT_MEMBER);
$acl->add('TaskExternalLinkProcedure', array('createExternalTaskLink', 'updateExternalTaskLink', 'removeExternalTaskLink'), Role::PROJECT_MEMBER);
- $acl->add('TaskProcedure', '*', Role::PROJECT_MEMBER);
+ $acl->add('TaskProcedure', array('openTask', 'closeTask', 'removeTask', 'moveTaskPosition', 'moveTaskToProject', 'duplicateTaskToProject', 'createTask', 'updateTask'), Role::PROJECT_MEMBER);
$acl->add('TaskTagProcedure', array('setTaskTags'), Role::PROJECT_MEMBER);
$acl->add('TagProcedure', array('createTag', 'updateTag', 'removeTag'), Role::PROJECT_MEMBER);