$secvalue) {
if ((preg_match("/<[^>]*script*\"?[^>]*>/i",$secvalue)) ||
(preg_match("/<[^>]*object*\"?[^>]*>/i", $secvalue)) ||
(preg_match("/<[^>]*iframe*\"?[^>]*>/i", $secvalue)) ||
(preg_match("/<[^>]*applet*\"?[^>]*>/i", $secvalue)) ||
(preg_match("/<[^>]*meta*\"?[^>]*>/i", $secvalue)) ||
(preg_match("/<[^>]*style*\"?[^>]*>/i", $secvalue)) ||
(preg_match("/<[^>]*form*\"?[^>]*>/i", $secvalue)) ||
(preg_match("/<[^>]*img*\"?[^>]*>/i", $secvalue)) ||
(preg_match("/<[^>]*onmouseover*\"?[^>]*>/i", $secvalue)) ||
(preg_match("/<[^>]*body*\"?[^>]*>/i", $secvalue)) ||
(preg_match("/\"/", $secvalue)) ||
(preg_match("/inside_mod/i", $sec_key))) {
die ("Operazione non consentita");
}
}
foreach ($_POST as $secvalue) {
if ((preg_match("/<[^>]*onmouseover*\"?[^>]*>/i", $secvalue)) || (preg_match("/<[^>]script*\"?[^>]*>/i", $secvalue)) || (preg_match("/<[^>]*body*\"?[^>]*>/i", $secvalue)) || (preg_match("/<[^>]style*\"?[^>]*>/i", $secvalue))) {
die ('Operazione non consentita');
}
}
// Posting from other servers in not allowed
// Fix by Quake
// Bug found by PeNdEjO
if ($_SERVER['REQUEST_METHOD'] == "POST") {
if (isset($_SERVER['HTTP_REFERER'])) {
if (!stripos_clone($_SERVER['HTTP_REFERER'], $_SERVER['HTTP_HOST'])) {
die('Posting da un altro server non consentito!');
}
} else {
# die('Attenzione: il tuo browser non puo inviare gli header HTTP_REFERER al website.
'.$_SERVER['HTTP_REFERER']);
}
}
//===================================================================
session_name('sesadmin');
#session_start();//MODIFICHE PER GESTIONE SESSIONI
// gestione sessione
$a = session_id();
if(empty($a)) session_start();
#echo "SID: ".SID."
session_id(): ".session_id()."
COOKIE: ".$_COOKIE["PHPSESSID"];
if (file_exists("config.php")){
$install="0"; @require_once("config.php");
}else{
$install="1";
}
# verifica se effettuata la configurazione
if(empty($dbname) || $install=="1") {
die("
Sembra che Eleonline non sia stato ancora installato.
Puoi procedere cliccando qui per iniziare l'installazione ");
}
try{
$dbi = new PDO("mysql:host=$dbhost;charset=latin1", $dbuname, $dbpass, array(PDO::ATTR_EMULATE_PREPARES => false, PDO::ATTR_ERRMODE=>PDO::ERRMODE_EXCEPTION));
$sql = "use $dbname";
$dbi->exec($sql);
}
catch(PDOException $e)
{
echo $sql . "
" . $e->getMessage();
}
# $dbi=mysql_connect($dbhost, $dbuname, $dbpass) or die("Connessione non riuscita: " . mysql_error());
# mysql_select_db($dbname)or die("Connessione non riuscita:" . mysql_error());
## mysql_query("SET NAMES 'utf8'", $dbi);
//---10/05/2009 gestione consultazione predefinita
$sth = $dbi->prepare("select * from ".$prefix."_config");
$sth->execute();
$row = $sth->fetch(PDO::FETCH_ASSOC);
#$row = $sth->fetchAll();
$siteistat=$row['siteistat'];
if (!isset($_SESSION['id_comune'])){
$_SESSION['sitename']=$row['sitename'];
$_SESSION['siteurl']=$row['siteurl'];
$_SESSION['site_logo']=$row['site_logo'];
$_SESSION['slogan']=$row['slogan'];
$_SESSION['startdate']=$row['startdate'];
$_SESSION['adminmail']=$row['adminmail'];
if (isset($tema) and $tema=='facebook')
$_SESSION['tema']=$row['tema'];
else $_SESSION['tema']='default';
$_SESSION['foot']=$row['foot'];
$_SESSION['lang']=$row['language'];
$_SESSION['blocco']=$row['blocco'];
$_SESSION['testata']=$row['testata'];
# $_SESSION['logo']=$row['logo'];
$_SESSION['fileout']=$row['fileout'];
$_SESSION['copyright']=$row['copyright'];
$_SESSION['versione']=$row['versione'];
$_SESSION['patch']=$row['patch'];
$_SESSION['id_comune']=$row['siteistat'];
$_SESSION['multicomune']=$row['multicomune'];
$_SESSION['flash']=$row['flash'];
$_SESSION['displayerrors']=$row['displayerrors'];
$_SESSION['editor']=$row['editor'];
$_SESSION['tema_on']=$row['tema_on'];
$_SESSION['ed_user']=$row['ed_user'];
}
//fine
if (isset($param['aid'])) {
if (strlen($aid)>25 ) { die ("Nome utente troppo lungo: $aid"); }
if (!isset($param['id_ses']) or $param['id_ses'] != session_id()) logout();
if (strstr( $aid," ")) { die ("Gli spazi non sono ammessi nel nome utente: $aid"); }
if (isset($_SESSION['aid'])){
logout();//se hai gia' una sessione aperta non puoi postare 'aid'
}else{
// $pwd2=$param['pwd'];
$mpwd=md5($pwd2);
// se superUserAdmin
########
$sth = $dbi->prepare("select adminsuper from ".$prefix."_authors where aid='$aid' and pwd='$mpwd'");
$sth->execute();
$row = $sth->fetch(PDO::FETCH_ASSOC);
$adminsuper=$row['adminsuper'];
if ($adminsuper==1) $id_comune='0';
elseif (is_numeric($param['id_comune']) and intval($param['id_comune'])>0) $id_comune=intval($param['id_comune']);
$sth = $dbi->prepare("select counter,admlanguage from ".$prefix."_authors where aid='$aid' and pwd='$mpwd' and id_comune='$id_comune'");
$sth->execute();
$row = $sth->fetch(PDO::FETCH_ASSOC);
if ($sth){
$esiste=$sth->rowCount();
$counter=$row['counter'];
$tmplang=$row['admlanguage'];
$counter+=1;
if(strlen($tmplang)==2) $language=$tmplang;
$sth = $dbi->prepare("update ".$prefix."_authors set counter=$counter where aid='$aid' and pwd='$mpwd' and id_comune='$id_comune'");
$sth->execute();
# $row = $sth->fetch(PDO::FETCH_ASSOC);
if ($esiste==1) {
# $_SESSION['dbi']=$dbi;
$_SESSION['aid']="$aid";
$_SESSION['pwd']="$mpwd";
$_SESSION['lang']="$language";
$_SESSION['id_comune']="$id_comune";
$_SESSION['prefix']="soraldo";
$_SESSION['remote']=$_SERVER['REMOTE_ADDR'];
$_SESSION['bgcolor1']='#ffffff';
$_SESSION['bgcolor2']='#c5c5c5';
if (!isset($op)) $op='consultazione';
session_regenerate_id();
}
}
}
}else{
#$_SESSION['dbi']=$dbi;
}
if (! isset($_SESSION['lang'])) $_SESSION['lang']=$language;
$currentlang=strlen($_SESSION['lang'])==2 ? $_SESSION['lang']: $language;
if (isset($_SESSION['aid']))
{
//lettura sessione
$aid=$_SESSION['aid'];
#$dbi=$_SESSION['dbi'];
$prefix=$_SESSION['prefix'];
$id_comune=$_SESSION['id_comune'];
if (isset($_GET['id_cons_gen'])) $id_cons_gen=intval($_GET['id_cons_gen']);
else {
$sth = $dbi->prepare("select id_cons_gen from ".$prefix."_ele_cons_comune where preferita='1' and (id_comune='$id_comune' or id_comune=0)");
$sth->execute();
$row = $sth->fetch(PDO::FETCH_BOTH);
$id_cons_gen=$row[0];
}
$currentlang=$_SESSION['lang'];
$bgcolor1=$_SESSION['bgcolor1'];
$bgcolor2=$_SESSION['bgcolor2'];
$bgcolor1='#e7e7e7';
$session=$_SESSION['remote'];
$perms=ChiSei($id_cons_gen);
}
/*********************************************************/
/* Login Function */
/*********************************************************/
function ChiSei($id_cons_gen){
global $dbi;
$aid=$_SESSION['aid'];
$prefix=$_SESSION['prefix'];
$pwd=$_SESSION['pwd'];
$id_comune=$_SESSION['id_comune'];
$perms=0;
$sql="select adminsuper, admincomune, adminop from ".$prefix."_authors where aid='$aid' and pwd='$pwd' and (id_comune='$id_comune' or id_comune=0)";
$sth = $dbi->prepare("$sql");
$sth->execute();
$row = $sth->fetch(PDO::FETCH_BOTH);
$adminsuper=$row[0];
$admincomune=$row[1];
$adminop=$row[2];
if (($adminsuper==1 || $admincomune==1 || $adminop==1)) {
if ($adminsuper==1)
return 256;
elseif ($adminop==1){
$sth = $dbi->prepare("select permessi from ".$prefix."_ele_operatori where id_cons='0' and aid='$aid' and id_comune='$id_comune'");
}elseif ($admincomune==1) {
$sth = $dbi->prepare("select id_cons from ".$prefix."_ele_cons_comune where id_comune='$id_comune' and id_cons_gen='$id_cons_gen'");
$sth->execute();
$row = $sth->fetch(PDO::FETCH_BOTH);
$id_cons=$row[0];
$sth = $dbi->prepare("select permessi from ".$prefix."_ele_operatori where id_cons='$id_cons' and aid='$aid' and id_comune='$id_comune'");
}
$sth->execute();
$row = $sth->fetch(PDO::FETCH_BOTH);
if ($sth->rowCount()==1) $perms=$row[0]; else $perms=0;
return $perms;
} else return 0;
}
function OpenTable(){
echo "";
}
function CloseTable(){
echo "
";
}
function login() {
global $param,$prefix,$dbi,$multicomune,$siteistat,$language,$tema;
$lang=strlen($_SESSION['lang'])==2 ? $_SESSION['lang']: $language;
if (isset($param['id_comune'])) $id_comune=intval($param['id_comune']);
if (!isset($id_comune)) $id_comune=0;
session_regenerate_id();
$id_ses=session_id();
#die("test:$tema");
//include("modules/Elezioni/language/lang-$lang.php");
include ("header.php");
echo ""._GESTIONE."";
echo "
"; # method=\"post\"
echo "
";
include ("footer.php");
}
function logout()
{
/* $lang=$_SESSION['lang'];
$id_comune=$_SESSION['id_comune'];
// setcookie ("PHPSESSID", "", time() - 3600);
session_cache_expire (0);
$_SESSION=array(); //MODIFICHE PER GESTIONE SESSIONI
session_unset();
session_destroy();
Header("Location: admin.php?id_comune=$id_comune&language=$lang");
*/
global $siteistat;
$ref="Location: admin.php?";
if (isset($_SESSION['id_comune']))
$id_comune=$_SESSION['id_comune'];
else
$id_comune=$siteistat;
$ref=$ref."id_comune=".$id_comune;
if (isset($_SESSION['lang']))
$ref=$ref."&language=".$_SESSION['lang'];
session_cache_expire (0);
$_SESSION=array();
session_unset();
session_destroy();
Header($ref);
}
#echo "op:".$param['op']." -- aid:".$_SESSION['aid']."remote:".$_SESSION['remote']."REMOTE:".$_SERVER['REMOTE_ADDR'];
if (isset($param['op'])) get_magic_quotes_gpc() ? $op=$param['op']:$op=addslashes($param['op']); else $op='ele';
//if (isset($param['op'])) $op=$param['op']; else $op='ele';
if (isset($_SESSION['aid']) AND $_SESSION['remote']==$_SERVER['REMOTE_ADDR']) {
switch($op) {
case "tipo":
include("modules/Elezioni/ele_tipi.php");
break;
case "constipi":
include("modules/Elezioni/ele_consultazionitipi.php");
break;
case "aggiorna":
include("modules/Elezioni/aggiorna.php");
break;
case "parziali":
include("modules/Elezioni/ele_parziali.php");
break;
case "ele":
include("modules/Elezioni/ele.php");
break;
case "consultazione":
include("modules/Elezioni/ele_consultazioni.php");
break;
case "configurazione":
include("modules/Elezioni/ele_configurazione.php");
break;
case "cons_comuni":
include("modules/Elezioni/ele_cons_comuni.php");
break;
case "confconsiglio":
include("modules/Elezioni/ele_confcons.php");
break;
case "inscomuni":
include("modules/Elezioni/ele_comuni.php");
break;
case "oper_admin":
include("modules/Elezioni/ele_operatori.php");
break;
case "inscollegi":
include("modules/Elezioni/ele_collegi.php");
break;
case "associazioni":
include("modules/Elezioni/ele_associazioni.php");
break;
case "operatori":
include("modules/Elezioni/ele_operatori.php");
break;
case "permessi":
include("modules/Elezioni/ele_permessi.php");
break;
case "circo":
include("modules/Elezioni/ele_circo.php");
break;
case "sede":
include("modules/Elezioni/ele_sede.php");
break;
case "sezione":
include("modules/Elezioni/ele_sezione.php");
break;
case "gruppo":
include("modules/Elezioni/ele_gruppo.php");
break;
case "rec_add_aff":
include("modules/Elezioni/ele_affluenze.php");
break;
case "rec_add_mod":
include("modules/Elezioni/ele_modelli.php");
break;
case "upgruppo":
include("modules/Elezioni/ele_gruppo.php");
break;
case "delimggruppo":
include("modules/Elezioni/ele_gruppo.php");
break;
case "lista":
include("modules/Elezioni/ele_lista.php");
break;
case "uplista":
include("modules/Elezioni/ele_lista.php");
break;
case "delimglista":
include("modules/Elezioni/ele_lista.php");
break;
case "candidato":
include("modules/Elezioni/ele_candidato.php");
break;
case "upcandidato":
include("modules/Elezioni/ele_candidato.php");
break;
case "delimgcandidato":
include("modules/Elezioni/ele_candidato.php");
break;
case "voti":
include("modules/Elezioni/ele_voti.php");
break;
case "sezioni_voti":
include("modules/Elezioni/ele_voti.php");
break;
case "rec_voti":
include("modules/Elezioni/ele_voti.php");
break;
case "rec_voti_gruppi":
include("modules/Elezioni/ele_voti.php");
break;
case "rec_add_votanti":
include("modules/Elezioni/ele_voti.php");
break;
case "rec_finale":
include("modules/Elezioni/ele_voti.php");
break;
case "controllo_voti":
include("modules/Elezioni/controllo_voti.php");
break;
case "controllo_votanti":
include("modules/Elezioni/controllo_votanti.php");
break;
case "come":
include("modules/Elezioni/ele_come.php");
break;
case "numeri":
include("modules/Elezioni/ele_come.php");
break;
case "servizi":
include("modules/Elezioni/ele_come.php");
break;
case "link":
include("modules/Elezioni/ele_come.php");
break;
case "conf":
include("modules/Elezioni/ele_conf.php");
break;
case "stampa":
include("modules/Elezioni/ele_stampe.php");
break;
case "cambiopwd":
include("modules/Elezioni/ele_pwd.php");
break;
case "eletti":
include("modules/Elezioni/ele_eletti.php");
break;
case "foto":
include("modules/Elezioni/foto.php");
break;
case "consiglieri":
include("modules/Elezioni/ele_consiglieri.php");
break;
case "backup":
include("modules/Elezioni/backup.php");
break;
case "restore":
include("modules/Elezioni/restore.php");
break;
case "scarica":
include("modules/Elezioni/scarica.php");
break;
case "importa":
include("modules/Elezioni/importa.php");
break;
case "widget":
include("modules/Elezioni/ele_widget.php");
break;
case "riepilogo":
include("modules/Elezioni/ele_riepilogo.php");
break;
case "riepilogovoti":
include("modules/Elezioni/ele_riepilogovoti.php");
break;
case "logout":
logout();
break;
}
}else {
login();
}
?>