Subversion Repositories ALCASAR

Rev

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

Rev Author Line No. Line
324 richard 1
<?php
2
require('/etc/freeradius-web/config.php');
597 richard 3
if (is_file("../lib/sql/drivers/$config[sql_type]/functions.php"))
4
	include_once("../lib/sql/drivers/$config[sql_type]/functions.php");
5
else{
6
	echo <<<EOM
7
<title>Fermeture des sessions ouvertes pour l'utilisateur $login</title>
8
<meta http-equiv="Content-Type" content="text/html; charset=$config[general_charset]">
9
<link rel="stylesheet" href="style.css">
10
</head>
11
<body>
12
<center>
13
<b>Could not include SQL library functions. Aborting</b>
14
</body>
15
</html>
16
EOM;
17
        exit();
18
}
19
 
324 richard 20
echo <<<EOM
21
<html>
22
<head>
23
<title>Fermeture des sessions ouvertes pour l'usager : $login</title>
24
<meta http-equiv="Content-Type" content="text/html; charset=$config[general_charset]">
25
<link rel="stylesheet" href="/css/style.css">
26
</head>
27
<body>
28
<TABLE width="100%" border="0" cellspacing="0" cellpadding="0">
29
	<tr><th>Gestion des usagers</th></tr>
30
	<tr bgcolor="#FFCC66"><td><img src="/images/pix.gif" width="1" 
31
height="2"></td></tr>
32
</TABLE>
33
<TABLE width="100%" border=0 cellspacing=0 cellpadding=1>
34
	<tr bgcolor="#666666"><td>
35
	<TABLE width="100%" border=0 cellspacing=0 cellpadding=2>
36
		<tr><td valign="middle" align="left">
37
<center>
38
<table border=0 width=550 cellpadding=0 cellspacing=0>
39
<tr valign=top>
40
<!--<td align=center><img src="images/title2.gif"></td>-->
41
</tr>
42
</table>
43
 
44
<table border=0 width=400 cellpadding=0 cellspacing=2>
45
EOM;
46
 
47
include("../html/user_toolbar.html.php");
48
 
49
print <<<EOM
50
</table>
51
 
52
<br>
53
<table border=0 width=540 cellpadding=1 cellspacing=1>
54
<tr valign=top>
55
<td width=340></td>
56
<td bgcolor="black" width=200>
57
	<table border=0 width=100% cellpadding=2 cellspacing=0>
58
	<tr bgcolor="#907030" align=right valign=top><th>
59
	<font color="white">Fermeture des sessions ouvertes pour l'usager : $login</font>&nbsp;
60
	</th></tr>
61
	</table>
62
</td></tr>
63
<tr bgcolor="black" valign=top><td colspan=2>
64
	<table border=0 width=100% cellpadding=12 cellspacing=0 bgcolor="#ffffd0" valign=top>
65
	<tr><td>
66
EOM;
597 richard 67
 
324 richard 68
if ($clear_sessions == 1)
69
	{
606 richard 70
# close active sessions
324 richard 71
	exec ("sudo /usr/local/sbin/alcasar-logout.sh $login");
606 richard 72
# delete open accounting sessions
613 richard 73
	$now = time();
74
	$today_now = date("Y-m-d H:i:s",$now);
606 richard 75
	$link = @da_sql_pconnect($config);
76
	if ($link)
597 richard 77
		{
606 richard 78
		$res = @da_sql_query($link,$config,
613 richard 79
		"UPDATE $config[sql_accounting_table] SET acctstoptime = '$today_now', acctterminatecause='Admin-Reset'
606 richard 80
		WHERE username='$login' AND acctstoptime IS NULL;");
81
		if (! $res)
82
			echo "<b>Error deleting open sessions for user" . da_sql_error($link,$config) . "</b><br>\n";
597 richard 83
		}
606 richard 84
	else
85
		echo "<b>Could not connect to SQL database</b><br>\n";
324 richard 86
	}
606 richard 87
# Count of accounting open sessions (in database)
88
$open_accnt_sessions = 0;
597 richard 89
$link = @da_sql_pconnect($config);
90
if ($link){
91
	$search = @da_sql_query($link,$config,
92
	"SELECT COUNT(*) AS counter FROM $config[sql_accounting_table]
606 richard 93
	WHERE username = '$login' AND acctstoptime IS NULL;");
597 richard 94
	if ($search){
95
		if ($row = @da_sql_fetch_array($search,$config))
606 richard 96
			$open_accnt_sessions = $row['counter'];
597 richard 97
	}
98
	else
99
		echo "<b>Database query failed: " . da_sql_error($link,$config) . "</b><br>\n";
100
}
101
else
102
	echo "<b>Could not connect to SQL database</b><br>\n";
606 richard 103
 
104
# Count of chilli open sessions (for coova-chilli)
105
$open_chilli_sessions = 0;
106
exec ("sudo /usr/sbin/chilli_query list|cut -d\" \" -f5,6|grep $login|grep ^1|wc -l" , $open_chilli_sessions);
107
 
324 richard 108
?>
109
   <form method=post>
110
      <input type=hidden name=login value=<?php print $login ?>>
111
      <input type=hidden name=clear_sessions value="0">
112
	<table border=1 bordercolordark=#ffffe0 bordercolorlight=#000000 width=100% cellpadding=2 cellspacing=0 bgcolor="#ffffe0" valign=top>
113
<tr>
114
<td align=center>
115
<?
606 richard 116
if (($open_accnt_sessions == 0) && ($open_chilli_sessions[0] == 0))
324 richard 117
	{
118
	echo "L'usager $login n'a pas de session ouverte";
119
	}
120
else	{
606 richard 121
	echo "L'usager '$login' a <i>$open_chilli_sessions[0]</i> session(s) ouverte(s) et <i>$open_accnt_sessions</i> comptabilité(s) actives(s)<br><br>";
122
	echo "Voulez-vous les fermer?";
324 richard 123
	echo "<input type=submit class=button value=\"Oui, Fermer\" OnClick=\"this.form.clear_sessions.value=1\">";
124
	}
125
?>
126
</form>
127
</td></tr></table>
128
</td></tr></table>
129
</TD></TR></TABLE>
130
</body>
131
</html>