$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 if (!isset($_SESSION)) { session_start(); }else session_regenerate_id(); $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("


\"Eleonline\"

Sembra che Eleonline non sia stato ancora installato.

Puoi procedere cliccando qui per iniziare l'installazione
"); } require_once('variabili.php'); $dsn = "mysql:host=$dbhost"; $opt = array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_EMULATE_PREPARES => false); if($prefix == '') { db_err ('stepBack','Non avete indicato il prefisso tabelle database.'); } try { $dbi = new PDO($dsn, $dbuname, $dbpass, $opt); } catch(PDOException $e) { echo "
" . $e->getMessage();die(); } $sql = "use $dbname"; try { $dbi->exec($sql); } catch(PDOException $e) { echo $sql . "
" . $e->getMessage(); } $sth = $dbi->prepare("SET SESSION character_set_connection = 'utf8' "); $sth->execute(); $sth = $dbi->prepare("SET SESSION character_set_client = 'utf8' "); $sth->execute(); $sth = $dbi->prepare("SET SESSION character_set_database = 'utf8' "); $sth->execute(); $sth = $dbi->prepare("SET CHARACTER SET utf8"); $sth->execute(); $sth = $dbi->prepare("SET NAMES 'utf8'"); $sth->execute(); $sth = $dbi->prepare("select * from ".$prefix."_config"); $sth->execute(); # $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']; $_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']; $multicomune=$row['multicomune']; } //fine if (isset($param['tema'])) $_SESSION['tema']=$param['tema']; if (!isset($_SESSION['tema'])) $_SESSION['tema']='default'; $tema=$_SESSION['tema']; 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); if (isset($param['id_comune']) and intval($param['id_comune'])>0) $id_comune=intval($param['id_comune']); else $id_comune=0;; # if ($adminsuper==1) $id_comune2=0; else $id_comune2=$id_comune; $sth = $dbi->prepare("select pwd,adminop,adminsuper,counter,admlanguage from ".$prefix."_authors where binary aid='$aid' and (id_comune='$id_comune2' or adminsuper='1')"); $sth->execute(); $esiste=$sth->rowCount(); # $adminsuper=$row['adminsuper']; $row = $sth->fetch(PDO::FETCH_ASSOC); if(!$esiste) { $msglogout=2; logout(); }else{ if ($row['pwd']!=$mpwd) { $msglogout=3; logout(); }elseif($row['adminop']==1) { $msglogout=1; logout(); } $counter=$row['counter']; $tmplang=$row['admlanguage']; 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_comune2'"); $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'; } } } }else{ #$_SESSION['dbi']=$dbi; } # si settano le variabili per il controllo degli aggiornamenti if(!isset($_SESSION['localrev']) and isset($_SESSION['aid']) and ChiSei(0)==256) { $sql="SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = '$dbname' AND TABLE_NAME = '".$prefix."_config' AND COLUMN_NAME = 'aggiornamento'"; $sth = $dbi->prepare($sql); $sth->execute(); if($sth->rowCount()) { $sql="ALTER TABLE `soraldo_config` DROP `aggiornamento`;"; $sth = $dbi->prepare($sql); $sth->execute(); } include('versione.php'); } if(!isset($_SESSION['BASE'])) $_SESSION['BASE']=substr($_SERVER['PHP_SELF'], 0, strrpos($_SERVER['REQUEST_URI'], "/")-16); if(!isset($language) and isset($_SESSION['lang'])) $language=$_SESSION['lang']; else $language='it'; 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($id_comune==0) $rifcomune='58047'; else $rifcomune=$id_comune; if (isset($_GET['id_cons_gen'])) {$id_cons_gen=intval($_GET['id_cons_gen']);} else { # $oggi=date("Y-m-d",mktime(0,0,0,date("m"),date("d")-3,date("Y"))); $sql="select t1.id_cons_gen from ".$prefix."_ele_consultazione as t1, ".$prefix."_ele_cons_comune as t2 where t1.id_cons_gen=t2.id_cons_gen and t2.id_comune=$id_comune and date_add(t1.data_fine, interval $giorniaut day)>CURDATE() and t2.id_cons in (select id_cons from ".$prefix."_ele_operatori where aid='$aid' and permessi>0) limit 0,1";# TEST: and id_sez>0 $rese = $dbi->prepare("$sql"); $rese->execute(); if($rese->rowCount()) {list($id_cons_gen)=$rese->fetch(PDO::FETCH_NUM); } else { $sql="SELECT t1.id_cons_gen FROM ".$prefix."_ele_cons_comune as t1, ".$prefix."_ele_comuni as t2 where t1.id_cons=t2.id_cons and t2.id_comune='$id_comune'"; $sth = $dbi->prepare($sql); $sth->execute(); $row = $sth->fetch(PDO::FETCH_BOTH); if($sth->rowCount()) $id_cons_gen=$row[0]; else $id_cons_gen=0; #die("TEST IN CORSO : idconsgen: $id_cons_gen -- sql:$sql"); } } $currentlang=$_SESSION['lang']; #$bgcolor1=$_SESSION['bgcolor1']; $bgcolor2=$_SESSION['bgcolor2']; $bgcolor1='#e7e7e7'; $session=$_SESSION['remote']; } /*********************************************************/ /* Login Function */ /*********************************************************/ function ChiSei($idcg){ global $dbi, $msglogout, $id_cons_gen,$giorniaut; $aid=$_SESSION['aid']; $prefix=$_SESSION['prefix']; $pwd=$_SESSION['pwd']; $id_comune=$_SESSION['id_comune']; #echo "prima: $idcg - dopo: $id_cons_gen
"; $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); if($row){ $adminsuper=$row[0]; $admincomune=$row[1]; $oper=$row[2]; }else{ $adminsuper=0; $admincomune=0; $oper=1; } if ($adminsuper==1) return 256; elseif ($admincomune==1) return 64; # $sth = $dbi->prepare("select permessi from ".$prefix."_ele_operatori where id_cons='0' and aid='$aid' and id_comune='$id_comune'"); elseif($oper) {$msglogout=1; return 0;} # id_cons='$id_cons' and else { # $oggi=date("Y-m-d",mktime(0,0,0,date("m"),date("d")-3,date("Y"))); $sql="select t1.id_cons, t1.id_cons_gen from ".$prefix."_ele_cons_comune as t1, ".$prefix."_ele_consultazione as t2 where t1.id_cons_gen=t2.id_cons_gen and t1.chiusa='0' and t1.id_comune='$id_comune' and date_add(t2.data_fine, interval $giorniaut day)>CURDATE()"; $sth = $dbi->prepare("$sql"); $sth->execute(); if(!$sth->rowCount()) { $msglogout=1; $perms=0; return $perms;} list($id_cons,$idcg) = $sth->fetch(PDO::FETCH_NUM); if (!$id_cons_gen) $id_cons_gen=$idcg; $sql="select permessi from ".$prefix."_ele_operatori where id_cons='$id_cons' and aid='$aid'"; $sth = $dbi->prepare("$sql"); $sth->execute(); list($perms) = $sth->fetch(PDO::FETCH_NUM); return $perms; } } function OpenTable(){ echo ""; } function CloseTable(){ echo "
"; } function login() { global $param,$prefix,$dbi,$multicomune,$siteistat,$language,$tema, $perms, $msglogout;#, $id_cons_gen if (isset($param['id_comune'])) $id_comune=intval($param['id_comune']); if (!isset($id_comune)) $id_comune=0; if(isset($_SESSION['aid'])){ session_regenerate_id(); } $lang=(isset($_SESSION['lang']) and strlen($_SESSION['lang'])==2) ? $_SESSION['lang']: $language; $id_ses=session_id(); //include("modules/Elezioni/language/lang-$lang.php"); if($multicomune==''){ $sth = $dbi->prepare("select multicomune from ".$prefix."_config"); $sth->execute(); list($multicomune) = $sth->fetch(PDO::FETCH_NUM); } include ("header.php"); echo "
"._GESTIONE.""; if ($msglogout==1) echo "

Utente non autorizzato


"; elseif ($msglogout==2) echo "

Nome Utente non presente in archivio


"; elseif ($msglogout==3) echo "

Password Errata


"; elseif ($msglogout==4) echo "

Accesso non ammesso da cellulare


"; echo "
" ."" ."" ."" ."" ."" ."
"._ADMINID."
"._PASSWORD."
"; // scelta comune if($multicomune=='1'){ echo ""._COMUNE.""; $sql="select * from ".$prefix."_ele_comuni order by descrizione asc"; $sth = $dbi->prepare("$sql"); $sth->execute(); $row = $sth->fetchAll(); echo ""; } // echo ""; if(strlen($lang)==2) echo ""; echo "
"; echo ""; 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,$perms,$msglogout; if (!isset($_SESSION)) { session_start(); } $language=$_SESSION['lang']; $ref="Location: admin.php?"; #$ref="Location: https://www.eleonline.it/adminmob/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=$language"; $ref.="&msglogout=$msglogout"; $_SESSION=array(); session_regenerate_id(); session_write_close(); session_cache_expire (0); Header($ref); } #include("TEST tema: $tema--"); #include("modules/Elezioni/language/lang-".$_SESSION['lang'].".php"); #die( "$sql
TEST id_cons_gen:$id_cons_gen:".$_SESSION['id_cons_gen']); if(isset($id_cons_gen) and isset($id_comune)){ if(!isset($id_cons)){ # $sql = "SELECT t2.id_cons FROM ".$prefix."_ele_consultazione as t1, ".$prefix."_ele_cons_comune as t2 where t1.id_cons_gen=t2.id_cons_gen and t2.id_cons_gen='$id_cons_gen' and t2.id_comune='$id_comune'"; $sql = "SELECT id_cons from ".$prefix."_ele_comuni where id_comune='$id_comune'"; $sth = $dbi->prepare("$sql"); $sth->execute(); if ($sth->rowCount()) { list($id_cons) = $sth->fetch(PDO::FETCH_NUM); $_SESSION['id_cons']=$id_cons; } } if(isset($id_cons)) { $sql="SELECT id_sez FROM ".$prefix."_ele_operatori where id_sez>0 and aid='$aid' and id_comune=$id_comune and id_cons=$id_cons"; try { $resmod = $dbi->prepare("$sql"); $resmod->execute(); }catch(PDOException $e) { # echo "Viene eseguito un aggiornamento forzato del db
"; $_SESSION['forzadb']=1; include("modules/Elezioni/aggiornamento.php"); die(); } list($id_sez) = $resmod->fetch(PDO::FETCH_NUM); if($id_sez) { $sql="select t1.id_cons_gen,t1.descrizione,t2.id_cons from ".$prefix."_ele_consultazione as t1, ".$prefix."_ele_cons_comune as t2 where t1.id_cons_gen=t2.id_cons_gen and t2.id_comune=$id_comune and date_add(t1.data_fine, interval 3 day)>CURDATE() and t2.id_cons in (select id_cons from ".$prefix."_ele_operatori where aid='$aid' and id_sez>0 and permessi>0)"; $resmod = $dbi->prepare("$sql"); $resmod->execute(); if ($resmod->rowCount()>0) { list($id_cons_gen, $desc,$id_cons)=$resmod->fetch(PDO::FETCH_NUM); $tema='Futura2'; $_SESSION['tema']=$tema; } #else {die("TEST: $sql"); logout();} } } $perms=ChiSei($id_cons_gen); if($perms==0) {logout();} } #echo "op:".$param['op']." -- aid:".$_SESSION['aid']."remote:".$_SESSION['remote']."REMOTE:".$_SERVER['REMOTE_ADDR']; if (isset($param['op'])) $op=addslashes($param['op']); else $op='ele'; //if (isset($param['op'])) $op=$param['op']; else $op='ele'; # #die("TEST: qui2 op:$op - $aid $id_cons $id_sez ".$_SESSION['aid']); if (isset($_SESSION['aid']) AND $_SESSION['remote']==$_SERVER['REMOTE_ADDR']) { if($tema=='Futura2' and $op!='logout') { include("temi/$tema/index.php"); }else switch($op) { case "tipo": include("modules/Elezioni/ele_tipi.php"); break; case "aggiorna": include("modules/Elezioni/aggiornamento.php"); break; case "constipi": include("modules/Elezioni/ele_consultazionitipi.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 "aggcons": include("modules/Elezioni/ele_restorebackup.php"); break; case "logout": logout(); break; } }else { login(); } ?>