diff --git a/.htaccess b/.htaccess
index 96aa873..fdaaa92 100644
--- a/.htaccess
+++ b/.htaccess
@@ -1,3 +1,9 @@
RewriteEngine on
RewriteRule ^(.*/)?img/(.*) risorse/immagini/$2 [L]
RewriteRule ^(.*/)?css/(.*) risorse/stili/$2 [L]
+
+RewriteCond %{REQUEST_FILENAME} !-f
+RewriteCond %{REQUEST_FILENAME} !-d
+RewriteRule . /pannello_vbc/rewrite.php [L]
+
+
diff --git a/DBDiff/proxy.sql b/DBDiff/proxy.sql
index 27ead1a..55a6f69 100644
--- a/DBDiff/proxy.sql
+++ b/DBDiff/proxy.sql
@@ -2,3 +2,26 @@ ALTER TABLE `proxy_utenti` ADD `guest` INT NOT NULL DEFAULT '0' AFTER `modifica`
INSERT INTO `pannello_vbc`.`livelli` (`id`, `livello`, `nome`) VALUES (NULL, '1', 'Libero');
ALTER TABLE `moduli_page` ADD `livello` INT NOT NULL AFTER `pagina`;
+
+CREATE TABLE `rewrite` (
+ `id` bigint(20) NOT NULL AUTO_INCREMENT,
+ `from_url` varchar(512) NOT NULL,
+ `to_url` varchar(512) NOT NULL,
+ `attivo` tinyint(1) NOT NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `from_url` (`from_url`(255))
+) ENGINE=InnoDB DEFAULT CHARSET=utf8
+
+INSERT INTO `rewrite` (`id`, `from_url`, `to_url`, `attivo`) VALUES
+(1, 'pannello_vbc/proxy_auth.php', 'proxy/ext/main_proxy.php', 1),
+(2, 'pannello_vbc/main_proxy.php', 'proxy/ext/main_proxy.php', 1),
+(3, 'pannello_vbc/logout_proxy.php', 'proxy/ext/logout_proxy.php', 1),
+(4, 'pannello_vbc/chkpasswd_proxy.php', 'proxy/ext/chkpasswd_proxy.php', 1);
+
+ALTER TABLE `proxy_utenti` ADD `primo` DATETIME NULL AFTER `modifica`;
+ALTER TABLE `proxy_utenti` ADD `ultimo` DATETIME NULL AFTER `ultimo`;
+ALTER TABLE `proxy_utenti` ADD `tempo` DECIMAL(20,2) NOT NULL DEFAULT '0' AFTER `attivo`;
+ALTER TABLE `proxy_utenti` CHANGE `ip` `ip` VARCHAR(15) CHARACTER SET utf8 COLLATE utf8_general_ci NULL;
+REVOKE ALL PRIVILEGES ON `pannello_vbc`.`proxy_utenti` FROM 'pannello_proxy'@'%'; GRANT SELECT, UPDATE (`primo`, `ultimo`, `attivo`) ON `pannello_vbc`.`proxy_utenti` TO 'pannello_proxy'@'%';
+
+INSERT INTO `pannello_vbc`.`moduli_page` (`id`, `id_moduli`, `nome`, `ordine`, `pagina`, `livello`, `attivo`) VALUES (NULL, '1', 'Lista Gruppi', '35', 'users_group_lista.php', '10', '1');
diff --git a/proxy/ext/chkpasswd_proxy.php b/proxy/ext/chkpasswd_proxy.php
old mode 100755
new mode 100644
index 7e8d02b..6fb8fa6
--- a/proxy/ext/chkpasswd_proxy.php
+++ b/proxy/ext/chkpasswd_proxy.php
@@ -1,6 +1,6 @@
- |
+ |
 |
@@ -102,13 +102,6 @@ $(document).ready(function()
|
 |
-
-  |
- |
- |
- |
-
- |
@@ -142,7 +135,7 @@ $(document).ready(function()
|
-
+
|
 |
diff --git a/proxy/ext/footer_proxy.php b/proxy/ext/footer_proxy.php
index b8d7df7..2045aba 100644
--- a/proxy/ext/footer_proxy.php
+++ b/proxy/ext/footer_proxy.php
@@ -1,11 +1,11 @@
-
+
| |
|
- Admin |
+ Admin |
|
diff --git a/proxy/ext/function_proxy.php b/proxy/ext/function_proxy.php
index ad188e0..847752f 100644
--- a/proxy/ext/function_proxy.php
+++ b/proxy/ext/function_proxy.php
@@ -81,7 +81,7 @@ function carica_utente_proxy () {
function lista_moduli_proxy () {
global $UTENTE, $DB_ID, $CONF;
- $menu[] = array("Home", "main.php",0,"Home Page",0);
+ $menu[] = array("Home", "main_proxy.php",0,"Home Page",0);
$menu[] = array("Cambio password", "chkpasswd_proxy.php",0,"Cambio Password");
$pezzi = preg_split('/\//', $_SERVER["PHP_SELF"], -2);
diff --git a/proxy/ext/logout_proxy.php b/proxy/ext/logout_proxy.php
index 35b6ff9..0923c3e 100644
--- a/proxy/ext/logout_proxy.php
+++ b/proxy/ext/logout_proxy.php
@@ -1,10 +1,10 @@
diff --git a/proxy/ext/main.php b/proxy/ext/main_proxy.php
similarity index 69%
rename from proxy/ext/main.php
rename to proxy/ext/main_proxy.php
index f09c8f4..3113fc2 100644
--- a/proxy/ext/main.php
+++ b/proxy/ext/main_proxy.php
@@ -1,11 +1,11 @@
-
+
 |
diff --git a/proxy/ext/top_proxy.php b/proxy/ext/top_proxy.php
index bb413a2..93da496 100644
--- a/proxy/ext/top_proxy.php
+++ b/proxy/ext/top_proxy.php
@@ -10,7 +10,7 @@
if ($UTENTE['user'] != '') { ?>
-
+
| Utente: |
|
Logout |
@@ -23,7 +23,7 @@
lista_moduli_proxy();
} else {?>
- | |
+ | |
 |
diff --git a/proxy/squid_acl/squid_acl.pl b/proxy/squid_acl/squid_acl.pl
index 7d8f7b3..5f829a6 100755
--- a/proxy/squid_acl/squid_acl.pl
+++ b/proxy/squid_acl/squid_acl.pl
@@ -9,7 +9,7 @@ require "$Bin/../script/conntrack.conf";
local $SIG{ALRM} = sub {
my $time = localtime; # scalar context
- print LOG "$$ - $time - Exit\n";
+# print LOG "$$ - $time - Exit\n";
exit 1;
};
@@ -21,8 +21,8 @@ my $dbmysql = DBI->connect("DBI:mysql:;host=$DBhost", $DBuser, $DBpass) or die (
$sts = $dbmysql->prepare("use $DBname");
$sts->execute ();
-open LOG, ">> /srv/www/htdocs/pannello_vbc/proxy/squid_acl/squid_pool.log";
-LOG->autoflush(1);
+#open LOG, ">> /srv/www/htdocs/pannello_vbc/proxy/squid_acl/squid_pool.log";
+#LOG->autoflush(1);
while($limit) {
alarm $timeout;
@@ -35,15 +35,15 @@ while($limit) {
my $ritorno = cerca ($param[1],$param[2], -1);
$limit--;
if ($ritorno) {
- print LOG "$param[0] - $param[1] - $param[2] - ERR\n";
+# print LOG "$param[0] - $param[1] - $param[2] - ERR\n";
print "DENY\n";
} else {
$ritorno = cerca ($param[1],$param[2], 1);
if ($ritorno) {
- print LOG "$param[0] - $param[1] - $param[2] - OK\n";
+# print LOG "$param[0] - $param[1] - $param[2] - OK\n";
print "OK\n";
} else {
- print LOG "$param[0] - $param[1] - $param[2] - ERR\n";
+# print LOG "$param[0] - $param[1] - $param[2] - ERR\n";
# print "DENY\n";
print "\n";
}
diff --git a/proxy/squid_acl/squid_acl_net.pl b/proxy/squid_acl/squid_acl_net.pl
index 3a2c04d..71660e4 100755
--- a/proxy/squid_acl/squid_acl_net.pl
+++ b/proxy/squid_acl/squid_acl_net.pl
@@ -9,7 +9,7 @@ require "$Bin/../script/conntrack.conf";
local $SIG{ALRM} = sub {
my $time = localtime; # scalar context
- print LOG "$$ - $time - Exit\n";
+# print LOG "$$ - $time - Exit\n";
exit 1;
};
@@ -21,8 +21,8 @@ my $dbmysql = DBI->connect("DBI:mysql:;host=$DBhost", $DBuser, $DBpass) or die (
$sts = $dbmysql->prepare("use $DBname");
$sts->execute ();
-open LOG, ">> /srv/www/htdocs/pannello_vbc/proxy/squid_acl/squid_pool.log";
-LOG->autoflush(1);
+#open LOG, ">> /srv/www/htdocs/pannello_vbc/proxy/squid_acl/squid_pool.log";
+#LOG->autoflush(1);
while($limit) {
alarm $timeout;
@@ -35,15 +35,15 @@ while($limit) {
my $ritorno = cerca ($param[1],$param[2], -1);
$limit--;
if ($ritorno) {
- print LOG "$param[0] - $param[1] - $param[2] - ERR\n";
+# print LOG "$param[0] - $param[1] - $param[2] - ERR\n";
print "DENY\n";
} else {
$ritorno = cerca ($param[1],$param[2], 1);
if ($ritorno) {
- print LOG "$param[0] - $param[1] - $param[2] - OK\n";
+# print LOG "$param[0] - $param[1] - $param[2] - OK\n";
print "OK\n";
} else {
- print LOG "$param[0] - $param[1] - $param[2] - ERR\n";
+# print LOG "$param[0] - $param[1] - $param[2] - ERR\n";
print "\n";
}
}
diff --git a/proxy/squid_acl/squid_auth.pl b/proxy/squid_acl/squid_auth.pl
index e1bf799..45b1ca1 100755
--- a/proxy/squid_acl/squid_auth.pl
+++ b/proxy/squid_acl/squid_auth.pl
@@ -8,7 +8,7 @@ require "$Bin/../script/conntrack.conf";
local $SIG{ALRM} = sub {
my $time = localtime; # scalar context
- print LOG "$$ - $time - Exit\n";
+# print LOG "$$ - $time - Exit\n";
exit 1;
};
@@ -20,8 +20,8 @@ my $dbmysql = DBI->connect("DBI:mysql:;host=$DBhost", $DBuser, $DBpass) or die (
$sts = $dbmysql->prepare("use $DBname");
$sts->execute ();
-open LOG, ">> /srv/www/htdocs/pannello_vbc/proxy/squid_acl/squid_pool.log";
-LOG->autoflush(1);
+#open LOG, ">> /srv/www/htdocs/pannello_vbc/proxy/squid_acl/squid_pool.log";
+#LOG->autoflush(1);
alarm $timeout;
while($limit) {
@@ -29,11 +29,10 @@ while($limit) {
my $input = <>;
chop $input;
-# my ($acl, $ip) = split / /, $input;
my @param = split / /, $input;
if ($param[0] ne "") {
- $query = "SELECT id FROM proxy_utenti WHERE user = '".$param[0]."' AND pass = PASSWORD('".$param[1]."') AND attivo = 1";
+ $query = "SELECT id, primo, (tempo*3600)-time_to_sec(timediff(ultimo, primo)) AS rimasto, tempo FROM proxy_utenti WHERE user = '".$param[0]."' AND pass = PASSWORD('".$param[1]."') AND attivo = 1";
$limit--;
alarm $timeout;
} else {
@@ -47,7 +46,22 @@ while($limit) {
if ($ref = $sts->fetchrow_hashref ) {
my $id = $$ref{'id'};
- my $query = "UPDATE proxy_utenti SET data = NOW() WHERE id = $id";
+ my $primo = $$ref{'primo'};
+ my $rimasto = $$ref{'rimasto'};
+ my $tempo = $$ref{'tempo'};
+
+ my $agg = "";
+ my $query = "";
+ if (($tempo > 0) && ($rimasto < 0)){
+ $agg = "attivo = 0,";
+ }
+
+ if (!$primo) {
+ $query = "UPDATE proxy_utenti SET $agg primo = NOW(), ultimo = NOW() WHERE id = $id";
+ } else {
+ $query = "UPDATE proxy_utenti SET $agg ultimo = NOW() WHERE id = $id";
+ }
+# print LOG "$rimasto -- $query\n";
$sts = $dbmysql->prepare($query);
$sts->execute ();
print "OK\n";
diff --git a/proxy/users_group_edit.php b/proxy/users_group_edit.php
new file mode 100755
index 0000000..459b862
--- /dev/null
+++ b/proxy/users_group_edit.php
@@ -0,0 +1,84 @@
+
+
+
+
+
+
+
diff --git a/proxy/users_group_lista.php b/proxy/users_group_lista.php
new file mode 100755
index 0000000..13b5e20
--- /dev/null
+++ b/proxy/users_group_lista.php
@@ -0,0 +1,66 @@
+
+
+
+
+  |
+  |
+  |
+
+
+
+
+  |
+
+  |
+
+  |
+
+  |
+  |
+
+ |
+
+  |
+ |
+
+  |
+ |
+
+  |
+ |
+  |
+
+
+  |
+
+
+
+
+
diff --git a/proxy/users_lista.php b/proxy/users_lista.php
index c9dffc0..cff2ad5 100755
--- a/proxy/users_lista.php
+++ b/proxy/users_lista.php
@@ -17,10 +17,12 @@ $query = " SELECT
user,
fullname,
attivo,
- DATE_FORMAT(data, '%d.%m.%Y %H:%i:%s') AS data,
+ DATE_FORMAT(ultimo, '%d.%m.%Y %H:%i:%s') AS data,
ip
FROM
proxy_utenti
+ WHERE
+ guest = 0
ORDER BY
user
";
diff --git a/rewrite.php b/rewrite.php
new file mode 100644
index 0000000..0a5ad02
--- /dev/null
+++ b/rewrite.php
@@ -0,0 +1,27 @@
+
| | |