Subversion Repositories ALCASAR

Rev

Rev 2319 | Rev 2340 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log

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