summaryrefslogtreecommitdiff
path: root/app/Model/ProjectRoleRestrictionModel.php
diff options
context:
space:
mode:
authorFrederic Guillot <fred@kanboard.net>2016-09-18 21:19:48 -0400
committerFrederic Guillot <fred@kanboard.net>2016-09-18 21:19:48 -0400
commit3043163747b13ce1942b2e55977cf7c5417021de (patch)
tree31552d8bfdf3b7a6eedfaded116b863e980f86b4 /app/Model/ProjectRoleRestrictionModel.php
parent4bc83646b0b15bff9ae55083121f66b7a89e433d (diff)
Add column restrictions to custom project roles
Diffstat (limited to 'app/Model/ProjectRoleRestrictionModel.php')
-rw-r--r--app/Model/ProjectRoleRestrictionModel.php44
1 files changed, 1 insertions, 43 deletions
diff --git a/app/Model/ProjectRoleRestrictionModel.php b/app/Model/ProjectRoleRestrictionModel.php
index 7679f650..dc8abf79 100644
--- a/app/Model/ProjectRoleRestrictionModel.php
+++ b/app/Model/ProjectRoleRestrictionModel.php
@@ -17,15 +17,6 @@ class ProjectRoleRestrictionModel extends Base
const RULE_TASK_CREATION = 'task_creation';
const RULE_TASK_OPEN_CLOSE = 'task_open_close';
- protected $ruleMapping = array(
- self::RULE_TASK_CREATION => array(
- array('controller' => 'TaskCreationController', 'method' => '*'),
- ),
- self::RULE_TASK_OPEN_CLOSE => array(
- array('controller' => 'TaskStatusController', 'method' => '*'),
- )
- );
-
/**
* Get rules
*
@@ -91,7 +82,7 @@ class ProjectRoleRestrictionModel extends Base
*/
public function getAllByRole($project_id, $role)
{
- $rules = $this->db
+ return $this->db
->table(self::TABLE)
->columns(
self::TABLE.'.restriction_id',
@@ -104,12 +95,6 @@ class ProjectRoleRestrictionModel extends Base
->eq('role', $role)
->left(ProjectRoleModel::TABLE, 'pr', 'role_id', self::TABLE, 'role_id')
->findAll();
-
- foreach ($rules as &$rule) {
- $rule['acl'] = $this->ruleMapping[$rule['rule']];
- }
-
- return $rules;
}
/**
@@ -140,31 +125,4 @@ class ProjectRoleRestrictionModel extends Base
{
return $this->db->table(self::TABLE)->eq('restriction_id', $restriction_id)->remove();
}
-
- /**
- * Check if the controller/method is allowed
- *
- * @param array $restrictions
- * @param string $controller
- * @param string $method
- * @return bool
- */
- public function isAllowed(array $restrictions, $controller, $method)
- {
- $controller = strtolower($controller);
- $method = strtolower($method);
-
- foreach ($restrictions as $restriction) {
- foreach ($restriction['acl'] as $acl) {
- $acl['controller'] = strtolower($acl['controller']);
- $acl['method'] = strtolower($acl['method']);
-
- if ($acl['controller'] === $controller && ($acl['method'] === '*' || $acl['method'] === $method)) {
- return false;
- }
- }
- }
-
- return true;
- }
}