diff options
| author | Bharat Mediratta <bharat@menalto.com> | 2008-12-31 09:02:40 +0000 |
|---|---|---|
| committer | Bharat Mediratta <bharat@menalto.com> | 2008-12-31 09:02:40 +0000 |
| commit | 610494296b7cb52e52ebcc99246bb48da9252546 (patch) | |
| tree | 32f2828cbf28987f166d0bb535d9e8d785d9f540 /core/views | |
| parent | fc56ebd4346b1e4515388ec8570f26deea7fd500 (diff) | |
Turn permission dialog into a browser where you can look at permissions back up the tree
Diffstat (limited to 'core/views')
| -rw-r--r-- | core/views/permission_edit.html.php | 67 | ||||
| -rw-r--r-- | core/views/permission_form.html.php | 34 |
2 files changed, 68 insertions, 33 deletions
diff --git a/core/views/permission_edit.html.php b/core/views/permission_edit.html.php index 332d31ab..ee561091 100644 --- a/core/views/permission_edit.html.php +++ b/core/views/permission_edit.html.php @@ -1,37 +1,38 @@ <?php defined("SYSPATH") or die("No direct script access.") ?> +<script src="<?= url::file("lib/jquery.js") ?>" type="text/javascript"></script> +<script type="text/javascript"> + show = function(id, form_url) { + $.ajax({ + url: form_url, + success: function(data) { + $("div.form").slideUp(); + var el = $("div#edit-" + id); + el.html(data).slideDown(); + } + }); + } +</script> <div id="gPermissions"> - <form method="post" action="<?= url::site("permissions/edit/$item->id") ?>"> - <?= access::csrf_form_field() ?> - - <table border=1> - <tr> - <th> </th> - <? foreach ($groups as $group): ?> - <th> <?= $group->name ?> </th> + <ul> + <? foreach ($parents as $parent): ?> + <li> + <a href="javascript:show(<?= $parent->id ?>,'<?= url::site("permissions/form/$parent->id") ?>')"> + <?= $parent->title ?> + </a> + <div class="form" id="edit-<?= $parent->id ?>"></div> + <ul> <? endforeach ?> - </tr> - - <? foreach ($permissions as $permission): ?> - <tr> - <td> <?= _($permission->display_name) ?> </td> - <? foreach ($groups as $group): ?> - <td> - <? $locked = access::locking_items($group, $permission->name, $item) ?> - <? $allowed = access::group_can($group, $permission->name, $item) ?> - <? if ($locked && $allowed): ?> - allowed <a href="#">locked</a> - <? elseif ($locked && !$allowed): ?> - denied <a href="#">locked</a> - <? elseif ($allowed): ?> - <a href="#">allowed</a> - <? elseif (!$allowed): ?> - <a href="#">denied</a> - <? endif ?> - </td> - <? endforeach ?> - </tr> - <? endforeach ?> - </table> - <input type="submit" value="<?= _("Save") ?>"/> - </form> + <li> + <a href="javascript:show(<?= $item->id ?>,'<?= url::site("permissions/form/$item->id") ?>')"> + <?= $item->title ?> + </a> + <div class="form" id="edit-<?= $item->id ?>"> + <?= $form ?> + </div> + </li> + <? foreach ($parents as $parent): ?> + </ul> + </li> + </ul> + <? endforeach ?> </div> diff --git a/core/views/permission_form.html.php b/core/views/permission_form.html.php new file mode 100644 index 00000000..4933d6f2 --- /dev/null +++ b/core/views/permission_form.html.php @@ -0,0 +1,34 @@ +<?php defined("SYSPATH") or die("No direct script access.") ?> +<form method="post" action="<?= url::site("permissions/edit/$item->id") ?>"> + <?= access::csrf_form_field() ?> + + <table border=1> + <tr> + <th> </th> + <? foreach ($groups as $group): ?> + <th> <?= $group->name ?> </th> + <? endforeach ?> + </tr> + + <? foreach ($permissions as $permission): ?> + <tr> + <td> <?= _($permission->display_name) ?> </td> + <? foreach ($groups as $group): ?> + <td> + <? $locked = access::locking_items($group, $permission->name, $item) ?> + <? $allowed = access::group_can($group, $permission->name, $item) ?> + <? if ($locked && $allowed): ?> + allowed <a href="#">locked</a> + <? elseif ($locked && !$allowed): ?> + denied <a href="#">locked</a> + <? elseif ($allowed): ?> + <a href="#">allowed</a> + <? elseif (!$allowed): ?> + <a href="#">denied</a> + <? endif ?> + </td> + <? endforeach ?> + </tr> + <? endforeach ?> + </table> +</form> |
