| 324 | richard | 1 | <?php
 | 
        
           | 912 | richard | 2 | //gestion de la langue
 | 
        
           |  |  | 3 | if (is_file("../lib/langues.php"))
 | 
        
           |  |  | 4 | 	include("../lib/langues.php");
 | 
        
           | 324 | richard | 5 | require('/etc/freeradius-web/config.php');
 | 
        
           | 1805 | clement.si | 6 | if(!isset($clear_sessions)) $clear_sessions = 0;
 | 
        
           | 912 | richard | 7 | if (is_file("../lib/$config[general_lib_type]/user_info.php"))
 | 
        
           |  |  | 8 | 	include("../lib/$config[general_lib_type]/user_info.php");
 | 
        
           | 597 | richard | 9 | if (is_file("../lib/sql/drivers/$config[sql_type]/functions.php"))
 | 
        
           |  |  | 10 | 	include_once("../lib/sql/drivers/$config[sql_type]/functions.php");
 | 
        
           |  |  | 11 | else{
 | 
        
           |  |  | 12 | 	echo <<<EOM
 | 
        
           | 912 | richard | 13 | <title>Clear opensession</title>
 | 
        
           | 597 | richard | 14 | <meta http-equiv="Content-Type" content="text/html; charset=$config[general_charset]">
 | 
        
           | 2817 | rexy | 15 | <link rel="stylesheet" href="/css/acc.css">
 | 
        
           | 597 | richard | 16 | </head>
 | 
        
           |  |  | 17 | <body>
 | 
        
           |  |  | 18 | <center>
 | 
        
           |  |  | 19 | <b>Could not include SQL library functions. Aborting</b>
 | 
        
           |  |  | 20 | </body>
 | 
        
           |  |  | 21 | </html>
 | 
        
           |  |  | 22 | EOM;
 | 
        
           |  |  | 23 |         exit();
 | 
        
           |  |  | 24 | }
 | 
        
           |  |  | 25 |   | 
        
           | 324 | richard | 26 | echo <<<EOM
 | 
        
           |  |  | 27 | <html>
 | 
        
           |  |  | 28 | <head>
 | 
        
           | 912 | richard | 29 | <title>Clear opensession</title>
 | 
        
           | 324 | richard | 30 | <meta http-equiv="Content-Type" content="text/html; charset=$config[general_charset]">
 | 
        
           | 2817 | rexy | 31 | <link rel="stylesheet" href="/css/acc.css">
 | 
        
           | 324 | richard | 32 | </head>
 | 
        
           |  |  | 33 | <body>
 | 
        
           |  |  | 34 | <TABLE width="100%" border="0" cellspacing="0" cellpadding="0">
 | 
        
           | 912 | richard | 35 | 	<tr><th>$l_users_managment</th></tr>
 | 
        
           | 1805 | clement.si | 36 | 	<tr bgcolor="#FFCC66"><td><img src="/images/pix.gif" width="1"
 | 
        
           | 324 | richard | 37 | height="2"></td></tr>
 | 
        
           |  |  | 38 | </TABLE>
 | 
        
           |  |  | 39 | <TABLE width="100%" border=0 cellspacing=0 cellpadding=1>
 | 
        
           |  |  | 40 | 	<tr bgcolor="#666666"><td>
 | 
        
           |  |  | 41 | 	<TABLE width="100%" border=0 cellspacing=0 cellpadding=2>
 | 
        
           |  |  | 42 | 		<tr><td valign="middle" align="left">
 | 
        
           |  |  | 43 | <center>
 | 
        
           | 925 | richard | 44 | <table border=0 width=640 cellpadding=0 cellspacing=2>
 | 
        
           | 324 | richard | 45 | EOM;
 | 
        
           |  |  | 46 |   | 
        
           |  |  | 47 | include("../html/user_toolbar.html.php");
 | 
        
           |  |  | 48 |   | 
        
           |  |  | 49 | print <<<EOM
 | 
        
           |  |  | 50 | </table>
 | 
        
           |  |  | 51 |   | 
        
           |  |  | 52 | <br>
 | 
        
           | 925 | richard | 53 | <table border=0 width=620 cellpadding=1 cellspacing=1>
 | 
        
           | 324 | richard | 54 | <tr valign=top>
 | 
        
           | 925 | richard | 55 | <td width=400></td>
 | 
        
           |  |  | 56 | <td bgcolor="black">
 | 
        
           | 324 | richard | 57 | 	<table border=0 width=100% cellpadding=2 cellspacing=0>
 | 
        
           |  |  | 58 | 	<tr bgcolor="#907030" align=right valign=top><th>
 | 
        
           | 912 | richard | 59 | 	<font color="white">$l_user : $login ($cn)</font> 
 | 
        
           | 324 | richard | 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;
 | 
        
           | 1805 | clement.si | 67 |   | 
        
           | 324 | richard | 68 | if ($clear_sessions == 1)
 | 
        
           |  |  | 69 | 	{
 | 
        
           | 606 | richard | 70 | # close active sessions
 | 
        
           | 2299 | tom.houday | 71 | 	exec("sudo /usr/local/bin/alcasar-logout.sh ".escapeshellarg($login));
 | 
        
           | 606 | richard | 72 | # delete open accounting sessions
 | 
        
           | 613 | richard | 73 | 	$now = time();
 | 
        
           |  |  | 74 | 	$today_now = date("Y-m-d H:i:s",$now);
 | 
        
           | 1805 | clement.si | 75 | 	$link = da_sql_pconnect($config);
 | 
        
           | 606 | richard | 76 | 	if ($link)
 | 
        
           | 597 | richard | 77 | 		{
 | 
        
           | 1805 | clement.si | 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;
 | 
        
           | 1805 | clement.si | 89 | $link = da_sql_pconnect($config);
 | 
        
           | 597 | richard | 90 | if ($link){
 | 
        
           | 1805 | clement.si | 91 | 	$search = da_sql_query($link,$config,
 | 
        
           | 597 | richard | 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){
 | 
        
           | 1805 | clement.si | 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;
 | 
        
           | 2299 | tom.houday | 106 | exec("sudo /usr/sbin/chilli_query list | cut -d\" \" -f5,6 | grep ".escapeshellarg($login)." | grep ^1 | wc -l" , $open_chilli_sessions);
 | 
        
           | 606 | richard | 107 |   | 
        
           | 324 | richard | 108 | ?>
 | 
        
           |  |  | 109 |    <form method=post>
 | 
        
           | 2299 | tom.houday | 110 |       <input type=hidden name=login value="<?= $login ?>">
 | 
        
           | 324 | richard | 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 | 	{
 | 
        
           | 912 | richard | 118 | 	echo "$l_no_open_session";
 | 
        
           | 324 | richard | 119 | 	}
 | 
        
           |  |  | 120 | else	{
 | 
        
           | 912 | richard | 121 | 	echo "<b>$open_chilli_sessions[0]</b> $l_opened_sessions<br><b>$open_accnt_sessions</b> $l_active_accounting<br>";
 | 
        
           |  |  | 122 | 	echo "$l_want_to_close ";
 | 
        
           |  |  | 123 | 	echo "<input type=submit class=button value=\"$l_yes_close\" OnClick=\"this.form.clear_sessions.value=1\">";
 | 
        
           | 324 | richard | 124 | 	}
 | 
        
           |  |  | 125 | ?>
 | 
        
           |  |  | 126 | </form>
 | 
        
           |  |  | 127 | </td></tr></table>
 | 
        
           |  |  | 128 | </td></tr></table>
 | 
        
           |  |  | 129 | </TD></TR></TABLE>
 | 
        
           |  |  | 130 | </body>
 | 
        
           |  |  | 131 | </html>
 |