Subversion Repositories ALCASAR

Rev

Rev 683 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log

Rev Author Line No. Line
514 richard 1
<?php
2
// ticket d'impression (thank's to Geoffroy MUSITELLI)
3
//gestion de la langue
4
$origine='user_new';
5
if (is_file("../lib/langues.php"))
6
	include("../lib/langues.php");
7
 
8
require('/etc/freeradius-web/config.php');
9
if ($show == 1){
10
	header("Location: user_admin.php?login=$login");
11
	exit;
12
}
13
require('../lib/attrshow.php');
14
require('../lib/defaults.php');
15
 
16
if ($config[general_lib_type] == 'sql' && $config[sql_use_operators] == 'true'){
17
	$colspan=2;
18
	$show_ops=1;
19
}else{
20
	$show_ops = 0;
21
	$colspan=1;
22
}
23
echo "<html><head><title>$l_title</title>";
24
?>
25
 
26
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo $config[general_charset]?>">
27
<link rel="stylesheet" href="/css/style.css">
28
<link rel="stylesheet" type="text/css" href="/css/epoch_styles.css" />
29
<script type="text/javascript" src="/js/epoch_classes.js"></script>
30
<script type="text/javascript" src="/js/fonctions.js"></script>
31
<script language="javascript" type="text/javascript">
32
 
33
/*Insertion du calendrier */
34
	var dp_cal;      
35
window.onload = function () {
36
	dp_cal  = new Epoch('epoch_popup','popup',document.getElementById('popup_container'));
37
};
38
/*Fin calendrier*/
39
 
40
</script>
41
</head>
42
<body>
616 richard 43
<TABLE width="100%" border="0" cellspacing="0" cellpadding="0">
44
	<tr><th><?php echo"$l_frame_top"; ?></th></tr>
45
	<tr bgcolor="#FFCC66"><td><img src="/images/pix.gif" width="1" height="2"></td></tr>
514 richard 46
</TABLE>
47
<TABLE width="100%" border=0 cellspacing=0 cellpadding=1>
48
	<tr bgcolor="#666666"><td>
49
	<TABLE width="100%" border=0 cellspacing=0 cellpadding=2>
50
		<tr><td valign="middle" align="left">
51
<center>
52
<table border=0 width=550 cellpadding=1 cellspacing=1>
53
<tr valign=top>
54
<td width=340></td>
55
<td bgcolor="black" width=200>
56
	<table border=0 width=100% cellpadding=2 cellspacing=0>
57
	<tr bgcolor="#907030" align=right valign=top><th>
616 richard 58
	<font color="white"><?php echo "$l_frame"; ?></font>
514 richard 59
	</th></tr>
60
	</table>
61
</td></tr>
62
<tr bgcolor="black" valign=top><td colspan=2>
63
	<table border=0 width=100% cellpadding=12 cellspacing=0 bgcolor="#ffffd0" valign=top>
64
	<tr><td>   
65
<?php
66
function sec_imp($time)
67
	/* Formatage des secondes avant l'impression */
68
    {
69
	$heure=0;$minute=0;$seconde=0;
70
	$heure = floor($time/3600);
71
    	$reste = $time%3600;
72
    	if ($heure!=0) $result = $heure.' H ';
73
	$minute = floor($reste/60);
74
    	if ($minute!=0) $result = $result.$minute.' min ';
75
	$seconde = $reste%60;
76
    	if ($seconde!=0) $result = $result.$seconde.' s ';
77
   	return $result;
78
    }
79
 
80
if ($create == 1){
81
	if (is_file("../lib/$config[general_lib_type]/user_info.php"))
82
		include("../lib/$config[general_lib_type]/user_info.php");
83
	if ($user_exists != "no"){
84
		echo <<<EOM
85
<b><i>$login</i> $l_user_exist</b>
86
EOM;
87
	}
88
	else{
89
		if (is_file("../lib/$config[general_lib_type]/create_user.php"))
90
			include("../lib/$config[general_lib_type]/create_user.php");
91
		/*  Petit traitement pré-impression pour la lisibilité */
92
		/* Gestion des cas sans limitation */
93
		if ($sto_imp=='' && $mds_imp=='' && $mms_imp==''){
94
			/*Recherche de l'existence d'un groupe et récupération des attributs le cas échéant*/
95
			if ($group!=''){
96
				$saved_login = $login;
97
				$login = $group;
98
				if (is_file("../lib/sql/group_info.php"))
99
					include("../lib/sql/group_info.php");
100
				$login = $saved_login;
101
				/* formatage des secondes sous le format H min s*/
102
				$sto_imp=sec_imp($sto_imp);
103
				$mds_imp=sec_imp($mds_imp);
683 stephane 104
				$mms_imp=sec_imp($mms_imp);
514 richard 105
			} else {
106
				/*Si les valeurs de durée sont vide remplissage avec la valeur 'Illimitée'*/
107
				$sto_imp=$v_illimit;
108
				$mds_imp=$v_illimit;
109
				$mms_imp=$v_illimit;
110
			}
111
		}else{
112
		/* formatage des secondes sous le format H min s*/
113
		$sto_imp=sec_imp($sto_imp);
114
		$mds_imp=sec_imp($mds_imp);
115
		$mms_imp=sec_imp($mms_imp);
116
		}
117
		/*Formatage de la date afin d'être lisible dans toute les langues 'jj mm yyyy'*/
584 richard 118
		if ($Expiration!=''){
119
			$Expiration=date("d - m - Y",strtotime($Expiration));
120
		} else {
121
			$Expiration=$v_illimit;
122
		}
514 richard 123
		//Appel du ticket d'impression , passage en paramètres des étiquettes et des valeurs à afficher
124
		echo'	<form name="impression" method="post" action="ticket_user.php" target=_blank>
125
					<input type="hidden" name="l_title_imp" value="'.$l_title_imp.'">
126
					<input type="hidden" name="l_login_imp" value="'.$l_login_imp.'">
886 stephane 127
					<input type="hidden" name="l_password_imp" value="'.$l_password_imp.'">
128
					<input type="hidden" name="l_max_all_session_imp" value="'.$l_max_all_session_imp.'">
514 richard 129
					<input type="hidden" name="l_session_timeout_imp" value="'.$l_session_timeout_imp.'">
130
					<input type="hidden" name="l_max_daily_session_imp" value="'.$l_max_daily_session_imp.'">
131
					<input type="hidden" name="l_max_monthly_session_imp" value="'.$l_max_monthly_session_imp.'"> 
132
					<input type="hidden" name="l_expiration_imp" value="'.$l_expiration_imp.'">
133
					<input type="hidden" name="log_imp" value="'.$login.'">
134
					<input type="hidden" name="passwd_imp" value="'.$passwd_imp.'">
135
					<input type="hidden" name="sto_imp" value="'.$sto_imp.'">
136
					<input type="hidden" name="mds_imp" value="'.$mds_imp.'">
137
					<input type="hidden" name="mms_imp" value="'.$mms_imp.'">
138
					<input type="hidden" name="exp_imp" value="'.$Expiration.'">
139
				</form>';
140
		echo'	<script type="text/javascript"> document.forms["impression"].submit();</script>';
141
		//fin ticket impression
142
		require("../lib/defaults.php");
143
		if (is_file("../lib/$config[general_lib_type]/user_info.php"))
144
			include("../lib/$config[general_lib_type]/user_info.php");
145
	}
146
}
147
?>
148
   <form name="newuser" method=post>
149
      <input type=hidden name=create value="0">
150
      <input type=hidden name=show value="0">
151
	  <input type=hidden name=langue_imp value='fr'>
152
	<table border=1 bordercolordark=#ffffe0 bordercolorlight=#000000 width=100% cellpadding=2 cellspacing=0 bgcolor="#ffffe0" valign=top>
153
<?php
154
	echo <<<EOM
155
	<tr>
156
		<td class="etiquette" colspan=$colspan>
157
		$l_login
158
		</td><td>
159
		<input type=text name="login" value="$login" size=35>
160
		</td>
161
	</tr>
162
	<tr>
163
		<td class="etiquette" colspan=$colspan>
164
		$l_password
165
		</td><td>
166
		<input type=password name="passwd" size=35>
167
		<br><input type="button" value="$l_passwd_gen" onclick="password(8,'newuser')">
168
		<input type="text" value="" name="pwdgene" size=20 readonly>
169
		</td>
170
	</tr>
171
EOM;
172
	if ($config[general_lib_type] == 'sql'){
173
		if (isset($member_groups))
174
			$selected[$member_groups[0]] = 'selected';
175
		echo <<<EOM
176
	<tr>
177
		<td class="etiquette" colspan=$colspan>
178
		$l_group
179
		</td><td>
180
EOM;
181
		include_once("../lib/$config[general_lib_type]/group_info.php");
182
		if (isset($existing_groups)){
183
			echo "<select name=\"Fgroup\">";
184
			echo "<option value=\"\" selected>";
185
			foreach ($member_groups as $group)
186
				echo "<option value=\"$group\">$group\n";
187
			echo " </select>";
188
			}
189
		else echo "$l_group_empty";
190
	echo "</td></tr>";
191
	}
192
	if ($config[general_lib_type] == 'ldap' ||
193
	($config[general_lib_type] == 'sql' && $config[sql_use_user_info_table] == 'true')){
194
		echo <<<EOM
195
	<tr>
196
		<td class="etiquette" colspan=$colspan>
197
		$l_name
198
		</td><td>
199
		<input type=text name="Fcn" value="$cn" size=35>
200
		</td>
201
	</tr>
202
	<tr>
203
		<td class="etiquette" colspan=$colspan>
204
		$l_email
205
		</td><td>
206
		<input type=text name="Fmail" value="$mail" size=35>
207
		</td>
208
	</tr>
209
EOM;
210
//  Déplacer la ligne "EOM;" et décommenter en fonction des champs à afficher
211
//	<tr>
212
//		<td class="etiquette" colspan=$colspan>
213
//		Service
214
//		</td><td>
215
//		<input type=text name="Fou" value="$ou" size=35>
216
//		</td>
217
//	</tr>
218
//	<tr>
219
//		<td class="etiquette" colspan=$colspan>
220
//		Nro TPH personnel
221
//		</td><td>
222
//		<input type=text name="Fhomephone" value="$homephone" size=35>
223
//		</td>
224
//	</tr>
225
//	<tr>
226
//		<td class="etiquette" colspan=$colspan>
227
//		Nro TPH bureau
228
//		</td><td>
229
//		<input type=text name="Ftelephonenumber" value="$telephonenumber" size=35>
230
//		</td>
231
//	</tr>
232
//	<tr>
233
//		<td class="etiquette" colspan=$colspan>
234
//		Nro TPH mobile
235
//		</td><td>
236
//		<input type=text name="Fmobile" value="$mobile" size=35>
237
//		</td>
238
//	</tr> 
239
	}
240
	foreach($show_attrs as $key => $desc){
241
		$name = $attrmap["$key"];
242
		if ($name == 'none')
243
			continue;
244
		$oper_name = $name . '_op';
245
		$val = ($item_vals["$key"][0] != "") ? $item_vals["$key"][0] : $default_vals["$key"][0];
246
		/*
247
		Gestion d'un mode simple ou d'un mode avancé
248
		Définition du mode avancé: les attributs concernant la gestion des octets, de la bande passante
249
		*/
250
		switch ($key)
251
		{
252
			case 'ChilliSpot-Max-Input-Octets' :
253
			case 'ChilliSpot-Max-Output-Octets' :
254
			case 'ChilliSpot-Max-Total-Octets' :
255
			case 'ChilliSpot-Bandwidth-Max-Up' :
256
			case 'ChilliSpot-Bandwidth-Max-Down' :
257
			case 'WISPr-Redirection-URL' :
258
			case 'Login-Time' : 
259
			case 'Max-Monthly-Session' :
260
				$advanced=0; //<-- Valeur à mettre à '1' pour avoir toutes les fonctionnalités
261
				break;
262
			default:
263
				$advanced=1;
264
				break;
265
		}
266
		if ($show_ops && $advanced){
267
		print <<<EOM
268
			<tr>
269
				<td class="etiquette" colspan=$colspan>
270
					$desc
271
				</td>
272
EOM;
273
			switch ($key){
274
				case 'Simultaneous-Use' : 
275
				case 'Expiration' :
886 stephane 276
				case 'Max-All-Session' :
514 richard 277
				case 'Max-Daily-Session' :
278
				case 'Max-Weekly-Session' :
279
					echo "<input type=\"hidden\" name=$oper_name value=\":=\">";
280
					break;
281
				case 'Session-Timeout' :
282
				case 'ChilliSpot-Max-Input-Octets' :
283
				case 'ChilliSpot-Max-Output-Octets' :
284
				case 'ChilliSpot-Max-Total-Octets' :
285
				case 'ChilliSpot-Bandwidth-Max-Up' :
286
				case 'ChilliSpot-Bandwidth-Max-Down' :
287
				case 'WISPr-Redirection-URL' :
288
					echo "<input type=\"hidden\" name=$oper_name value=\"=\">";
289
					break;
290
				default :
291
					print <<<EOM
292
					<td>
293
						<select name=$oper_name>
294
							<option $selected[$op_eq] value="=">=
295
							<option $selected[$op_set] value=":=">:=
296
							<option $selected[$op_add] value="+=">+=
297
							<option $selected[$op_eq2] value="==">==
298
							<option $selected[$op_ne] value="!=">!=
299
							<option $selected[$op_gt] value=">">&gt;
300
							<option $selected[$op_ge] value=">=">&gt;=
301
							<option $selected[$op_lt] value="<">&lt;
302
							<option $selected[$op_le] value="<=">&lt;=
303
							<option $selected[$op_regeq] value="=~">=~
304
							<option $selected[$op_regne] value="!~">!~
305
							<option $selected[$op_exst] value="=*">=*
306
							<option $selected[$op_nexst] value="!*">!*
307
						</select>
308
					</td>
309
EOM;
310
					break;
311
			}
312
		}
313
/* 
314
Ajout du pré-remplissage de cellule
315
du choix d'unité (pour les durées limites de session,journée et de mois) 
316
et d'un calendrier pour la date d'expiration
317
Sauf dans le cas de la visualisation
318
*/
319
		if ($advanced){echo "<td>";}
320
		if ($create==0 && $advanced){
321
			switch ($name){
322
				case 'Simultaneous-Use' :
323
					/*Pré-remplissage avec la valeur '1' pour empécher plusieurs connexions silmutanées*/
324
					$val=1;//<--cette valeur correspond au nombre de session simultanée en commentant cette ligne la valeur n'est plus pré-remplie
325
					echo"<input type=text name=\"$name\" value=\"$val\" size=35>";
326
					break;
327
				/*
328
				Choix de l'unité heures, minutes ou secondes 
329
				pour les durées limites de session,journée et de mois	
330
				*/	
331
				case 'Session-Timeout' :
886 stephane 332
				case 'Max-All-Session' :
514 richard 333
				case 'Max-Daily-Session' :
334
				case 'Max-Monthly-Session' :
335
					/*valeur d'origine de durée limite */
336
					echo"<input type=text name=\"$name\" onfocus=\"this.value=''\" value=\"$val\" size=28>";
337
					/* Choix d'unité*/
338
					echo" <select name=\"$name"."_opt"."\" onchange=\"temps(this,'$name','newuser')\">
339
							<option value=\"s\" selected>s</option>
340
							<option value=\"m\" >m</option>
341
							<option value=\"H\" >H</option>
342
						</select>";
343
					break;
344
				case 'Expiration' :
345
					/*Pré-remplissage avec la date du lendemain*/
346
					$val=date("d F Y",strtotime("+1 day"));//<--en commentant cette ligne la valeur n'est plus pré-remplie
347
					/*Ajout du calendrier pour choisir la date*/
348
					echo"<input id=\"popup_container\" type=text name=\"$name\" value=\"$val\" size=35>";
349
					break;
350
				default :
351
					if ($advanced) echo"<input type=text name=\"$name\" value=\"$val\" size=35>";
352
					break;
353
			}
354
		}else{
355
		/*Pas de gestion de remplissage lors de la visualisation*/
356
			if ($advanced) echo"<input type=text name=\"$name\" value=\"$val\" size=35>";
357
 
358
/*fin Ajout*/
359
		}
360
	}
361
if (create==0){
362
	print <<<EOM
363
	<tr>
364
		<td class="etiquette" colspan=$colspan>
365
			$l_lang_ticket
366
		</td>
367
		<td width=35>
368
EOM;
369
/*Choix de la langue du ticket d'impression*/
370
	echo" <select name=\"$langue_imp\" onchange=\"lang_imp(this,'newuser')\">
371
			<option value=\"fr\" selected>Fran&ccedil;ais</option>
372
			<option value=\"en\" >English</option>
373
			<option value=\"nl\" >Nederlandse</option>
374
			<option value=\"de\" >Deutsch</option>
375
			<option value=\"es\" >Espa&ntilde;ol</option>
376
			<option value=\"it\" >Italiano</option>
377
		</select></td></tr>";	
378
	}
379
echo "</table><BR>";
380
if ($create == 1)
381
	echo "<input type=submit class=button value=\"Afficher le profil de l'utilisateur\" OnClick=\"this.form.show.value=1\">";
382
	else{
383
	echo "<input type=submit class=button value=\"Cr&eacute;er\" OnClick=\"return formControl('newuser');\">";
384
	}
385
?>
386
</form>
387
 
388
	</td></tr>
389
</table>
390
</tr>
391
</table>
392
</TD></TR>
393
</TABLE>
394
</td></tr>
395
</TABLE>
396
</body>
397
</html>