Index: trunk/admin/admin.php
===================================================================
--- trunk/admin/admin.php	(revision 428)
+++ trunk/admin/admin.php	(revision 429)
@@ -703,4 +703,7 @@
     include("modules/Elezioni/ele_riepilogovoti.php");
     break;
+case "estraidati":
+    include("modules/Elezioni/ele_estraidati.php");
+    break;
 case "aggcons":
     include("modules/Elezioni/ele_restorebackup.php");
Index: trunk/admin/modules/Elezioni/aggiornadb.php
===================================================================
--- trunk/admin/modules/Elezioni/aggiornadb.php	(revision 428)
+++ trunk/admin/modules/Elezioni/aggiornadb.php	(revision 429)
@@ -241,6 +241,6 @@
 	$sql="update `".$prefix."_ele_lista` as t1 set t1.num_gruppo=(select t2.num_gruppo from `".$prefix."_ele_gruppo` as t2 where t2.id_gruppo=t1.id_gruppo) where t1.num_gruppo=0 and (select t2.num_gruppo from `".$prefix."_ele_gruppo` as t2 where t2.id_gruppo=t1.id_gruppo) is not null";
 	$ret=aggiorna($sql,$dbi,'',$num);
-echo "<br><span style=\"color: green;\">- La tabella ".$prefix."_ele_lista non richiede questo aggiornamento</span><br>";
 }
+echo "<br><span style=\"color: green;\">- La tabella ".$prefix."_ele_lista Ãš stata aggiornata</span><br>";
 if(!controllo($prefix.'_ele_lista','num_circ',++$num))
 {
@@ -289,10 +289,20 @@
 	$ret=aggiorna($sql,$dbi,'',$num);
 }else echo "<br><span style=\"color: green;\">- La tabella ".$prefix."_ele_voti_candidati non richiede questo aggiornamento</span><br>";
-
+/*if(controllo($prefix.'_ele_candidati','num_lista',++$num))
+{
+	$sql="update `".$prefix."_ele_candidati` as t3 set t3.num_lista=(select t2.num_lista from `".$prefix."_ele_lista` as t2 left join `".$prefix."_ele_candidati` as t1 on t2.id_lista=t1.id_lista where t2.id_lista=t3.id_lista) where t3.num_lista=0";
+	$ret=aggiorna($sql,$dbi,'',$num);
+	echo "<br>Aggiornata la tabella ".$prefix."_ele_candidati";
+}*/
 if(!controllo($prefix.'_ele_candidati','num_lista',++$num))
 {
 	$sql="ALTER TABLE `".$prefix."_ele_candidati` ADD `num_lista` INT(2) UNSIGNED NOT NULL AFTER `id_lista`";
-	$ret=aggiorna($sql,$dbi,'',$num);
-}else echo "<br><span style=\"color: green;\">- La tabella ".$prefix."_ele_candidati non richiede questo aggiornamento</span><br>";
+	$sql2="update `".$prefix."_ele_candidati` as t1 set t1.num_lista=(select t2.num_lista from `".$prefix."_ele_lista` as t2 where t2.id_lista=t1.id_lista) where t1.num_lista=0 and (select t2.num_lista from `".$prefix."_ele_lista` as t2 where t2.id_lista=t1.id_lista) is not null";
+	$ret=aggiorna($sql,$dbi,$sql2,$num);
+}else{
+	$sql="update `".$prefix."_ele_candidati` as t1 set t1.num_lista=(select t2.num_lista from `".$prefix."_ele_lista` as t2 where t2.id_lista=t1.id_lista) where t1.num_lista=0 and (select t2.num_lista from `".$prefix."_ele_lista` as t2 where t2.id_lista=t1.id_lista) is not null";
+	$ret=aggiorna($sql,$dbi,'',$num);
+	}
+echo "<br><span style=\"color: green;\">- La tabella ".$prefix."_ele_candidati Ãš stata aggiornata</span><br>";
 
 if(!controllo($prefix.'_ele_sezioni','colore',++$num))
Index: trunk/admin/modules/Elezioni/ele.php
===================================================================
--- trunk/admin/modules/Elezioni/ele.php	(revision 428)
+++ trunk/admin/modules/Elezioni/ele.php	(revision 429)
@@ -291,4 +291,5 @@
 		if ($nrvoti) {
 			echo "<a href=\"admin.php?op=controllo_voti&amp;id_cons_gen=$id_cons_gen\">$bullet "._STATO." "._VOTI."</a><br>";
+			echo "<a href=\"admin.php?op=estraidati&amp;id_cons_gen=$id_cons_gen\">$bullet "._ESTRAIDATI."</a><br>";
 		}else{
 			echo "<img src=\"modules/Elezioni/images/site.gif\" alt =\" \" align=\"middle\" border=\"0\"> "._STATO." "._VOTI."<br>";
Index: trunk/admin/modules/Elezioni/ele_estraidati.php
===================================================================
--- trunk/admin/modules/Elezioni/ele_estraidati.php	(revision 429)
+++ trunk/admin/modules/Elezioni/ele_estraidati.php	(revision 429)
@@ -0,0 +1,94 @@
+<?php
+
+/************************************************************************/
+/* Eleonline - Raccolta e diffusione dei dati elettorali                */
+/* by Roberto Gigli & Luciano Apolito                                   */
+/* http://www.eleonline.it                                              */
+/* info@eleonline.it  luciano@aniene.net rgigli@libero.it               */
+/************************************************************************/
+/* Modulo Controllo dei voti                                            */
+/* Amministrazione                                                      */
+/************************************************************************/
+
+if (!defined('ADMIN_FILE')) {
+    die ("You can't access this file directly...");
+}
+global $dbi;
+$aid=$_SESSION['aid'];
+$prefix=$_SESSION['prefix'];
+$currentlang=$_SESSION['lang'];
+$id_comune=$_SESSION['id_comune'];
+$id_cons_gen=$_GET['id_cons_gen'];
+$bgcolor1=$_SESSION['bgcolor1'];
+$bgcolor2=$_SESSION['bgcolor2'];
+
+$perms=ChiSei($id_cons_gen);
+if ($perms<16 or !$id_cons_gen) die("$perms Non hai i permessi per inserire dati, o non hai scelto la consultazione!");
+$sql="SELECT id_cons FROM ".$prefix."_ele_cons_comune where id_comune='$id_comune' and id_cons_gen=$id_cons_gen";
+$sth = $dbi->prepare("$sql");
+$sth->execute();
+list($id_cons)=$sth->fetch(PDO::FETCH_NUM);
+$sql="select id_sez from ".$prefix."_ele_sezioni where id_cons='$id_cons'";
+$sth = $dbi->prepare("$sql");
+$sth->execute();
+$tot_sez = $sth->rowCount();
+
+# Scelta argomento estrazione (gruppo,lista,candidati)
+$estrae='candidati';
+# Carica array
+
+$sql="select t2.num_lista,t2.descrizione,t1.num_cand,t1.cognome,t1.nome,t3.voti,t4.num_sez from ".$prefix."_ele_candidati as t1 left join ".$prefix."_ele_lista as t2 on t1.id_lista=t2.id_lista left join ".$prefix."_ele_voti_candidati as t3 on t1.id_cand=t3.id_cand left join ".$prefix."_ele_sezioni as t4 on t3.id_sez=t4.id_sez where t1.id_cons='$id_cons' order by t2.num_lista,t1.num_cand,t4.num_sez";
+$sth = $dbi->prepare("$sql");
+$sth->execute();
+$arsez=array();
+$ar=array();
+for ($i=1;$i<=$tot_sez;$i++) $arsez[$i+1]=$i;
+$arsez[$i+1]='TOTALE';
+while(list($num_lista,$desc_lista,$num_cand,$cognome,$nome,$voti,$num_sez)=$sth->fetch(PDO::FETCH_NUM)) {
+/*	$ar["$num_lista.0"][0]="\n$desc_lista";
+	$ar["$num_lista.$num_cand"][0]=str_replace("\t"," ","$cognome $nome");
+	if(!isset($ar["$num_lista.$num_cand"][1]))
+		for($i=1;$i<=$tot_sez;$i++) */
+	$ar["$num_lista.$num_cand"][0]=str_replace("\t"," ","\n$cognome $nome");
+	$ar["$num_lista.$num_cand"][1]="$desc_lista";
+	if(!isset($ar["$num_lista.$num_cand"][2]))
+		for($i=1;$i<=$tot_sez;$i++) 
+			$ar["$num_lista.$num_cand"][$i+1]="0";
+	$ar["$num_lista.$num_cand"][$num_sez+1]="$voti";
+	if(!isset($ar["$num_lista.$num_cand"][$i+1])) $ar["$num_lista.$num_cand"][$i+1]=0;
+	$ar["$num_lista.$num_cand"][$i+1]+=$voti;
+}
+crea_tabella($ar,$arsez);
+	
+function crea_tabella($ar,$arsez) {
+	global $dbi,$prefix,$id_comune,$id_cons_gen;
+	$sql="SELECT descrizione,simbolo,stemma FROM ".$prefix."_ele_comuni where id_comune='$id_comune' ";
+	$res = $dbi->prepare("$sql");
+	$res->execute();
+	list($descr_comune,$simbolo,$stemma) = $res->fetch(PDO::FETCH_NUM);
+	$sql="SELECT descrizione FROM ".$prefix."_ele_consultazione where id_cons_gen='$id_cons_gen' ";
+	$res = $dbi->prepare("$sql");
+	$res->execute();
+	list($descr_cons) = $res->fetch(PDO::FETCH_NUM);	
+	$datipdf="<b>Comune di $descr_comune</b> - Consultazione: $descr_cons<br/>";
+	$datipdf=stripslashes($datipdf);
+	$data=date("d-m-y G:i");
+	$nomefile=strip_tags(str_replace(array('"', "'", ' ', ','), "_", $datipdf).".xls");
+	header ("Content-Type: application/vnd.ms-excel");
+	header ("Content-Disposition: inline; filename=$nomefile");
+	$datipdf=str_replace("<br/>","\n",$datipdf);
+	$datipdf=strip_tags($datipdf);
+	echo "$datipdf";
+	echo "\t";
+	foreach($arsez as $key=>$val) echo "\t$val";
+		foreach ($ar as $key1=>$riga2) {
+			foreach ($riga2 as $key2=>$cella) {
+				echo "$cella \t";					
+			}
+		}
+#	echo"\n\n\nPowered by Eleonline http://www.eleonline.it \t \n";	
+#	echo"by luciano apolito & roberto gigli - stampato: $data \t \n";
+	die();
+}
+
+?>
Index: trunk/admin/modules/Elezioni/language/lang-en.php
===================================================================
--- trunk/admin/modules/Elezioni/language/lang-en.php	(revision 428)
+++ trunk/admin/modules/Elezioni/language/lang-en.php	(revision 429)
@@ -160,4 +160,5 @@
 define("_CIRCS","Constituencies");
 }
+define("_ESTRAIDATI", "Data Output");
 define("_AGGIORNA","Upgrade Rev");
 define("_AGGDATI","Update DB data");
Index: trunk/admin/modules/Elezioni/language/lang-it.php
===================================================================
--- trunk/admin/modules/Elezioni/language/lang-it.php	(revision 428)
+++ trunk/admin/modules/Elezioni/language/lang-it.php	(revision 429)
@@ -226,4 +226,5 @@
 define("_CIRCS","Circoscrizioni");
 }
+define("_ESTRAIDATI", "Dati per consigliere csv");
 define("_AGGIORNA","Aggiornamento Rev");
 define("_VISAFFMF","Affluenze per genere");
Index: trunk/admin/versione.php
===================================================================
--- trunk/admin/versione.php	(revision 428)
+++ trunk/admin/versione.php	(revision 429)
@@ -1,7 +1,7 @@
 <?php
 
-$versione = "3.0 rev 428";
+$versione = "3.0 rev 429";
 $version_number = $versione;
-$datarel = "09 ottobre 2024";
+$datarel = "09 novembre 2024";
 $version = "Eleonline $version_number (<i>Data Release: $datarel</i>)";
 
