summaryrefslogtreecommitdiff
path: root/core/controllers
diff options
context:
space:
mode:
authorBharat Mediratta <bharat@menalto.com>2008-12-31 19:59:42 +0000
committerBharat Mediratta <bharat@menalto.com>2008-12-31 19:59:42 +0000
commit4573ada534720a44109e200172e48207140d5865 (patch)
tree325eeaad86ba9579e37bec016aa643212b798ecc /core/controllers
parentbd8884d3acb183006fc25369891330d4d4699bc8 (diff)
Extend permissions interface to allow resetting to the parental default.
Diffstat (limited to 'core/controllers')
-rw-r--r--core/controllers/permissions.php24
1 files changed, 12 insertions, 12 deletions
diff --git a/core/controllers/permissions.php b/core/controllers/permissions.php
index 7e0d1e43..8ffb63de 100644
--- a/core/controllers/permissions.php
+++ b/core/controllers/permissions.php
@@ -45,7 +45,7 @@ class Permissions_Controller extends Controller {
print $this->_get_form($item);
}
- function allow($group_id, $perm_id, $item_id) {
+ function change($command, $group_id, $perm_id, $item_id) {
access::verify_csrf();
$group = ORM::factory("group", $group_id);
$perm = ORM::factory("permission", $perm_id);
@@ -53,19 +53,19 @@ class Permissions_Controller extends Controller {
access::required("edit", $item);
if ($group->loaded && $perm->loaded && $item->loaded) {
- access::allow($group, $perm->name, $item);
- }
- }
+ switch($command) {
+ case "allow":
+ access::allow($group, $perm->name, $item);
+ break;
- function deny($group_id, $perm_id, $item_id) {
- access::verify_csrf();
- $group = ORM::factory("group", $group_id);
- $perm = ORM::factory("permission", $perm_id);
- $item = ORM::factory("item", $item_id);
- access::required("edit", $item);
+ case "deny":
+ access::deny($group, $perm->name, $item);
+ break;
- if ($group->loaded && $perm->loaded && $item->loaded) {
- access::deny($group, $perm->name, $item);
+ case "reset":
+ access::reset($group, $perm->name, $item);
+ break;
+ }
}
}