File: user_admin_permissions.php

package info (click to toggle)
cacti 0.6.7-2.2
  • links: PTS
  • area: main
  • in suites: woody
  • size: 1,000 kB
  • ctags: 1,120
  • sloc: php: 5,059; sql: 922; sh: 302; perl: 81; makefile: 56
file content (81 lines) | stat: -rw-r--r-- 3,346 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
<?/* 
+-------------------------------------------------------------------------+
| Copyright (C) 2002 Ian Berry                                            |
|                                                                         |
| This program is free software; you can redistribute it and/or           |
| modify it under the terms of the GNU General Public License             |
| as published by the Free Software Foundation; either version 2          |
| of the License, or (at your option) any later version.                  |
|                                                                         |
| This program is distributed in the hope that it will be useful,         |
| but WITHOUT ANY WARRANTY; without even the implied warranty of          |
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the           |
| GNU General Public License for more details.                            |
+-------------------------------------------------------------------------+
| cacti: the rrdtool frontend [php-auth, php-tree, php-form]              |
+-------------------------------------------------------------------------+
| This code is currently maintained and debugged by Ian Berry, any        |
| questions or comments regarding this code should be directed to:        |
| - iberry@raxnet.net                                                     |
+-------------------------------------------------------------------------+
| - raXnet - http://www.raxnet.net/                                       |
+-------------------------------------------------------------------------+
*/?>
<? 	header("Cache-control: no-cache");
	include ('include/database.php');
	$section = "User Administration"; include ('auth/include/auth.php');
	include ('include/config.php');

switch ($action) {
	case 'save':
		mysql_query ("delete from auth_acl where userid=$id",$cnn_id);
		
		if(isset($HTTP_POST_VARS)) {
			while(list($var, $val) = each($HTTP_POST_VARS)) {
				if ($var != "id") {
					if ($var != "action") {
						$res_save = mysql_query ("replace into auth_acl (userid,sectionid) values($id,$var)",$cnn_id);
					}
				}
			$i++;
			}
		}
		
		header('Location: user_admin.php'); exit;
		break;
default:
	include_once ('include/form.php');
	include_once ('include/top_header.php');
	
	$sql_id = mysql_query("select ac.userid, s.id, s.section, a.name from auth_sections s left join 
		auth_areas a on s.areaid=a.id left join auth_acl ac on (s.id=ac.sectionid and 
		ac.userid=$id) order by a.name,s.section", $cnn_id);
	$rows = mysql_num_rows($sql_id); $i = 0;
	
	DrawFormHeader("Edit User Permissions","",false);
	DrawFormItem("","Select or deselect the permissions that you want this user to have.");
	
	while ($i < $rows) {
		if (mysql_result($sql_id, $i, "name") != $old_area_name){
			/* new area */
			DrawFormItem(mysql_result($sql_id, $i, "name"),"");
			$old_area_name = mysql_result($sql_id, $i, "name");
		}
		
		if (mysql_result($sql_id, $i, "userid") == "") {
			$old_value = "";
		}else{
			$old_value = "on";
		}
		
		DrawFormItemCheckBox(mysql_result($sql_id, $i, "id"), $old_value, mysql_result($sql_id, $i, "section"),"");
		
		$i++;
	}
	
	DrawFormSaveButton();
	DrawFormItemHiddenIDField("id",$id);
	DrawFormFooter();
	
	break;
} ?>