Update of /cvsroot/phpbt/phpbt/admin
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1698/admin
Modified Files:
group.php
Log Message:
Adding a role-based permission system
Index: group.php
===================================================================
RCS file: /cvsroot/phpbt/phpbt/admin/group.php,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- group.php 22 Aug 2005 20:04:05 -0000 1.15
+++ group.php 31 Oct 2005 21:34:35 -0000 1.16
@@ -85,7 +85,7 @@
}
-function list_items($groupid = 0, $error = '') {
+function list_items($do_group = true, $groupid = 0, $error = '') {
global $me, $db, $t, $QUERY;
if (empty($_GET['order'])) {
@@ -98,12 +98,14 @@
$page = isset($_GET['page']) ? $_GET['page'] : 0;
- $nr = $db->getOne("select count(*) from ".TBL_AUTH_GROUP);
+ $match = $do_group ? "is_role=0" : "is_role=1";
+
+ $nr = $db->getOne("select count(*) from ".TBL_AUTH_GROUP." where $match");
list($selrange, $llimit) = multipages($nr, $page, "order=$order&sort=$sort");
$t->assign('groups', $db->getAll($db->modifyLimitQuery(
- sprintf($QUERY['admin-list-groups'], $order, $sort), $llimit, $selrange)));
+ sprintf($QUERY['admin-list-groups'], $match, $order, $sort), $llimit, $selrange)));
$headers = array(
'groupid' => 'group_id',
@@ -112,7 +114,8 @@
sorting_headers($me, $headers, $order, $sort, "page=$page");
- $t->render('grouplist.html', translate("Group List"));
+ $t->assign('do_group', $do_group);
+ $t->render('grouplist.html', $do_group ? translate("Group List") : translate("Role List"));
}
$perm->check('Admin');
@@ -121,8 +124,13 @@
switch($_REQUEST['op']) {
case 'save' : do_form($_POST['group_id']); break;
case 'edit' : show_form($_GET['group_id']); break;
- case 'del' : del_group($_GET['group_id']); list_items($_GET['group_id']); break;
- case 'purge' : purge_group($_GET['group_id']); list_items($_GET['group_id']); break;
+ case 'del' : del_group($_GET['group_id']); list_items(true, $_GET['group_id']); break;
+ case 'purge' : purge_group($_GET['group_id']); list_items(true, $_GET['group_id']); break;
+ case 'list-roles' : list_items(false); break;
+ case 'save-role' : do_form($_POST['group_id']); break;
+ case 'edit-role' : show_form($_GET['group_id']); break;
+ case 'del-role' : del_group($_GET['group_id']); list_items(false, $_GET['group_id']); break;
+ case 'purge-role' : purge_group($_GET['group_id']); list_items(false, $_GET['group_id']); break;
}
} else list_items();
|