Subversion Repositories ALCASAR

Rev

Rev 2339 | Rev 2341 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log

Rev 2339 Rev 2340
1
<?php
1
<?php
2
# $Id: user_edit.php 2339 2017-07-21 17:52:51Z tom.houdayer $
2
# $Id: user_edit.php 2340 2017-07-21 18:15:24Z tom.houdayer $
3
 
3
 
4
//gestion de la langue
4
//gestion de la langue
5
if (is_file("../lib/langues.php"))
5
if (is_file("../lib/langues.php"))
6
	include("../lib/langues.php");
6
	include("../lib/langues.php");
7
 
7
 
8
require('/etc/freeradius-web/config.php');
8
require('/etc/freeradius-web/config.php');
9
require('../lib/attrshow.php');
9
require('../lib/attrshow.php');
10
require('../lib/defaults.php');
10
require('../lib/defaults.php');
11
 
11
 
12
if(!isset($change)) $change = 0;
12
if(!isset($change)) $change = 0;
13
if(!isset($user_type)) $user_type = 'user';
13
if(!isset($user_type)) $user_type = 'user';
14
if(!isset($badusers)) $badusers = 0;
14
if(!isset($badusers)) $badusers = 0;
15
if(!isset($cn)) $cn = '';
15
if(!isset($cn)) $cn = '';
16
 
16
 
17
//update Filter-Id for protocol filtering
17
//update Filter-Id for protocol filtering
18
if (isset($_POST['Filter-Proto']) && isset($_POST['Filter-Id0']))
18
if (isset($_POST['Filter-Proto']) && isset($_POST['Filter-Id0']))
19
{
19
{
20
	$upId = (int)$_POST['Filter-Proto'];
20
	$upId = (int)$_POST['Filter-Proto'];
21
	$downId = (int)$_POST['Filter-Id0'];
21
	$downId = (int)$_POST['Filter-Id0'];
22
	$upId = $upId+$downId;
22
	$upId = $upId+$downId;
23
	$upId = str_pad($upId, 8, '0', STR_PAD_LEFT);
23
	$upId = str_pad($upId, 8, '0', STR_PAD_LEFT);
24
	$_POST['Filter-Id0'] = $upId;
24
	$_POST['Filter-Id0'] = $upId;
25
}
25
}
26
 
26
 
27
if ($user_type != 'group'){
27
if ($user_type != 'group'){
28
	if (is_file("../lib/$config[general_lib_type]/user_info.php"))
28
	if (is_file("../lib/$config[general_lib_type]/user_info.php"))
29
		include("../lib/$config[general_lib_type]/user_info.php");
29
		include("../lib/$config[general_lib_type]/user_info.php");
30
	if ($config['general_lib_type'] == 'sql' && $config['sql_show_all_groups'] == 'true'){
30
	if ($config['general_lib_type'] == 'sql' && $config['sql_show_all_groups'] == 'true'){
31
		$saved_login = $login;
31
		$saved_login = $login;
32
		$login = '';
32
		$login = '';
33
		if (is_file("../lib/$config[general_lib_type]/group_info.php"))
33
		if (is_file("../lib/$config[general_lib_type]/group_info.php"))
34
			include("../lib/$config[general_lib_type]/group_info.php");
34
			include("../lib/$config[general_lib_type]/group_info.php");
35
		$login = $saved_login;
35
		$login = $saved_login;
36
	}
36
	}
37
}
37
}
38
else{
38
else{
39
	if (is_file("../lib/$config[general_lib_type]/group_info.php"))
39
	if (is_file("../lib/$config[general_lib_type]/group_info.php"))
40
		include("../lib/$config[general_lib_type]/group_info.php");
40
		include("../lib/$config[general_lib_type]/group_info.php");
41
}
41
}
42
if (false && /* Hide operator column */ $config['general_lib_type'] == 'sql' && $config['sql_use_operators'] == 'true') {
42
if (false && /* Hide operator column */ $config['general_lib_type'] == 'sql' && $config['sql_use_operators'] == 'true') {
43
	$colspan = 2;
43
	$colspan = 2;
44
	$show_ops = 1;
44
	$show_ops = 1;
45
	include("../lib/operators.php");
45
	include("../lib/operators.php");
46
} else {
46
} else {
47
	$show_ops = 0;
47
	$show_ops = 0;
48
	$colspan = 1;
48
	$colspan = 1;
49
}
49
}
50
?>
50
?>
51
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
51
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
52
<html>
52
<html>
53
<head>
53
<head>
54
<title>Users & groups edition</title>
54
<title>Users & groups edition</title>
55
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo $config['general_charset']?>">
55
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo $config['general_charset']?>">
56
<link rel="stylesheet" href="/css/style.css">
56
<link rel="stylesheet" href="/css/style.css">
57
<script type="text/javascript" src="/js/fonctions.js"></script>
57
<script type="text/javascript" src="/js/fonctions.js"></script>
58
<script language="javascript" type="text/javascript">
58
<script language="javascript" type="text/javascript">
59
var chars='0123456789abcdefghijkmnopqrstuvwxyzABCDEFGHIJKLMNPQRSTUVWXYZ'
59
var chars='0123456789abcdefghijkmnopqrstuvwxyzABCDEFGHIJKLMNPQRSTUVWXYZ'
60
function password(size)
60
function password(size)
61
  {
61
  {
62
  var pass=''
62
  var pass=''
63
  while(pass.length < size)
63
  while(pass.length < size)
64
  {
64
  {
65
    pass+=chars.charAt(Math.round(Math.random() * (chars.length)))
65
    pass+=chars.charAt(Math.round(Math.random() * (chars.length)))
66
  }
66
  }
67
  document.edituser.passwd.value=pass
67
  document.edituser.passwd.value=pass
68
  document.edituser.pwdgene.value=pass
68
  document.edituser.pwdgene.value=pass
69
}
69
}
70
</script>
70
</script>
71
<script type="text/javascript" src="/js/epoch_classes.js"></script>
71
<script type="text/javascript" src="/js/epoch_classes.js"></script>
72
<script language="javascript" type="text/javascript">
72
<script language="javascript" type="text/javascript">
73
	// Insertion du calendrier
73
	// Insertion du calendrier
74
	var dp_cal;
74
	var dp_cal;
75
	window.onload = function () {
75
	window.onload = function () {
76
		dp_cal = new Epoch('epoch_popup', 'popup', document.getElementById('popup_container'));
76
		dp_cal = new Epoch('epoch_popup', 'popup', document.getElementById('popup_container'));
77
	};
77
	};
78
</script>
78
</script>
79
<script type="text/javascript">
79
<script type="text/javascript">
80
	function showAdvancedFields(show) {
80
	function showAdvancedFields(show) {
81
		var form = document.forms['edituser'];
81
		var form = document.forms['edituser'];
82
		var btn_show = document.getElementById('show-advanced-fields');
82
		var btn_show = document.getElementById('show-advanced-fields');
83
		var btn_hide = document.getElementById('hide-advanced-fields');
83
		var btn_hide = document.getElementById('hide-advanced-fields');
84
 
84
 
85
		if (show) {
85
		if (show) {
86
			btn_hide.style.display = null;
86
			btn_hide.style.display = null;
87
			btn_show.style.display = 'none';
87
			btn_show.style.display = 'none';
88
			form.className += ' hide-advanced-fields';
88
			form.className += ' hide-advanced-fields';
89
		} else {
89
		} else {
90
			btn_show.style.display = null;
90
			btn_show.style.display = null;
91
			btn_hide.style.display = 'none';
91
			btn_hide.style.display = 'none';
92
			form.className = form.className.replace(' hide-advanced-fields', '');
92
			form.className = form.className.replace(' hide-advanced-fields', '');
93
 
93
 
94
		}
94
		}
95
	}
95
	}
96
</script>
96
</script>
97
<style type="text/css">
97
<style type="text/css">
98
	.hide-advanced-fields .advanced-field {
98
	.hide-advanced-fields .advanced-field {
99
		display: none;
99
		display: none;
100
	}
100
	}
101
</style>
101
</style>
102
</head>
102
</head>
103
<body>
103
<body>
104
<TABLE width="100%" border="0" cellspacing="0" cellpadding="0">
104
<TABLE width="100%" border="0" cellspacing="0" cellpadding="0">
105
	<tr><th><?= (($user_type !== 'group') ? $l_users_managment : $l_groups_managment) ?></th></tr>
105
	<tr><th><?= (($user_type !== 'group') ? $l_users_managment : $l_groups_managment) ?></th></tr>
106
	<tr bgcolor="#FFCC66"><td><img src="/images/pix.gif" width="1"
106
	<tr bgcolor="#FFCC66"><td><img src="/images/pix.gif" width="1"
107
height="2"></td></tr>
107
height="2"></td></tr>
108
</TABLE>
108
</TABLE>
109
<TABLE width="100%" border=1 cellspacing=0 cellpadding=1>
109
<TABLE width="100%" border=1 cellspacing=0 cellpadding=1>
110
	<tr><td valign="middle" align="left">
110
	<tr><td valign="middle" align="left">
111
	<center>
111
	<center>
112
	<table border=0 width=640 cellpadding=0 cellspacing=2>
112
	<table border=0 width=640 cellpadding=0 cellspacing=2>
113
<?php
113
<?php
114
if ($user_type != 'group'){
114
if ($user_type != 'group'){
115
	include("../html/user_toolbar.html.php");
115
	include("../html/user_toolbar.html.php");
116
	$titre=$l_user;
116
	$titre=$l_user;
117
}else{
117
}else{
118
	include("../html/group_toolbar.html.php");
118
	include("../html/group_toolbar.html.php");
119
	$titre=$l_group;
119
	$titre=$l_group;
120
}
120
}
121
print <<<EOM
121
print <<<EOM
122
</table>
122
</table>
123
<br>
123
<br>
124
<table border=0 width=620 cellpadding=1 cellspacing=1>
124
<table border=0 width=620 cellpadding=1 cellspacing=1>
125
<tr valign=top>
125
<tr valign=top>
126
<td width=400></td>
126
<td width=400></td>
127
<td bgcolor="black">
127
<td bgcolor="black">
128
	<table border=0 width=100% cellpadding=2 cellspacing=0>
128
	<table border=0 width=100% cellpadding=2 cellspacing=0>
129
	<tr bgcolor="#907030" align=center valign=top><th>
129
	<tr bgcolor="#907030" align=center valign=top><th>
130
	<font color="white">$titre : $login ($cn)</font>
130
	<font color="white">$titre : $login ($cn)</font>
131
	</th></tr>
131
	</th></tr>
132
	</table>
132
	</table>
133
</td></tr>
133
</td></tr>
134
<tr bgcolor="black" valign=top><td colspan="2">
134
<tr bgcolor="black" valign=top><td colspan="2">
135
	<table border=0 width=100% cellpadding=12 cellspacing=0 bgcolor="#ffffd0" valign=top>
135
	<table border=0 width=100% cellpadding=12 cellspacing=0 bgcolor="#ffffd0" valign=top>
136
	<tr><td>
136
	<tr><td>
137
EOM;
137
EOM;
138
 
138
 
139
if ($change == 1){
139
if ($change == 1){
140
	if (is_file("../lib/$config[general_lib_type]/change_attrs.php"))
140
	if (is_file("../lib/$config[general_lib_type]/change_attrs.php"))
141
		include("../lib/$config[general_lib_type]/change_attrs.php");
141
		include("../lib/$config[general_lib_type]/change_attrs.php");
142
	if ($user_type != 'group'){
142
	if ($user_type != 'group'){
143
		if ($config['general_show_user_password'] != 'no' && $passwd != ''
143
		if ($config['general_show_user_password'] != 'no' && $passwd != ''
144
			&& is_file("../lib/$config[general_lib_type]/change_passwd.php"))
144
			&& is_file("../lib/$config[general_lib_type]/change_passwd.php"))
145
			include("../lib/$config[general_lib_type]/change_passwd.php");
145
			include("../lib/$config[general_lib_type]/change_passwd.php");
146
		if (is_file("../lib/$config[general_lib_type]/user_info.php"))
146
		if (is_file("../lib/$config[general_lib_type]/user_info.php"))
147
			include("../lib/$config[general_lib_type]/user_info.php");
147
			include("../lib/$config[general_lib_type]/user_info.php");
148
		if ($group_change && $config['general_lib_type'] == 'sql' && $config['sql_show_all_groups'] == 'true'){
148
		if ($group_change && $config['general_lib_type'] == 'sql' && $config['sql_show_all_groups'] == 'true'){
149
			include("../lib/$config[general_lib_type]/group_change.php");
149
			include("../lib/$config[general_lib_type]/group_change.php");
150
			include("../lib/defaults.php");
150
			include("../lib/defaults.php");
151
		}
151
		}
152
		# Disconnecting user for re-authentication
152
		# Disconnecting user for re-authentication
153
		$mac=exec("sudo /usr/sbin/chilli_query list | grep ".escapeshellarg(" $login ")." | awk '{print $1}'");
153
		$mac=exec("sudo /usr/sbin/chilli_query list | grep ".escapeshellarg(" $login ")." | awk '{print $1}'");
154
		exec("sudo /usr/sbin/chilli_query logout ".escapeshellarg($mac));
154
		exec("sudo /usr/sbin/chilli_query logout ".escapeshellarg($mac));
155
	}
155
	}
156
	else{
156
	else{
157
		if (is_file("../lib/$config[general_lib_type]/group_info.php"))
157
		if (is_file("../lib/$config[general_lib_type]/group_info.php"))
158
			include("../lib/$config[general_lib_type]/group_info.php");
158
			include("../lib/$config[general_lib_type]/group_info.php");
159
		# Disconnecting all users from the selected group for re-authentication
159
		# Disconnecting all users from the selected group for re-authentication
160
		if (isset($group_members)){
160
		if (isset($group_members)){
161
			foreach ($group_members as $g_member => $member){
161
			foreach ($group_members as $g_member => $member){
162
				$mac=exec("sudo /usr/sbin/chilli_query list | grep ".escapeshellarg(" $member ")." | awk '{print $1}'");
162
				$mac=exec("sudo /usr/sbin/chilli_query list | grep ".escapeshellarg(" $member ")." | awk '{print $1}'");
163
				exec("sudo /usr/sbin/chilli_query logout ".escapeshellarg($mac));
163
				exec("sudo /usr/sbin/chilli_query logout ".escapeshellarg($mac));
164
			}
164
			}
165
		}
165
		}
166
	}
166
	}
167
}
167
}
168
else if ($badusers == 1){
168
else if ($badusers == 1){
169
	if (is_file("../lib/add_badusers.php"))
169
	if (is_file("../lib/add_badusers.php"))
170
		include("../lib/add_badusers.php");
170
		include("../lib/add_badusers.php");
171
}
171
}
172
 
172
 
173
//si l'utilisateur fait parti d'un groupe, on charge les attributs du groupe, pour les afficher ensuite.
173
//si l'utilisateur fait parti d'un groupe, on charge les attributs du groupe, pour les afficher ensuite.
174
if(isset($member_groups) && ($user_type != 'group')) {
174
if(isset($member_groups) && ($user_type != 'group')) {
175
	$group = array_values($member_groups)[0];
175
	$group = array_values($member_groups)[0];
176
	$login_saved = $login;
176
	$login_saved = $login;
177
	$login = array_values($member_groups)[0];
177
	$login = array_values($member_groups)[0];
178
	include("../lib/$config[general_lib_type]/group_info.php");
178
	include("../lib/$config[general_lib_type]/group_info.php");
179
	$login = $login_saved;
179
	$login = $login_saved;
180
	
180
	
181
	foreach ($show_attrs as $key => $desc) {
181
	foreach ($show_attrs as $key => $desc) {
182
		$name = $attrmap["$key"];
182
		$name = $attrmap["$key"];
183
		$generic = (isset($attrmap['generic']["$key"])) ? $attrmap['generic']["$key"] : '';
183
		$generic = (isset($attrmap['generic']["$key"])) ? $attrmap['generic']["$key"] : '';
184
		if ($name == 'none')
184
		if ($name == 'none')
185
			continue;
185
			continue;
186
		unset($vals);
186
		unset($vals);
187
		unset($selected);
187
		unset($selected);
188
		unset($ops);
188
		unset($ops);
189
		$def_added = 0;
189
		$def_added = 0;
190
		if (isset($item_vals["$key"]['count']) && $item_vals["$key"]['count']) {
190
		if (isset($item_vals["$key"]['count']) && $item_vals["$key"]['count']) {
191
			for($i=0;$i<$item_vals["$key"]['count'];$i++){
191
			for($i=0;$i<$item_vals["$key"]['count'];$i++){
192
				$vals[] = $item_vals["$key"][$i];
192
				$vals[] = $item_vals["$key"][$i];
193
				$ops[] = $item_vals["$key"]['operator'][$i];
193
				$ops[] = $item_vals["$key"]['operator'][$i];
194
			}
194
			}
195
		} else {
195
		} else {
196
			if (isset($default_vals["$key"]['count']) && $default_vals["$key"]['count']) {
196
			if (isset($default_vals["$key"]['count']) && $default_vals["$key"]['count']) {
197
				for ($i=0;$i<$default_vals["$key"]['count'];$i++) {
197
				for ($i=0;$i<$default_vals["$key"]['count'];$i++) {
198
					$vals[] = $default_vals["$key"][$i];
198
					$vals[] = $default_vals["$key"][$i];
199
					$ops[] = $default_vals["$key"]['operator'][$i];
199
					$ops[] = $default_vals["$key"]['operator'][$i];
200
				}
200
				}
201
			} else {
201
			} else {
202
				$vals[] = '';
202
				$vals[] = '';
203
				$ops[] = '=';
203
				$ops[] = '=';
204
			}
204
			}
205
			$def_added = 1;
205
			$def_added = 1;
206
		}
206
		}
207
		if ($generic == 'generic' && $def_added == 0) {
207
		if ($generic == 'generic' && $def_added == 0) {
208
			for($i=0;$i<$default_vals["$key"]['count'];$i++){
208
			for($i=0;$i<$default_vals["$key"]['count'];$i++){
209
				$vals[] = $default_vals["$key"][$i];
209
				$vals[] = $default_vals["$key"][$i];
210
				$ops[] = $default_vals["$key"]['operator'][$i];
210
				$ops[] = $default_vals["$key"]['operator'][$i];
211
			}
211
			}
212
		}
212
		}
213
		if (isset($add) && $add && $name == $add_attr){
213
		if (isset($add) && $add && $name == $add_attr){
214
			$vals[] = $default_vals["$key"][0];
214
			$vals[] = $default_vals["$key"][0];
215
			$ops[] = ($default_vals["$key"]['operator'][0] != '') ? $default_vals["$key"]['operator'][0] : '=';
215
			$ops[] = ($default_vals["$key"]['operator'][0] != '') ? $default_vals["$key"]['operator'][0] : '=';
216
		}
216
		}
217
 
217
 
218
		$i = 0;
218
		$i = 0;
219
		foreach ($vals as $val) {
219
		foreach ($vals as $val) {
220
			$name1 = $name . $i;
220
			$name1 = $name . $i;
221
			$val = preg_replace('/\"/','&quot;',$val);
221
			$val = preg_replace('/\"/','&quot;',$val);
222
			$oper_name = $name1 . '_op';
222
			$oper_name = $name1 . '_op';
223
			$oper = $ops[$i];
223
			$oper = $ops[$i];
224
			$selected[$oper] = 'selected';
224
			$selected[$oper] = 'selected';
225
			$i++;
225
			$i++;
226
 
226
 
227
			switch ($key)
227
			switch ($key)
228
				{
228
				{
229
				case 'Simultaneous-Use' :
229
				case 'Simultaneous-Use' :
230
					$grp_simuse = $val;
230
					$grp_simuse = $val;
231
					break;
231
					break;
232
				case 'Login-Time' :
232
				case 'Login-Time' :
233
					$grp_logtime = $val;
233
					$grp_logtime = $val;
234
					break;
234
					break;
235
				case 'Expiration' :
235
				case 'Expiration' :
236
					$grp_exp = $val;
236
					$grp_exp = $val;
237
					break;
237
					break;
238
				case 'Max-All-Session' :
238
				case 'Max-All-Session' :
239
					$grp_maxall = $val;
239
					$grp_maxall = $val;
240
					break;
240
					break;
241
				case 'Session-Timeout' :
241
				case 'Session-Timeout' :
242
					$grp_sesstim = $val;
242
					$grp_sesstim = $val;
243
					break;
243
					break;
244
				case 'Max-Daily-Session' :
244
				case 'Max-Daily-Session' :
245
					$grp_maxday = $val;
245
					$grp_maxday = $val;
246
					break;
246
					break;
247
				case 'Max-Weekly-Session' :
247
				case 'Max-Weekly-Session' :
248
					$grp_maxweek = $val;
248
					$grp_maxweek = $val;
249
					break;
249
					break;
250
				case 'Max-Monthly-Session' :
250
				case 'Max-Monthly-Session' :
251
					$grp_maxmonth = $val;
251
					$grp_maxmonth = $val;
252
					break;
252
					break;
253
				case 'ChilliSpot-Max-Input-Octets' :
253
				case 'ChilliSpot-Max-Input-Octets' :
254
					$grp_maxio = $val;
254
					$grp_maxio = $val;
255
					break;
255
					break;
256
				case 'ChilliSpot-Max-Output-Octets' :
256
				case 'ChilliSpot-Max-Output-Octets' :
257
					$grp_maxoo = $val;
257
					$grp_maxoo = $val;
258
					break;
258
					break;
259
				case 'ChilliSpot-Max-Total-Octets' :
259
				case 'ChilliSpot-Max-Total-Octets' :
260
					$grp_maxto = $val;
260
					$grp_maxto = $val;
261
					break;
261
					break;
262
				case 'ChilliSpot-Bandwidth-Max-Up' :
262
				case 'ChilliSpot-Bandwidth-Max-Up' :
263
					$grp_bwup = $val;
263
					$grp_bwup = $val;
264
					break;
264
					break;
265
				case 'ChilliSpot-Bandwidth-Max-Down' :
265
				case 'ChilliSpot-Bandwidth-Max-Down' :
266
					$grp_bwdown = $val;
266
					$grp_bwdown = $val;
267
					break;
267
					break;
268
				case 'WISPr-Redirection-URL' :
268
				case 'WISPr-Redirection-URL' :
269
					$grp_redir = $val;
269
					$grp_redir = $val;
270
					break;
270
					break;
271
				case 'Filter-Id' :
271
				case 'Filter-Id' :
-
 
272
					if (empty($val)) {
-
 
273
						$val = '00000000'; // Set no filters if value is not set
-
 
274
					}
-
 
275
 
272
					if ($val[5] === '1') {
276
					if ($val[5] === '1') {
273
						$grp_filter = $l_filtering_havp_wl;
277
						$grp_filter = $l_filtering_havp_wl;
274
					} else if ($val[6] === '1') {
278
					} else if ($val[6] === '1') {
275
						$grp_filter = $l_filtering_havp_bl;
279
						$grp_filter = $l_filtering_havp_bl;
276
					} else if ($val[7] === '1') {
280
					} else if ($val[7] === '1') {
277
						$grp_filter = $l_filtering_havp;
281
						$grp_filter = $l_filtering_havp;
278
					} else {
282
					} else {
279
						$grp_filter = $l_filtering_none;
283
						$grp_filter = $l_filtering_none;
280
					}
284
					}
281
 
285
 
282
					if ($val[2] === '1') {
286
					if ($val[2] === '1') {
283
						$grp_proto = $l_proto_3;
287
						$grp_proto = $l_proto_3;
284
					} else if ($val[1] === '1') {
288
					} else if ($val[1] === '1') {
285
						$grp_proto = $l_proto_2;
289
						$grp_proto = $l_proto_2;
286
					} else if ($val[0] === '1') {
290
					} else if ($val[0] === '1') {
287
						$grp_proto = $l_proto_1;
291
						$grp_proto = $l_proto_1;
288
					} else {
292
					} else {
289
						$grp_proto = $l_proto_0;
293
						$grp_proto = $l_proto_0;
290
					}
294
					}
291
					
295
					
292
					break;
296
					break;
293
			}
297
			}
294
		}
298
		}
295
	}
299
	}
296
 
300
 
297
	/*on charge les attributs utilisateurs afin de montrer les groupes disponibles*/
301
	/*on charge les attributs utilisateurs afin de montrer les groupes disponibles*/
298
	if ($user_type != 'group') {
302
	if ($user_type != 'group') {
299
		if (is_file("../lib/$config[general_lib_type]/user_info.php"))
303
		if (is_file("../lib/$config[general_lib_type]/user_info.php"))
300
			include("../lib/$config[general_lib_type]/user_info.php");
304
			include("../lib/$config[general_lib_type]/user_info.php");
301
		if ($config['general_lib_type'] == 'sql' && $config['sql_show_all_groups'] == 'true'){
305
		if ($config['general_lib_type'] == 'sql' && $config['sql_show_all_groups'] == 'true'){
302
			$saved_login = $login;
306
			$saved_login = $login;
303
			$login = '';
307
			$login = '';
304
			if (is_file("../lib/$config[general_lib_type]/group_info.php"))
308
			if (is_file("../lib/$config[general_lib_type]/group_info.php"))
305
				include("../lib/$config[general_lib_type]/group_info.php");
309
				include("../lib/$config[general_lib_type]/group_info.php");
306
			$login = $saved_login;
310
			$login = $saved_login;
307
		}
311
		}
308
	}
312
	}
309
}
313
}
310
?>
314
?>
311
   <form name="edituser" method="post" class="">
315
   <form name="edituser" method="post" class="">
312
      <input type="hidden" name="login" value="<?= $login ?>">
316
      <input type="hidden" name="login" value="<?= $login ?>">
313
      <input type="hidden" name="user_type" value="<?= $user_type ?>">
317
      <input type="hidden" name="user_type" value="<?= $user_type ?>">
314
      <input type="hidden" name="change" value="0">
318
      <input type="hidden" name="change" value="0">
315
      <input type="hidden" name="add" value="0">
319
      <input type="hidden" name="add" value="0">
316
      <input type="hidden" name="badusers" value="0">
320
      <input type="hidden" name="badusers" value="0">
317
      <input type="hidden" name="group_change" value="0">
321
      <input type="hidden" name="group_change" value="0">
318
	<table border="1" bordercolordark="#ffffe0" bordercolorlight="#000000" width="100%" cellpadding="2" cellspacing="0" bgcolor="#ffffe0" valign="top">
322
	<table border="1" bordercolordark="#ffffe0" bordercolorlight="#000000" width="100%" cellpadding="2" cellspacing="0" bgcolor="#ffffe0" valign="top">
319
<?php
323
<?php
320
if (($user_type !== 'group') && (isset($member_groups))) {
324
if (($user_type !== 'group') && (isset($member_groups))) {
321
	echo <<<EOM
325
	echo <<<EOM
322
	<tr>
326
	<tr>
323
		<td colspan="$colspan"></td>
327
		<td colspan="$colspan"></td>
324
		<td>$l_group_desc</td>
328
		<td>$l_group_desc</td>
325
		<td>$l_user_desc</td>
329
		<td>$l_user_desc</td>
326
	</tr>
330
	</tr>
327
EOM;
331
EOM;
328
}
332
}
329
if ($user_type != 'group' && $config['general_show_user_password'] != 'no') {
333
if ($user_type != 'group' && $config['general_show_user_password'] != 'no') {
330
 
334
 
331
 
335
 
332
	echo <<<EOM
336
	echo <<<EOM
333
	<tr>
337
	<tr>
334
	<td align=right colspan="$colspan" bgcolor="#d0ddb0">
338
	<td align=right colspan="$colspan" bgcolor="#d0ddb0">
335
	$l_new_password<br>
339
	$l_new_password<br>
336
	</td>
340
	</td>
337
EOM;
341
EOM;
338
 
342
 
339
	if(isset($member_groups)){
343
	if(isset($member_groups)){
340
		echo <<<EOM
344
		echo <<<EOM
341
		<td bgcolor="#BEBEBE">
345
		<td bgcolor="#BEBEBE">
342
		<br/>
346
		<br/>
343
		</td>
347
		</td>
344
EOM;
348
EOM;
345
	}
349
	}
346
 
350
 
347
 
351
 
348
	echo <<<EOM
352
	echo <<<EOM
349
	<td>
353
	<td>
350
	<input type="password" name="passwd" value="" size="20">
354
	<input type="password" name="passwd" value="" size="20">
351
	<br /><input type="button" value="$l_passwd_gen" onclick="password(8)">
355
	<br /><input type="button" value="$l_passwd_gen" onclick="password(8)">
352
	<input type="text" value="" name="pwdgene" size="10" readonly>
356
	<input type="text" value="" name="pwdgene" size="10" readonly>
353
	</td>
357
	</td>
354
	</tr>
358
	</tr>
355
EOM;
359
EOM;
356
}
360
}
357
 
361
 
358
	foreach($show_attrs as $key => $desc){
362
	foreach($show_attrs as $key => $desc){
359
		$name = $attrmap["$key"];
363
		$name = $attrmap["$key"];
360
		$generic = (isset($attrmap['generic']["$key"])) ? $attrmap['generic']["$key"] : '';
364
		$generic = (isset($attrmap['generic']["$key"])) ? $attrmap['generic']["$key"] : '';
361
		if ($name == 'none')
365
		if ($name == 'none')
362
			continue;
366
			continue;
363
		unset($vals);
367
		unset($vals);
364
		unset($selected);
368
		unset($selected);
365
		unset($ops);
369
		unset($ops);
366
		$def_added = 0;
370
		$def_added = 0;
367
		if (isset($item_vals["$key"]['count']) && $item_vals["$key"]['count']){
371
		if (isset($item_vals["$key"]['count']) && $item_vals["$key"]['count']){
368
			for($i=0;$i<$item_vals["$key"]['count'];$i++){
372
			for($i=0;$i<$item_vals["$key"]['count'];$i++){
369
				$vals[] = $item_vals["$key"][$i];
373
				$vals[] = $item_vals["$key"][$i];
370
				$ops[] = $item_vals["$key"]['operator'][$i];
374
				$ops[] = $item_vals["$key"]['operator'][$i];
371
			}
375
			}
372
		} else {
376
		} else {
373
			if (isset($default_vals["$key"]['count']) && $default_vals["$key"]['count']){
377
			if (isset($default_vals["$key"]['count']) && $default_vals["$key"]['count']){
374
				for($i=0;$i<$default_vals["$key"]['count'];$i++){
378
				for($i=0;$i<$default_vals["$key"]['count'];$i++){
375
					$vals[] = $default_vals["$key"][$i];
379
					$vals[] = $default_vals["$key"][$i];
376
					$ops[] = $default_vals["$key"]['operator'][$i];
380
					$ops[] = $default_vals["$key"]['operator'][$i];
377
				}
381
				}
378
			}
382
			}
379
			else{
383
			else{
380
				$vals[] = '';
384
				$vals[] = '';
381
				$ops[] = '=';
385
				$ops[] = '=';
382
			}
386
			}
383
			$def_added = 1;
387
			$def_added = 1;
384
		}
388
		}
385
		if ($generic == 'generic' && $def_added == 0){
389
		if ($generic == 'generic' && $def_added == 0){
386
			for($i=0;$i<$default_vals["$key"]['count'];$i++){
390
			for($i=0;$i<$default_vals["$key"]['count'];$i++){
387
				$vals[] = $default_vals["$key"][$i];
391
				$vals[] = $default_vals["$key"][$i];
388
				$ops[] = $default_vals["$key"]['operator'][$i];
392
				$ops[] = $default_vals["$key"]['operator'][$i];
389
			}
393
			}
390
		}
394
		}
391
		if (isset($add) && $add && $name == $add_attr){
395
		if (isset($add) && $add && $name == $add_attr){
392
			$vals[] = $default_vals["$key"][0];
396
			$vals[] = $default_vals["$key"][0];
393
			$ops[] = ($default_vals["$key"]['operator'][0] != '') ? $default_vals["$key"]['operator'][0] : '=';
397
			$ops[] = ($default_vals["$key"]['operator'][0] != '') ? $default_vals["$key"]['operator'][0] : '=';
394
		}
398
		}
395
 
399
 
396
		$i = 0;
400
		$i = 0;
397
		foreach($vals as $val) {
401
		foreach($vals as $val) {
398
			$name1 = $name . $i;
402
			$name1 = $name . $i;
399
			$val = preg_replace('/\"/','&quot;',$val);
403
			$val = preg_replace('/\"/','&quot;',$val);
400
			$oper_name = $name1 . '_op';
404
			$oper_name = $name1 . '_op';
401
			$oper = $ops[$i];
405
			$oper = $ops[$i];
402
			$selected[$oper] = 'selected';
406
			$selected[$oper] = 'selected';
403
			$i++;
407
			$i++;
404
			switch ($key)
408
			switch ($key)
405
			{
409
			{
406
					// $advanced = 1 : champs de saisie amélioré (calendrier, convertisseur, etc.)
410
					// $advanced = 1 : champs de saisie amélioré (calendrier, convertisseur, etc.)
407
				case 'Simultaneous-Use' :
411
				case 'Simultaneous-Use' :
408
					$advanced = false;
412
					$advanced = false;
409
					$help_link = "help/simultaneous_use_help.html";
413
					$help_link = "help/simultaneous_use_help.html";
410
					$desc = $l_simultaneous_use;
414
					$desc = $l_simultaneous_use;
411
					break;
415
					break;
412
				case 'Max-All-Session' :
416
				case 'Max-All-Session' :
413
					$advanced = false;
417
					$advanced = false;
414
					$help_link = "help/max_all_session_help.html";
418
					$help_link = "help/max_all_session_help.html";
415
					$desc = $l_max_all_session;
419
					$desc = $l_max_all_session;
416
					break;
420
					break;
417
				case 'Session-Timeout' :
421
				case 'Session-Timeout' :
418
					$advanced = true;
422
					$advanced = true;
419
					$help_link = "help/session_timeout_help.html";
423
					$help_link = "help/session_timeout_help.html";
420
					$desc = $l_session_timeout;
424
					$desc = $l_session_timeout;
421
					break;
425
					break;
422
				case 'Max-Daily-Session' :
426
				case 'Max-Daily-Session' :
423
					$advanced = true;
427
					$advanced = true;
424
					$help_link = "help/session_timeout_help.html";
428
					$help_link = "help/session_timeout_help.html";
425
					$desc = $l_daily_timeout;
429
					$desc = $l_daily_timeout;
426
					break;
430
					break;
427
				case 'Max-Monthly-Session' :
431
				case 'Max-Monthly-Session' :
428
					$advanced = true;
432
					$advanced = true;
429
					$help_link = "help/session_timeout_help.html";
433
					$help_link = "help/session_timeout_help.html";
430
					$desc = $l_monthly_timeout;
434
					$desc = $l_monthly_timeout;
431
					break;
435
					break;
432
				case 'Login-Time' :
436
				case 'Login-Time' :
433
					$advanced = true;
437
					$advanced = true;
434
					$help_link = "help/login_time_help.html";
438
					$help_link = "help/login_time_help.html";
435
					$desc = $l_login_time;
439
					$desc = $l_login_time;
436
					break;
440
					break;
437
				case 'Expiration' :
441
				case 'Expiration' :
438
					$advanced = false;
442
					$advanced = false;
439
					$help_link = "help/expiration_help.html";
443
					$help_link = "help/expiration_help.html";
440
					$desc = $l_expiration;
444
					$desc = $l_expiration;
441
					break;
445
					break;
442
				case 'ChilliSpot-Max-Input-Octets' :
446
				case 'ChilliSpot-Max-Input-Octets' :
443
					$advanced = true;
447
					$advanced = true;
444
					$help_link = "help/chillispot_max_input_octets_help.html";
448
					$help_link = "help/chillispot_max_input_octets_help.html";
445
					$desc = $l_max_input_octets;
449
					$desc = $l_max_input_octets;
446
					break;
450
					break;
447
				case 'ChilliSpot-Max-Output-Octets' :
451
				case 'ChilliSpot-Max-Output-Octets' :
448
					$advanced = true;
452
					$advanced = true;
449
					$help_link = "help/chillispot_max_output_octets_help.html";
453
					$help_link = "help/chillispot_max_output_octets_help.html";
450
					$desc = $l_max_output_octets;
454
					$desc = $l_max_output_octets;
451
					break;
455
					break;
452
				case 'ChilliSpot-Max-Total-Octets' :
456
				case 'ChilliSpot-Max-Total-Octets' :
453
					$advanced = true;
457
					$advanced = true;
454
					$help_link = "help/chillispot_max_total_octets_help.html";
458
					$help_link = "help/chillispot_max_total_octets_help.html";
455
					$desc = $l_max_total_octets;
459
					$desc = $l_max_total_octets;
456
					break;
460
					break;
457
				case 'ChilliSpot-Bandwidth-Max-Up' :
461
				case 'ChilliSpot-Bandwidth-Max-Up' :
458
					$advanced = true;
462
					$advanced = true;
459
					$help_link = "help/chillispot_bandwidth_max_up_help.html";
463
					$help_link = "help/chillispot_bandwidth_max_up_help.html";
460
					$desc = $l_max_bandwidth_up;
464
					$desc = $l_max_bandwidth_up;
461
					break;
465
					break;
462
				case 'ChilliSpot-Bandwidth-Max-Down' :
466
				case 'ChilliSpot-Bandwidth-Max-Down' :
463
					$advanced = true;
467
					$advanced = true;
464
					$help_link = "help/chillispot_bandwidth_max_down_help.html";
468
					$help_link = "help/chillispot_bandwidth_max_down_help.html";
465
					$desc = $l_max_bandwidth_down;
469
					$desc = $l_max_bandwidth_down;
466
					break;
470
					break;
467
				case 'WISPr-Redirection-URL' :
471
				case 'WISPr-Redirection-URL' :
468
					$advanced = true;
472
					$advanced = true;
469
					$help_link = "help/wispr_redirection_url_help.html";
473
					$help_link = "help/wispr_redirection_url_help.html";
470
					$desc = $l_wispr_redirection;
474
					$desc = $l_wispr_redirection;
471
					break;
475
					break;
472
				case 'Filter-Id' :
476
				case 'Filter-Id' :
473
					$advanced = false;
477
					$advanced = false;
474
					$help_link = "help/filtering_help.html";
478
					$help_link = "help/filtering_help.html";
475
					$desc = $l_filtering;
479
					$desc = $l_filtering;
476
					break;
480
					break;
477
				default:
481
				default:
478
					$advanced = true;
482
					$advanced = true;
479
					break;
483
					break;
480
			}
484
			}
481
 
485
 
482
			$advancedField = ($advanced) ? ' class="advanced-field"' : '';
486
			$advancedField = ($advanced) ? ' class="advanced-field"' : '';
483
 
487
 
484
			if ($show_ops) {
488
			if ($show_ops) {
485
				print <<<EOM
489
				print <<<EOM
486
					<tr$advancedField>
490
					<tr$advancedField>
487
					<td class="etiquette">
491
					<td class="etiquette">
488
					<a href="$help_link" target="help" onclick="window.open('$help_link','help','width=600,height=350,toolbar=no,scrollbars=no,resizable=yes')" title="$l_click_for_help"><font color="blue">$desc</font></a>
492
					<a href="$help_link" target="help" onclick="window.open('$help_link','help','width=600,height=350,toolbar=no,scrollbars=no,resizable=yes')" title="$l_click_for_help"><font color="blue">$desc</font></a>
489
					</td>
493
					</td>
490
EOM;
494
EOM;
491
				if(!isset($selected[$op_eq])) $selected[$op_eq] = '';
495
				if(!isset($selected[$op_eq])) $selected[$op_eq] = '';
492
				switch ($key){
496
				switch ($key){
493
					case 'Simultaneous-Use' :
497
					case 'Simultaneous-Use' :
494
					case 'Max-All-Session' :
498
					case 'Max-All-Session' :
495
					case 'Max-Daily-Session' :
499
					case 'Max-Daily-Session' :
496
					case 'Max-Weekly-Session' :
500
					case 'Max-Weekly-Session' :
497
					case 'Max-Monthly-Session' :
501
					case 'Max-Monthly-Session' :
498
					case 'Login-Time' :
502
					case 'Login-Time' :
499
					case 'Expiration' :
503
					case 'Expiration' :
500
					case 'Filter-Id' :
504
					case 'Filter-Id' :
501
						echo "<td><select name=\"$oper_name\"><option $selected[$op_eq] value=\":=\">:=</option></select></td>";
505
						echo "<td><select name=\"$oper_name\"><option $selected[$op_eq] value=\":=\">:=</option></select></td>";
502
						break;
506
						break;
503
					case 'Session-Timeout' :
507
					case 'Session-Timeout' :
504
					case 'ChilliSpot-Max-Input-Octets' :
508
					case 'ChilliSpot-Max-Input-Octets' :
505
					case 'ChilliSpot-Max-Output-Octets' :
509
					case 'ChilliSpot-Max-Output-Octets' :
506
					case 'ChilliSpot-Max-Total-Octets' :
510
					case 'ChilliSpot-Max-Total-Octets' :
507
					case 'ChilliSpot-Bandwidth-Max-Up' :
511
					case 'ChilliSpot-Bandwidth-Max-Up' :
508
					case 'ChilliSpot-Bandwidth-Max-Down' :
512
					case 'ChilliSpot-Bandwidth-Max-Down' :
509
					case 'WISPr-Redirection-URL' :
513
					case 'WISPr-Redirection-URL' :
510
						echo "<td><select name=\"$oper_name\"><option $selected[$op_eq] value=\"=\">=</option></select></td>";
514
						echo "<td><select name=\"$oper_name\"><option $selected[$op_eq] value=\"=\">=</option></select></td>";
511
						break;
515
						break;
512
					default :
516
					default :
513
						print <<<EOM
517
						print <<<EOM
514
							<td>
518
							<td>
515
								<select name=\"$oper_name\">
519
								<select name=\"$oper_name\">
516
									<option $selected[$op_eq] value="=">=</option>
520
									<option $selected[$op_eq] value="=">=</option>
517
									<option $selected[$op_set] value=":=">:=</option>
521
									<option $selected[$op_set] value=":=">:=</option>
518
									<option $selected[$op_add] value="+=">+=</option>
522
									<option $selected[$op_add] value="+=">+=</option>
519
									<option $selected[$op_eq2] value="==">==</option>
523
									<option $selected[$op_eq2] value="==">==</option>
520
									<option $selected[$op_ne] value="!=">!=</option>
524
									<option $selected[$op_ne] value="!=">!=</option>
521
									<option $selected[$op_gt] value=">">&gt;</option>
525
									<option $selected[$op_gt] value=">">&gt;</option>
522
									<option $selected[$op_ge] value=">=">&gt;=</option>
526
									<option $selected[$op_ge] value=">=">&gt;=</option>
523
									<option $selected[$op_lt] value="<">&lt;</option>
527
									<option $selected[$op_lt] value="<">&lt;</option>
524
									<option $selected[$op_le] value="<=">&lt;=</option>
528
									<option $selected[$op_le] value="<=">&lt;=</option>
525
									<option $selected[$op_regeq] value="=~">=~</option>
529
									<option $selected[$op_regeq] value="=~">=~</option>
526
									<option $selected[$op_regne] value="!~">!~</option>
530
									<option $selected[$op_regne] value="!~">!~</option>
527
									<option $selected[$op_exst] value="=*">=*</option>
531
									<option $selected[$op_exst] value="=*">=*</option>
528
									<option $selected[$op_nexst] value="!*">!*</option>
532
									<option $selected[$op_nexst] value="!*">!*</option>
529
								</select>
533
								</select>
530
							</td>
534
							</td>
531
EOM;
535
EOM;
532
						break;
536
						break;
533
				}
537
				}
534
			} else {
538
			} else {
535
				print <<<EOM
539
				print <<<EOM
536
					<tr$advancedField>
540
					<tr$advancedField>
537
					<td class="etiquette" colspan="$colspan">
541
					<td class="etiquette" colspan="$colspan">
538
					<a href="$help_link" target="help" onclick="window.open('$help_link','help','width=600,height=350,toolbar=no,scrollbars=no,resizable=yes')" title="$l_click_for_help"><font color="blue">$desc</font></a>
542
					<a href="$help_link" target="help" onclick="window.open('$help_link','help','width=600,height=350,toolbar=no,scrollbars=no,resizable=yes')" title="$l_click_for_help"><font color="blue">$desc</font></a>
539
EOM;
543
EOM;
540
				switch ($key) {
544
				switch ($key) {
541
					case 'Simultaneous-Use' :
545
					case 'Simultaneous-Use' :
542
					case 'Max-All-Session' :
546
					case 'Max-All-Session' :
543
					case 'Max-Daily-Session' :
547
					case 'Max-Daily-Session' :
544
					case 'Max-Weekly-Session' :
548
					case 'Max-Weekly-Session' :
545
					case 'Max-Monthly-Session' :
549
					case 'Max-Monthly-Session' :
546
					case 'Login-Time' :
550
					case 'Login-Time' :
547
					case 'Expiration' :
551
					case 'Expiration' :
548
					case 'Filter-Id' :
552
					case 'Filter-Id' :
549
						echo "<input type=\"hidden\" name=\"$oper_name\" value=\":=\">";
553
						echo "<input type=\"hidden\" name=\"$oper_name\" value=\":=\">";
550
						break;
554
						break;
551
					case 'Session-Timeout' :
555
					case 'Session-Timeout' :
552
					case 'ChilliSpot-Max-Input-Octets' :
556
					case 'ChilliSpot-Max-Input-Octets' :
553
					case 'ChilliSpot-Max-Output-Octets' :
557
					case 'ChilliSpot-Max-Output-Octets' :
554
					case 'ChilliSpot-Max-Total-Octets' :
558
					case 'ChilliSpot-Max-Total-Octets' :
555
					case 'ChilliSpot-Bandwidth-Max-Up' :
559
					case 'ChilliSpot-Bandwidth-Max-Up' :
556
					case 'ChilliSpot-Bandwidth-Max-Down' :
560
					case 'ChilliSpot-Bandwidth-Max-Down' :
557
					case 'WISPr-Redirection-URL' :
561
					case 'WISPr-Redirection-URL' :
558
						echo "<input type=\"hidden\" name=\"$oper_name\" value=\"=\">";
562
						echo "<input type=\"hidden\" name=\"$oper_name\" value=\"=\">";
559
						break;
563
						break;
560
					default :
564
					default :
561
						print <<<EOM
565
						print <<<EOM
562
							<select name=\"$oper_name\">
566
							<select name=\"$oper_name\">
563
								<option $selected[$op_eq] value="=">=</option>
567
								<option $selected[$op_eq] value="=">=</option>
564
								<option $selected[$op_set] value=":=">:=</option>
568
								<option $selected[$op_set] value=":=">:=</option>
565
								<option $selected[$op_add] value="+=">+=</option>
569
								<option $selected[$op_add] value="+=">+=</option>
566
								<option $selected[$op_eq2] value="==">==</option>
570
								<option $selected[$op_eq2] value="==">==</option>
567
								<option $selected[$op_ne] value="!=">!=</option>
571
								<option $selected[$op_ne] value="!=">!=</option>
568
								<option $selected[$op_gt] value=">">&gt;</option>
572
								<option $selected[$op_gt] value=">">&gt;</option>
569
								<option $selected[$op_ge] value=">=">&gt;=</option>
573
								<option $selected[$op_ge] value=">=">&gt;=</option>
570
								<option $selected[$op_lt] value="<">&lt;</option>
574
								<option $selected[$op_lt] value="<">&lt;</option>
571
								<option $selected[$op_le] value="<=">&lt;=</option>
575
								<option $selected[$op_le] value="<=">&lt;=</option>
572
								<option $selected[$op_regeq] value="=~">=~</option>
576
								<option $selected[$op_regeq] value="=~">=~</option>
573
								<option $selected[$op_regne] value="!~">!~</option>
577
								<option $selected[$op_regne] value="!~">!~</option>
574
								<option $selected[$op_exst] value="=*">=*</option>
578
								<option $selected[$op_exst] value="=*">=*</option>
575
								<option $selected[$op_nexst] value="!*">!*</option>
579
								<option $selected[$op_nexst] value="!*">!*</option>
576
							</select>
580
							</select>
577
EOM;
581
EOM;
578
						break;
582
						break;
579
				}
583
				}
580
				echo '</td>';
584
				echo '</td>';
581
			}
585
			}
582
 
586
 
583
			if (isset($member_groups) && $user_type !== 'group') {
587
			if (isset($member_groups) && $user_type !== 'group') {
584
				echo '<td bgcolor="#BEBEBE">';
588
				echo '<td bgcolor="#BEBEBE">';
585
				switch ($name){
589
				switch ($name){
586
					case 'Simultaneous-Use' :
590
					case 'Simultaneous-Use' :
587
						echo "$grp_simuse";
591
						echo "$grp_simuse";
588
						break;
592
						break;
589
					case 'Login-Time' :
593
					case 'Login-Time' :
590
						echo "$grp_logtime";
594
						echo "$grp_logtime";
591
						break;
595
						break;
592
					case 'Expiration' :
596
					case 'Expiration' :
593
						echo "$grp_exp";
597
						echo "$grp_exp";
594
						break;
598
						break;
595
					case 'Max-All-Session' :
599
					case 'Max-All-Session' :
596
						echo "$grp_maxall";
600
						echo "$grp_maxall";
597
						break;
601
						break;
598
					case 'Session-Timeout' :
602
					case 'Session-Timeout' :
599
						echo "$grp_sesstim";
603
						echo "$grp_sesstim";
600
						break;
604
						break;
601
					case 'Max-Daily-Session' :
605
					case 'Max-Daily-Session' :
602
						echo "$grp_maxday";
606
						echo "$grp_maxday";
603
						break;
607
						break;
604
					case 'Max-Weekly-Session' :
608
					case 'Max-Weekly-Session' :
605
						echo "$grp_maxweek";
609
						echo "$grp_maxweek";
606
						break;
610
						break;
607
					case 'Max-Monthly-Session' :
611
					case 'Max-Monthly-Session' :
608
						echo "$grp_maxmonth";
612
						echo "$grp_maxmonth";
609
						break;
613
						break;
610
					case 'ChilliSpot-Max-Input-Octets' :
614
					case 'ChilliSpot-Max-Input-Octets' :
611
						echo "$grp_maxio";
615
						echo "$grp_maxio";
612
						break;
616
						break;
613
					case 'ChilliSpot-Max-Output-Octets' :
617
					case 'ChilliSpot-Max-Output-Octets' :
614
						echo "$grp_maxoo";
618
						echo "$grp_maxoo";
615
						break;
619
						break;
616
					case 'ChilliSpot-Max-Total-Octets' :
620
					case 'ChilliSpot-Max-Total-Octets' :
617
						echo "$grp_maxto";
621
						echo "$grp_maxto";
618
						break;
622
						break;
619
					case 'ChilliSpot-Bandwidth-Max-Up' :
623
					case 'ChilliSpot-Bandwidth-Max-Up' :
620
						echo "$grp_bwup";
624
						echo "$grp_bwup";
621
						break;
625
						break;
622
					case 'ChilliSpot-Bandwidth-Max-Down' :
626
					case 'ChilliSpot-Bandwidth-Max-Down' :
623
						echo "$grp_bwdown";
627
						echo "$grp_bwdown";
624
						break;
628
						break;
625
					case 'WISPr-Redirection-URL' :
629
					case 'WISPr-Redirection-URL' :
626
						echo "$grp_redir";
630
						echo "$grp_redir";
627
						break;
631
						break;
628
					case 'Filter-Id' :
632
					case 'Filter-Id' :
629
						echo "$grp_filter";
633
						echo "$grp_filter";
630
						break;
634
						break;
631
					default :
635
					default :
632
						break;
636
						break;
633
				}
637
				}
634
				echo '</td>';
638
				echo '</td>';
635
			}
639
			}
636
 
640
 
637
			echo '<td>';
641
			echo '<td>';
638
			switch ($name){
642
			switch ($name){
639
				/*
643
				/*
640
				Choix de l'unité jour, heures, minutes ou secondes
644
				Choix de l'unité jour, heures, minutes ou secondes
641
				pour les durées limites max, de session,de journée et de mois
645
				pour les durées limites max, de session,de journée et de mois
642
				*/
646
				*/
643
				case 'Session-Timeout' :
647
				case 'Session-Timeout' :
644
				case 'Max-Daily-Session' :
648
				case 'Max-Daily-Session' :
645
					/*valeur d'origine de durée limite */
649
					/*valeur d'origine de durée limite */
646
					echo"<input type=\"text\" name=\"$name\" onfocus=\"this.value=''\" value=\"$val\" size=10>";
650
					echo"<input type=\"text\" name=\"$name\" onfocus=\"this.value=''\" value=\"$val\" size=10>";
647
					/* Choix d'unité*/
651
					/* Choix d'unité*/
648
					echo" <select name=\"$name"."_opt"."\" onchange=\"temps(this,'$name','edituser')\">
652
					echo" <select name=\"$name"."_opt"."\" onchange=\"temps(this,'$name','edituser')\">
649
							<option value=\"s\" selected>s</option>
653
							<option value=\"s\" selected>s</option>
650
							<option value=\"m\" >m</option>
654
							<option value=\"m\" >m</option>
651
							<option value=\"H\" >H</option>
655
							<option value=\"H\" >H</option>
652
						</select>";
656
						</select>";
653
					break;
657
					break;
654
				case 'Max-Monthly-Session' :
658
				case 'Max-Monthly-Session' :
655
				case 'Max-All-Session' :
659
				case 'Max-All-Session' :
656
					/*valeur d'origine de durée limite */
660
					/*valeur d'origine de durée limite */
657
					echo"<input type=\"text\" name=\"$name\" onfocus=\"this.value=''\" value=\"$val\" size=10>";
661
					echo"<input type=\"text\" name=\"$name\" onfocus=\"this.value=''\" value=\"$val\" size=10>";
658
					/* Choix d'unité*/
662
					/* Choix d'unité*/
659
					echo" <select name=\"$name"."_opt"."\" onchange=\"temps(this,'$name','edituser')\">
663
					echo" <select name=\"$name"."_opt"."\" onchange=\"temps(this,'$name','edituser')\">
660
							<option value=\"s\" selected>s</option>
664
							<option value=\"s\" selected>s</option>
661
							<option value=\"m\" >m</option>
665
							<option value=\"m\" >m</option>
662
							<option value=\"H\" >H</option>
666
							<option value=\"H\" >H</option>
663
							<option value=\"J\" >J</option>
667
							<option value=\"J\" >J</option>
664
						</select>";
668
						</select>";
665
					break;
669
					break;
666
				case 'Expiration' :
670
				case 'Expiration' :
667
					/*Ajout du calendrier pour choisir la date*/
671
					/*Ajout du calendrier pour choisir la date*/
668
					echo"<input id=\"popup_container\" type=\"text\" name=\"$name\" value=\"$val\" size=\"20\">";
672
					echo"<input id=\"popup_container\" type=\"text\" name=\"$name\" value=\"$val\" size=\"20\">";
669
					break;
673
					break;
670
				case 'Filter-Id' :
674
				case 'Filter-Id' :
-
 
675
					if (empty($val)) {
-
 
676
						$val = '00000000'; // Set no filters if value is not set
-
 
677
					}
-
 
678
 
671
					if ($val[5] === '1') {
679
					if ($val[5] === '1') {
672
						$selected = 'havp_wl';
680
						$selected = 'havp_wl';
673
					} else if ($val[6] === '1') {
681
					} else if ($val[6] === '1') {
674
						$selected = 'havp_bl';
682
						$selected = 'havp_bl';
675
					} else if ($val[7] === '1') {
683
					} else if ($val[7] === '1') {
676
						$selected = 'havp';
684
						$selected = 'havp';
677
					} else {
685
					} else {
678
						$selected = 'not_filtered';
686
						$selected = 'not_filtered';
679
					}
687
					}
680
					echo "<select name=\"Filter-Id\">";
688
					echo "<select name=\"Filter-Id\">";
681
					echo "<option value=\"\"".(($selected === 'not_filtered') ? ' selected' : '').">$l_filtering_none</option>";
689
					echo "<option value=\"\"".(($selected === 'not_filtered') ? ' selected' : '').">$l_filtering_none</option>";
682
					echo "<option value=\"00000001\"".(($selected === 'havp') ? ' selected' : '').">$l_filtering_havp</option>";
690
					echo "<option value=\"00000001\"".(($selected === 'havp') ? ' selected' : '').">$l_filtering_havp</option>";
683
					echo "<option value=\"00000011\"".(($selected === 'havp_bl') ? ' selected' : '').">$l_filtering_havp_bl</option>";
691
					echo "<option value=\"00000011\"".(($selected === 'havp_bl') ? ' selected' : '').">$l_filtering_havp_bl</option>";
684
					echo "<option value=\"00000101\"".(($selected === 'havp_wl') ? ' selected' : '').">$l_filtering_havp_wl</option>";
692
					echo "<option value=\"00000101\"".(($selected === 'havp_wl') ? ' selected' : '').">$l_filtering_havp_wl</option>";
685
					echo "</select>";
693
					echo "</select>";
686
					break;
694
					break;
687
				default :
695
				default :
688
					echo "<input type=\"text\" name=\"$name\" value=\"$val\" size=\"20\">";
696
					echo "<input type=\"text\" name=\"$name\" value=\"$val\" size=\"20\">";
689
					break;
697
					break;
690
			}
698
			}
691
			echo '</td>';
699
			echo '</td>';
692
		}
700
		}
693
	}
701
	}
694
	
702
	
695
/*protocole filter*/
703
/*protocole filter*/
696
print <<<EOM
704
print <<<EOM
697
<tr>
705
<tr>
698
<td class="etiquette" colspan="$colspan">
706
<td class="etiquette" colspan="$colspan">
699
	<a href="help/protocols_help.html" target=help onclick="window.open('help/protocols_help.html','help','width=600,height=250,toolbar=no,scrollbars=no,resizable=yes')" title="$l_click_for_help"><font color="blue">$l_proto</font></a>
707
	<a href="help/protocols_help.html" target=help onclick="window.open('help/protocols_help.html','help','width=600,height=250,toolbar=no,scrollbars=no,resizable=yes')" title="$l_click_for_help"><font color="blue">$l_proto</font></a>
700
</td>
708
</td>
701
EOM;
709
EOM;
702
if(isset($member_groups) && $user_type != 'group') {
710
if(isset($member_groups) && $user_type != 'group') {
703
	echo "<td bgcolor=\"#BEBEBE\">$grp_proto</td>";
711
	echo "<td bgcolor=\"#BEBEBE\">$grp_proto</td>";
704
}
712
}
705
 
713
 
706
if ($val[2] === '1') {
714
if ($val[2] === '1') {
707
	$selected = 'proto_3';
715
	$selected = 'proto_3';
708
} else if ($val[1] === '1') {
716
} else if ($val[1] === '1') {
709
	$selected = 'proto_2';
717
	$selected = 'proto_2';
710
} else if ($val[0] === '1') {
718
} else if ($val[0] === '1') {
711
	$selected = 'proto_1';
719
	$selected = 'proto_1';
712
} else {
720
} else {
713
	$selected = 'proto_0';
721
	$selected = 'proto_0';
714
}
722
}
715
echo "<td width=20>";
723
echo "<td width=20>";
716
echo "<select name='Filter-Proto'>
724
echo "<select name='Filter-Proto'>
717
	<option value=\"00000000\"".(($selected === 'proto_0') ? ' selected' : '').">$l_proto_0</option>
725
	<option value=\"00000000\"".(($selected === 'proto_0') ? ' selected' : '').">$l_proto_0</option>
718
	<option value=\"10000000\"".(($selected === 'proto_1') ? ' selected' : '').">$l_proto_1</option>
726
	<option value=\"10000000\"".(($selected === 'proto_1') ? ' selected' : '').">$l_proto_1</option>
719
	<option value=\"01000000\"".(($selected === 'proto_2') ? ' selected' : '').">$l_proto_2</option>
727
	<option value=\"01000000\"".(($selected === 'proto_2') ? ' selected' : '').">$l_proto_2</option>
720
	<option value=\"00100000\"".(($selected === 'proto_3') ? ' selected' : '').">$l_proto_3</option>
728
	<option value=\"00100000\"".(($selected === 'proto_3') ? ' selected' : '').">$l_proto_3</option>
721
	</select></td>
729
	</select></td>
722
</tr>";
730
</tr>";
723
	
731
	
724
	
732
	
725
if ($user_type != 'group') {
733
if ($user_type != 'group') {
726
	echo <<<EOM
734
	echo <<<EOM
727
	<tr>
735
	<tr>
728
	<td align=right colspan="$colspan" bgcolor="#d0ddb0">
736
	<td align=right colspan="$colspan" bgcolor="#d0ddb0">
729
	$l_group_member<br><font size=-2><i>($l_main_group)</i></font>
737
	$l_group_member<br><font size=-2><i>($l_main_group)</i></font>
730
	</td>
738
	</td>
731
EOM;
739
EOM;
732
if (isset($member_groups)) {
740
if (isset($member_groups)) {
733
	echo '<td colspan="2">';
741
	echo '<td colspan="2">';
734
} else {
742
} else {
735
	echo '<td>';
743
	echo '<td>';
736
}
744
}
737
 
745
 
738
 
746
 
739
	if (isset($existing_groups)){
747
	if (isset($existing_groups)){
740
		echo '<select size="5" name="edited_groups[]"  OnChange="this.form.group_change.value=1">';
748
		echo '<select size="5" name="edited_groups[]"  OnChange="this.form.group_change.value=1">';
741
		if ($config['sql_show_all_groups'] == 'true') {
749
		if ($config['sql_show_all_groups'] == 'true') {
742
			foreach ($existing_groups as $group => $count) {
750
			foreach ($existing_groups as $group => $count) {
743
				if (isset($member_groups[$group]) && ($member_groups[$group] == $group))
751
				if (isset($member_groups[$group]) && ($member_groups[$group] == $group))
744
					echo "<option selected value=\"$group\">$group\n";
752
					echo "<option selected value=\"$group\">$group\n";
745
				else if(isset($member_groups[0]) && ($member_groups[0] == $group))
753
				else if(isset($member_groups[0]) && ($member_groups[0] == $group))
746
					echo "<option selected value=\"$group\">$group\n";
754
					echo "<option selected value=\"$group\">$group\n";
747
				else
755
				else
748
					echo "<option value=\"$group\">$group\n";
756
					echo "<option value=\"$group\">$group\n";
749
			}
757
			}
750
		} else {
758
		} else {
751
			foreach ($member_groups as $group)
759
			foreach ($member_groups as $group)
752
				echo "<option value=\"$group\">$group\n";
760
				echo "<option value=\"$group\">$group\n";
753
		}
761
		}
754
		echo "</select>";
762
		echo "</select>";
755
	}
763
	}
756
	else{
764
	else{
757
		echo "<i>$l_no_group</i>";
765
		echo "<i>$l_no_group</i>";
758
	}
766
	}
759
	
767
	
760
	echo "</td></tr>";
768
	echo "</td></tr>";
761
}
769
}
762
echo "</table><br>";
770
echo "</table><br>";
763
echo "<input type=submit class=button value=$l_change OnClick=\"this.form.change.value=1\">";
771
echo "<input type=submit class=button value=$l_change OnClick=\"this.form.change.value=1\">";
764
echo "<button type=\"button\" id =\"show-advanced-fields\" onclick=\"showAdvancedFields(true)\" style=\"float: right;\">$l_simple_menu</button>";
772
echo "<button type=\"button\" id =\"show-advanced-fields\" onclick=\"showAdvancedFields(true)\" style=\"float: right;\">$l_simple_menu</button>";
765
echo "<button type=\"button\" id =\"hide-advanced-fields\" onclick=\"showAdvancedFields(false)\" style=\"float: right; display: none;\">$l_advanced_menu</button>";
773
echo "<button type=\"button\" id =\"hide-advanced-fields\" onclick=\"showAdvancedFields(false)\" style=\"float: right; display: none;\">$l_advanced_menu</button>";
766
//if ($user_type != 'group'){
774
//if ($user_type != 'group'){
767
//	echo <<<EOM
775
//	echo <<<EOM
768
//<br><br>
776
//<br><br>
769
//<input type=submit class=button value="Add to Badusers" OnClick="this.form.badusers.value=1">
777
//<input type=submit class=button value="Add to Badusers" OnClick="this.form.badusers.value=1">
770
//<a href="help/badusers_help.html" target=bu_help onclick=window.open("help/badusers_help.html","bu_help","width=600,height=210,toolbar=no,scrollbars=no,resizable=yes") title="BADUSERS Help Page"><font color="blue">&lt;--Help</font></a>
778
//<a href="help/badusers_help.html" target=bu_help onclick=window.open("help/badusers_help.html","bu_help","width=600,height=210,toolbar=no,scrollbars=no,resizable=yes") title="BADUSERS Help Page"><font color="blue">&lt;--Help</font></a>
771
//EOM;
779
//EOM;
772
//}
780
//}
773
?>
781
?>
774
</form>
782
</form>
775
</td></tr>
783
</td></tr>
776
</table>
784
</table>
777
</td></tr>
785
</td></tr>
778
</table>
786
</table>
779
</center>
787
</center>
780
</td></tr>
788
</td></tr>
781
</TABLE>
789
</TABLE>
782
</body>
790
</body>
783
</html>
791
</html>
784
 
792