source: trunk/client/modules/Elezioni/index.php@ 371

Last change on this file since 371 was 371, checked in by roby, 2 years ago

In client:

  • rivista la funzione di esportazione pdf, xls e stampe
  • tema futura2: eliminato il taglio a 30 caratteri del nome della consultazione
  • modificata la barra da 2D a 3D per i grafici di affluenza e votanti

In admin:

  • corretta la segnalazione di errore per rosatellum su incongruità di voti al solo gruppo diversi dalla somma dei viti alle liste collegate
  • inserito check box per eliminazione del file della mappa nella riga di inserimento sede
File size: 53.6 KB
Line 
1<?php
2/************************************************************************/
3/* Eleonline - Raccolta e diffusione dei dati elettorali */
4/* by Luciano Apolito & Roberto Gigli */
5/* http://www.eleonline.it */
6/* info@eleonline.it luciano@aniene.net rgigli@libero.it */
7/************************************************************************/
8/* Ultima modifica 22 maggio 2009 luc - candidati europee */
9
10if (!defined('MODULE_FILE')) {
11 die ("Non puoi accedere al file direttamente...");
12}
13
14$param=strtolower($_SERVER['REQUEST_METHOD']) == 'get' ?
15 $_GET : $_POST;
16
17
18if (isset($param['rss'])) $rss=intval($param['rss']); else $rss='0';
19if (isset($param['xls'])) $xls=intval($param['xls']); else $xls='0';
20if (isset($param['pdf'])) $pdf=intval($param['pdf']); else $pdf='0';
21if (isset($param['datipdf'])) $datipdf=addslashes($param['datipdf']); else $datipdf='';
22if(isset($param['visgralista'])) $visgralista=1;
23if (isset($param['id_comune'])) $id_comune=intval($param['id_comune']); else $id_comune=$siteistat;
24if (isset($param['id_cons_gen'])) $id_cons_gen=intval($param['id_cons_gen']); else
25{
26 $sql="SELECT id_cons FROM ".$prefix."_ele_comuni where id_comune='$id_comune' ";
27 $res = $dbi->prepare("$sql");
28 $res->execute();
29
30 list($id_cons_pred)=$res->fetch(PDO::FETCH_NUM);
31 $sql="SELECT id_cons_gen FROM ".$prefix."_ele_cons_comune where id_cons='$id_cons_pred' ";
32 $res = $dbi->prepare("$sql");
33 $res->execute();
34
35 list($id_cons_gen)=$res->fetch(PDO::FETCH_NUM);
36}
37if (isset($param['op'])) $op=$param['op']; else $op='';
38if (isset($param['minsez'])) $minsez=intval($param['minsez']); else $minsez='';
39if (isset($param['id_lista'])) $id_lista=intval($param['id_lista']); else $id_lista='';
40if (isset($param['id_circ'])) $id_circ=intval($param['id_circ']); else $id_circ='0';
41if (isset($param['csv'])) $csv=intval($param['csv']); else $csv='';
42if (isset($param['min'])) $min=intval($param['min']); else $min= 0;
43if (isset($param['orvert'])) $orvert=intval($param['orvert']); else $orvert='';
44if (isset($param['offset'])) $offset=intval($param['offset']); else $offset='';
45if (isset($param['offsetsez'])) $offsetsez=intval($param['offsetsez']); else $offsetsez='';
46if (isset($param['perc'])) $perc=$param['perc']; else $perc='';
47if (isset($param['info'])) $info=addslashes($param['info']); else $info='';
48if (isset($param['files'])) $files=addslashes($param['files']); else $files='';
49if (isset($param['voti_lista'])) $voti_lista=intval($param['voti_lista']); else $voti_lista= 0;
50if (isset($param['perc_lista'])) $perc_lista=$param['perc_lista']; else $perc_lista= 0;
51if (isset($param['lettera'])) $lettera=addslashes($param['lettera']); else $lettera='';
52if (isset($param['ordine'])) $ordine=addslashes($param['ordine']); else $ordine='';
53if (isset($param['id_gruppo'])) $id_gruppo=intval($param['id_gruppo']); else $id_gruppo='';
54if (isset($param['tipo_cons'])) $tipo_cons=intval($param['tipo_cons']); else $tipo_cons='';
55if (isset($param['descr_circ'])) $descr_circ=intval($param['descr_circ']); else $descr_circ='';
56
57
58# anti-xss nov. 2009
59$id_comune=htmlentities($id_comune);
60$id_comune=intval($id_comune);
61$perc=htmlentities($perc);
62$perc_lista=floatval($perc_lista);
63#$datipdf= htmlentities($datipdf);
64$op= htmlentities($op);
65$info= htmlentities($info);
66$files=htmlentities($files);
67$lettera=htmlentities($lettera);
68$ordine=htmlentities($ordine);
69$cap='';
70global $limite;
71$sql="SELECT id_conf FROM ".$prefix."_ele_cons_comune where id_cons_gen='$id_cons_gen' and id_comune='$id_comune'" ;
72 $res = $dbi->prepare("$sql");
73 $res->execute();
74
75list($hondt) = $res->fetch(PDO::FETCH_NUM);
76
77$sql = "SELECT t3.genere,t1.tipo_cons,t1.descrizione,t2.id_cons_gen FROM ".$prefix."_ele_consultazione as t1, ".$prefix."_ele_cons_comune as t2, ".$prefix."_ele_tipo as t3 where t1.tipo_cons=t3.tipo_cons and t2.id_comune=$id_comune and t1.id_cons_gen=t2.id_cons_gen and t2.id_cons_gen='$id_cons_gen' and t2.chiusa!='2' ";
78 $res = $dbi->prepare("$sql");
79 $res->execute();
80
81$tot=$res->rowCount();
82if ($tot>0 and $id_cons_gen>0) {
83 $sql = "SELECT t3.genere,t1.tipo_cons,t1.descrizione,t2.id_cons_gen FROM ".$prefix."_ele_consultazione as t1, ".$prefix."_ele_cons_comune as t2, ".$prefix."_ele_tipo as t3 where t1.tipo_cons=t3.tipo_cons and t2.id_comune=$id_comune and t1.id_cons_gen=t2.id_cons_gen and t2.id_cons_gen='$id_cons_gen' and t2.chiusa!='2'";
84}else{
85 $sql = "SELECT t3.genere,t1.tipo_cons,t1.descrizione,t2.id_cons_gen FROM ".$prefix."_ele_consultazione as t1, ".$prefix."_ele_cons_comune as t2, ".$prefix."_ele_tipo as t3 where t1.tipo_cons=t3.tipo_cons and t2.id_comune=$id_comune and t1.id_cons_gen=t2.id_cons_gen and t2.chiusa!='2' order by t1.data_fine desc limit 0,1 ";
86}
87$res = $dbi->prepare("$sql");
88$res->execute();
89
90if ($res) list($genere,$tipo_cons,$descr_cons,$id_cons_gen) = $res->fetch(PDO::FETCH_NUM);
91
92if ($tipo_cons!=3) $limite=0;
93
94$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'" ;
95$res = $dbi->prepare("$sql");
96$res->execute();
97
98list($id_cons) = $res->fetch(PDO::FETCH_NUM);
99
100$sql="SELECT t1.descrizione, t1.tipo_cons, t2.genere, t2.voto_g, t2.voto_l, t2.voto_c, t2.circo FROM ".$prefix."_ele_consultazione as t1,".$prefix."_ele_tipo as t2 where t1.tipo_cons=t2.tipo_cons and t1.id_cons_gen='$id_cons_gen' ";
101$res = $dbi->prepare("$sql");
102$res->execute();
103
104list($descr_cons,$tipo_cons,$genere,$votog,$votol,$votoc,$circo) = $res->fetch(PDO::FETCH_NUM);
105
106// esiste consultazione e toglie blocco nel caso non esista
107$sql="SELECT t1.id_cons_gen,t1.descrizione 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 t2.chiusa!='2' order by t1.data_fine desc" ;
108 $res = $dbi->prepare("$sql");
109 $res->execute();
110
111 $esiste_cons=$res->rowCount();
112 if($esiste_cons<='0')$blocco=0;
113
114//carica limite e fascia per il comune
115$sql="SELECT limite FROM ".$prefix."_ele_conf where id_conf='$hondt'" ;
116 $res = $dbi->prepare("$sql");
117 $res->execute();
118
119list($limite) = $res->fetch(PDO::FETCH_NUM);
120$sql="SELECT id_fascia FROM ".$prefix."_ele_cons_comune where id_comune='$id_comune' and id_cons='$id_cons'";
121 $res = $dbi->prepare("$sql");
122 $res->execute();
123
124list($fascia) = $res->fetch(PDO::FETCH_NUM);
125if(!$id_circ){
126$sql="SELECT id_circ FROM ".$prefix."_ele_circoscrizione where id_cons='$id_cons limit 0,1 order num_circ asc' ";
127 $res = $dbi->prepare("$sql");
128 $res->execute();
129
130list($id_circ) = $res->fetch(PDO::FETCH_NUM);
131}
132
133// rss oppure foglio elettronico
134if ($rss!=1 && $xls!=1 && $pdf!=1){
135 $index = 1;
136 $sql="SELECT descrizione,simbolo,cap FROM ".$prefix."_ele_comuni where id_comune='$id_comune' ";
137 $res = $dbi->prepare("$sql");
138 $res->execute();
139
140 list($descr_com,$simbolo,$cap) = $res->fetch(PDO::FETCH_NUM);
141 $descr_com =stripslashes($descr_com);
142 # titolo pagina 2015
143 include_once("modules/Elezioni/funzioni.php");
144 $pagetitle= pagetitle($op,$info);
145 $pagetitle= $descr_com." - ".$descr_cons." - ".$pagetitle;
146
147 include("header.php");
148 if($csv!=1){
149 //include_once("modules/Elezioni/funzioni.php");
150 echo "<table width=\"100%\"><tr><td>";
151 $siteistat=$id_comune;
152 if($simbolo!=''){
153 echo "<img src=\"modules.php?name=Elezioni&amp;file=foto&amp;id_comune=".$id_comune."\" alt=\"logo\" />";
154 }else{
155 echo "<img src=\"modules/Elezioni/images/logo.gif\" alt=\"logo\" height=\"100\" />";
156 }
157
158
159
160 //echo "<img src=\"modules.php?name=Elezioni&amp;file=foto&amp;id_comune=".$id_comune."\" alt=\"mappa\" />";
161 echo "</td><td> "._COMUNE."<b> $descr_com </b><br />
162 "._RISULTA." "._CONSULTA."<h1>$descr_cons</h1>";
163
164 if ($circo){ // elenco per scelta circoscrizione
165 echo "</td></tr><tr><td></td><td class=\"bggray\"><table class=\"table-80\"><tr><td class=\"table-main\"><form id=\"circo\" method=\"post\" action=\"modules.php\">";
166 $sql="SELECT id_circ,descrizione,num_circ from ".$prefix."_ele_circoscrizione where id_cons=$id_cons";
167 $res_sez = $dbi->prepare("$sql");
168 $res_sez->execute();
169
170 $pop=$op;
171 if($pop=='partiti') $pop='gruppo';
172 echo "<input type=\"hidden\" name=\"pagina\" value=\"modules.php?name=Elezioni&amp;op=$pop&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;info=$info&amp;id_circ=\"></input>";
173 echo ""._SCELTA_CIR.":<b>
174 <select name=\"id_circ\" class=\"blu\" onChange=\"top.location.href=this.form.pagina.value+this.form.id_circ.options[this.form.id_circ.selectedIndex].value;return false\">";
175 while(list($id_rif,$descrizione,$num_cir)=$res_sez->fetch(PDO::FETCH_NUM)) {
176 if (!$id_circ) $id_circ=$id_rif;
177 $sel = ($id_rif == $id_circ) ? "selected=\"selected\"" : "";
178 echo "<option value=\"$id_rif\" $sel>";
179 for ($j=strlen($num_cir);$j<2;$j++) { echo "&nbsp;&nbsp;";}
180 echo "$num_cir) ".$descrizione."</option>";
181 }
182 echo "</select></b></form></td></tr></table>";
183
184 }
185 echo ""._DISCLAIMER."";
186 echo "</td></tr></table>";
187 }
188 }
189
190if (!isset($min)) $min=0;
191
192/************************
193Funzione Menu a cascata
194*************************/
195function menu() {
196 global $hondt,$lang,$multicomune, $tema, $op, $prefix, $dbi, $offset, $min,$descr_cons,$info,$dati, $votog,$votol,$votoc,$circo, $id_cons,$tipo_cons,$genere,$descr_cons,$id_cons_gen,$id_comune,$id_circ,$minsez,$offsetsez, $limite,$hondt,$tema_on,$js,$visgralista;
197
198$tema=htmlentities($tema); //xss
199# include menu da tema
200if (file_exists("temi/$tema/menu.php")) {
201 include_once("temi/$tema/menu.php");
202 }else{
203 include_once("modules/Elezioni/menu.php");
204}
205
206}
207
208
209
210/********************************************
211Funzione Come si vota, link, numeri e servizi
212visuallizza la stringa dei dati generali
213********************************************/
214
215function come($info) {
216global $prefix, $dbi, $offset, $min,$id_cons,$tipo_cons,$descr_cons;
217
218$tab='';
219if ($info=="come") $tab="_ele_come";
220elseif ($info=="numeri") $tab="_ele_numeri";
221elseif ($info=="servizi") $tab="_ele_servizi";
222elseif ($info=="link") $tab="_ele_link";
223else $tab="_ele_come";
224
225
226 global $user, $admin, $cookie, $textcolor2, $prefix, $dbi;
227 $sql="select mid, title, preamble, content,editimage from ".$prefix."$tab where id_cons='$id_cons' order by mid ";
228 $result = $dbi->prepare("$sql");
229 $result->execute();
230
231 if ($result->rowCount() == 0) {
232 return;
233 } else {
234 while (list($mid, $title, $preamble,$content, $editimage) = $result->fetch(PDO::FETCH_NUM)) {
235 if ($title != "" && $preamble != "") {
236
237 if ($info=="link"){
238
239 echo "<div class=\"message\">
240 <b><a href=\"$preamble\">$title</a></b>
241 $content
242 </div>";
243
244 }else{
245 echo "<div><b>$title</b><br /></div>";
246
247
248 echo "<div class=\"message\">$preamble<br /><br /></div>";
249
250 echo "<div class=\"message\">$content</div>";
251 }
252
253 echo "<br />";
254
255 }
256 }
257 }
258
259}
260
261
262
263/****************
264Funzione dati Generali
265visuallizza la stringa dei dati generali
266****************/
267
268
269function dati() {
270/*Funzione di visualizzazione dati generali */
271 global $admin, $prefix, $dbi, $offset, $votog, $votol, $votoc, $min,$id_cons,$tipo_cons,$descr_cons,$id_cons_gen,$id_comune,$genere,$id_circ;
272
273 $sql="select * from ".$prefix."_ele_circoscrizione where id_cons='$id_cons' ";
274 $res = $dbi->prepare("$sql");
275 $res->execute();
276
277 $sql="select * from ".$prefix."_ele_sede where id_cons='$id_cons' ";
278 $ressede = $dbi->prepare("$sql");
279 $ressede->execute();
280
281 $sql="select * from ".$prefix."_ele_sezioni where id_cons='$id_cons' ";
282 $res3 = $dbi->prepare("$sql");
283 $res3->execute();
284
285 $circo = $res->rowCount();
286 $sedi = $ressede->rowCount();
287 $sez = $res3->rowCount();
288
289 echo "<div><b>"._DATIG."</b></div> ";
290 echo "<table class=\"table-80\"><tr class=\"bggray\">";
291 echo "<td ><b>"._AVENTI."</b></td>"
292 ."<td ><b>"._MASCHI."</b></td>"
293 ."<td ><b>"._FEMMINE."</b></td>";
294 if ($circo>1)
295 echo "<td ><b><a href=\"modules.php?name=Elezioni&amp;op=circo&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune\">"._CIRCS."</a></b></td>";
296 else
297 echo "<td ><b><a href=\"modules.php?name=Elezioni&amp;op=circo&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune\">"._SEDI."</a></b></td>";
298 echo "<td><b><a href=\"modules.php?name=Elezioni&amp;op=sezione&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune\">"._SEZIONI."</a></b></td>"
299 ."<td ><b><a href=\"modules.php?name=Elezioni&amp;op=gruppo&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;id_circ=$id_circ\">"._GRUPPI."</a></b></td>";
300
301
302
303
304
305 // camera e senato con raggruppamenti
306 $sql="select * from ".$prefix."_ele_lista where id_cons='$id_cons' ";
307 $res3 = $dbi->prepare("$sql");
308 $res3->execute();
309
310 $liste = $res3->rowCount();
311 if($liste and $genere!=4){
312 echo "<td><b><a href=\"modules.php?name=Elezioni&amp;op=liste&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune\">"._LISTE."</a></b></td>";
313 }
314
315
316
317 $candi=0;
318
319 // se non referendum
320 if ($genere>0 and !$votoc){
321 echo "<td><b><a href=\"modules.php?name=Elezioni&amp;op=candi&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune\">"._CANDIDATI."</a></b></td>";
322 $sql="select id_cons from ".$prefix."_ele_candidati where id_cons='$id_cons' ";
323 $res1 = $dbi->prepare("$sql");
324 $res1->execute();
325
326 $candi = $res1->rowCount();
327 }
328 // se non europee (non liste e candidati)
329 if ($genere!=4){
330 $sql="select id_cons from ".$prefix."_ele_gruppo where id_cons='$id_cons' ";
331 }else{
332 $sql="select id_cons from ".$prefix."_ele_lista where id_cons='$id_cons' ";
333 }
334 $res2 = $dbi->prepare("$sql");
335 $res2->execute();
336 $gruppo = $res2->rowCount();
337
338 if($circo==1) $circo=$sedi;
339 $sql="select sum(maschi),sum(femmine), sum(maschi+femmine) from ".$prefix."_ele_sezioni where id_cons=$id_cons";
340 $res4 = $dbi->prepare("$sql");
341 $res4->execute();
342
343 if($res4) list($maschi,$femmine,$tot) = $res4->fetch(PDO::FETCH_NUM);
344 echo "</tr><tr class=\"bggray2\">"
345
346 ."<td><b>$tot</b>"
347 ."</td><td><b>$maschi</b>"
348 ."</td><td><b>$femmine</b>"
349 ."</td><td><b>$circo</b>"
350 ."</td><td><b>$sez</b>"
351 ."</td><td><b>$gruppo</b>";
352// if ($tipo_cons >9) echo"</td><td><b>$liste</b>";
353 if ($liste and $genere!=4) echo"</td><td><b>$liste</b>";
354
355 if ($genere>2 && !$votoc) echo"</td><td><b>$candi</b>";
356
357 echo "</td></tr></table>";
358 //CloseTable();
359}
360//////////////////////////////////////////////////////////////
361// votanti
362//////////////////////////////////////////////////////////////
363
364
365
366function circo() {
367
368/******************************************************/
369/*Funzione di visualizzazione sede */
370/*****************************************************/
371 global $admin, $prefix, $dbi, $offset, $min,$id_cons,$file,$id_cons_gen,$id_comune ,$prev,$next;
372 $sql="SELECT * FROM ".$prefix."_ele_circoscrizione where id_cons='$id_cons' ";
373 $res = $dbi->prepare("$sql");
374 $res->execute();
375
376 $max = $res->rowCount();
377
378 //OpenTable();
379
380 dati();
381
382
383 $offset=10;
384 if (!isset($min)) $min=0;
385 $go="circo";
386
387 $sql="select * from ".$prefix."_ele_circoscrizione where id_cons='$id_cons' ORDER BY num_circ
388 LIMIT $min,$offset";
389 $result = $dbi->prepare("$sql");
390 $result->execute();
391
392$numcirc=$result->rowCount();
393if ($numcirc>1){
394 echo "<div><b>"._CIRCS."</b></div><br /><br />
395 <table class=\"table-80\"><tr class=\"bggray\">"
396 ."<td ><b>"._NUM."</b></td>"
397 ."<td ><b>"._CIRCO."</b></td>"
398 ."<td ><b>"._INDIRIZZO."</b></td>"
399 ."<td><b>"._TEL."</b></td></tr>";
400}else{
401 echo "<div><b></b></div><br /><br />
402 <table class=\"table-80\"><tr class=\"bggray\">"
403 ."<td ><b>"._INDIRIZZO."</b></td>"
404 ."<td><b>"._TEL."</b></td></tr>";
405}
406
407 while(list($id_cons2,$id_circ,$num_circ,$descr_circ) = $result->fetch(PDO::FETCH_NUM)) {
408#if($numcirc==1) {$descr_circ=''; $num_circ='';}
409 if (!($num_circ===0)) {
410
411 echo "<tr class=\"bggray3\">";
412 if ($numcirc>1) {
413 echo "<td><b>$num_circ</b>"
414 ."</td><td><b>";
415 echo "<a href=\"modules.php?name=Elezioni&amp;op=sezione&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;id_circ=$id_circ&amp;descr_circ=$descr_circ\">$descr_circ</a></b></td>";
416 }
417
418 // dati sede
419 $sql="select id_sede,indirizzo,telefono1,telefono2, mappa, filemappa from ".$prefix."_ele_sede where id_cons='$id_cons' and id_circ='$id_circ'";
420 $result1 = $dbi->prepare("$sql");
421 $result1->execute();
422
423 $righe=$result1->rowCount();$i=0;
424 while(list($id_sede,$indir,$tel1,$tel2,$mappa,$filemappa)=$result1->fetch(PDO::FETCH_NUM)){
425
426 $i++;
427 echo "<td><b><a href=\"modules.php?name=Elezioni&amp;op=sezione&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;id_sede=$id_sede\">$indir</a></b>"
428 ."</td><td><b>$tel1 </b></td><td><b> $tel2</b></td></tr>";
429
430 if ($i<$righe) echo"<tr class=\"bggray3\">";
431 if ($numcirc>1) echo "<td></td><td></td>";
432
433 }
434 }
435 }
436 echo "</table>";
437
438 page($id_cons_gen,$go,$max,$min,$prev,$next,$offset,$file);
439
440//CloseTable();
441}
442
443/******************************************************/
444/*Funzione di visualizzazione globale sezioni */
445/*****************************************************/
446
447function sezione() {
448 global $admin, $prefix, $dbi, $offset, $min,$votog,$circo, $id_cons_gen,$id_circ,$descr_circ,$id_cons,$file,$prev,$next,$id_comune,$googlemaps;
449 global $descr_com,$cap;
450 if(!isset($_GET['id_circ'])) unset($id_circ);
451 dati();
452 $totali_t=0;$maschi_t=0;$femmine_t=0;
453 $param=strtolower($_SERVER['REQUEST_METHOD']) == 'get' ? $_GET : $_POST;
454 //mappa
455if (isset($param['id_sede'])) $id_sede=intval($param['id_sede']); else $id_sede='0';
456 if ($id_sede!='0' && $googlemaps!='1'){
457 $sql="SELECT indirizzo FROM ".$prefix."_ele_sede where id_sede='$id_sede'";
458 $res1 = $dbi->prepare("$sql");
459 $res1->execute();
460 list($ind) = $res1->fetch(PDO::FETCH_NUM);
461 $indir=str_replace(" ","+",$ind.",+".$descr_com.",+".$cap);
462 echo "<br /><div><a href=\"https://maps.google.it/maps/place/".$indir."\"><img src=\"modules.php?name=Elezioni&amp;file=foto&amp;id_sede=".$id_sede."\" alt=\"mappa\" /></a></div>";
463 }elseif($id_sede!='0' && $googlemaps=='1'){
464 $mappa=googlemaps(); //echo $mappa;
465 echo "
466 <div id=\"map\" style=\"width: 400px; height: 400px; margin: 0 auto; position: relative; top:0; overflow: hidden;\"></div>
467";
468 // echo '<div id="map"></div>';
469 }
470
471 $offset=15;
472 if (!isset($min)) $min=0;
473 if (!isset($id_circ)) $id_circ=0;
474 $go="sezione";
475 $sql="SELECT descrizione FROM ".$prefix."_ele_circoscrizione where id_cons='$id_cons'";
476 $res2 = $dbi->prepare("$sql");
477 $res2->execute();
478
479 $numcirc = $res2->rowCount();
480$sql="SELECT descrizione FROM ".$prefix."_ele_circoscrizione where id_cons='$id_cons' AND id_circ='$id_circ' ";
481 $res2 = $dbi->prepare("$sql");
482 $res2->execute();
483
484 list($descr_circ) = $res2->fetch(PDO::FETCH_NUM);
485if($numcirc>1){
486 echo "<div><b>"._SEZIONI." ";
487 if ($id_circ) echo "di $descr_circ";
488 if ($id_sede) echo _SINGOLA;
489 echo "</b></div>";
490 }
491 echo "<br />"
492 ."<table class=\"table-80\"><tr class=\"bggray\">"
493 ."<td class=\"td-5\"><b>"._NUM."</b></td>"
494 ."<td ><b>"._INDIRIZZO."</b></td>"
495 ."<td class=\"td-5\"><b>"._MASCHI."</b></td>"
496 ."<td class=\"td-5\"><b>"._FEMMINE."</b></td>"
497 ."<td><b>"._TOTS." "._AVENTI."</b></td></tr>";
498 // link alle sedi
499
500 // link alle circoscrizioni
501
502 if ($id_circ) {
503
504 $sql="SELECT id_sede FROM ".$prefix."_ele_sede where id_cons='$id_cons' and id_circ='$id_circ' ";
505 $res1 = $dbi->prepare("$sql");
506 $res1->execute();
507
508 //$max = mysql_num_rows($res);
509 $i=0;// n. sezioni x circo
510 while(list($id_sede) = $res1->fetch(PDO::FETCH_NUM)){
511
512 $circos=" AND id_sede='$id_sede'";
513 $sql="SELECT * FROM ".$prefix."_ele_sezioni where id_cons='$id_cons' $circos ";
514 $res = $dbi->prepare("$sql");
515 $res->execute();
516
517 //$tot_sez = mysql_num_rows($res);
518 $sql="select id_cons,id_sez,id_sede,num_sez, maschi, femmine from ".$prefix."_ele_sezioni where id_cons='$id_cons' $circos ORDER BY num_sez LIMIT $min,$offset";
519 $result = $dbi->prepare("$sql");
520 $result->execute();
521
522
523 while(list($id_cons2,$id_sez,$id_sede,$num_sez, $maschi, $femmine) = $result->fetch(PDO::FETCH_NUM)) {
524 // dati circoscrizione
525 $i++;
526 $sql="select indirizzo from ".$prefix."_ele_sede where id_sede='$id_sede'";
527 $result1 = $dbi->prepare("$sql");
528 $result1->execute();
529
530 list($indir)=$result1->fetch(PDO::FETCH_NUM);
531
532 $totali=$maschi+$femmine;
533 $totali_t=$totali_t+$totali;
534 $maschi_t=$maschi_t+$maschi;
535 $femmine_t=$femmine_t+$femmine;
536 echo "<tr><td><b>$num_sez</b>"
537 ."</td><td><b><a href=\"modules.php?name=Elezioni&amp;op=sezione&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;id_sede=$id_sede\">$indir</a></b>"
538 ."</td><td >$maschi"
539 ."</td><td >$femmine"
540 ."</td><td ><b>$totali</b></td></tr>";
541 }
542
543 }
544 echo "<tr class=\"bggray2\" ><td>"._SEZIONI."<br />n. $i</td>
545 <td><b>"._TOT."<br />$descr_circ</b>
546 </td><td ><b>"._MASCHI."<br /><span class=\"red\">$maschi_t</span></b>
547 </td><td ><b>"._FEMMINE."<br /><span class=\"red\">$femmine_t</span></b></td>
548 <td ><b>"._TOTS."<br /><span class=\"red\">$totali_t</span></b></td></tr>";
549 echo "</table></center>";
550 }else{
551 $circos='';
552 if ($id_sede) $circos=" AND id_sede='$id_sede'";
553
554 $sql="SELECT * FROM ".$prefix."_ele_sezioni where id_cons='$id_cons' $circos ";
555 $res = $dbi->prepare("$sql");
556 $res->execute();
557
558 $max = $res->rowCount();
559 $sql="select id_cons,id_sez,id_sede,num_sez, maschi, femmine from ".$prefix."_ele_sezioni where id_cons='$id_cons' $circos ORDER BY num_sez LIMIT $min,$offset";
560 $result = $dbi->prepare("$sql");
561 $result->execute();
562
563
564 while(list($id_cons2,$id_sez,$id_sed,$num_sez, $maschi, $femmine) = $result->fetch(PDO::FETCH_NUM)) {
565
566 // dati circoscrizione
567 $sql="select indirizzo from ".$prefix."_ele_sede where id_sede='$id_sed'";
568 $result1 = $dbi->prepare("$sql");
569 $result1->execute();
570
571 list($indir)=$result1->fetch(PDO::FETCH_NUM);
572 $totali=$maschi+$femmine;
573 $totali_t=$totali_t+$totali;
574 $maschi_t=$maschi_t+$maschi;
575 $femmine_t=$femmine_t+$femmine;
576 echo "<tr class=\"bggray2\"><td><b>$num_sez</b>"
577 ."</td><td><b><a href=\"modules.php?name=Elezioni&amp;op=sezione&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;id_sede=$id_sed\"><img class=\"nobordo\" src=\"modules/Elezioni/images/mappa.gif\" style=\"text-align:left;\" alt=\"mappa\"/>
578$indir</a></b>"
579 ."</td><td>$maschi"
580 ."</td><td>$femmine"
581 ."</td><td><b>$totali</b></td></tr>";
582 }
583 if($id_sede)echo "<tr class=\"bggray\"><td><br /><br /></td>
584 <td><b>"._TOTS."<br />$indir</b>
585 </td><td ><b>"._MASCHI."<br /><span class=\"red\">$maschi_t</span></b>
586 </td><td ><b>"._FEMMINE."<br /><span class=\"red\">$femmine_t</span></b></td>
587 <td ><b>"._TOTS."<br /><span class=\"red\">$totali_t</span></b></td></tr>";
588
589 echo "</table>";
590
591}
592 if(!isset($max)) $max=0;
593 page($id_cons_gen,$go,$max,$min,$prev,$next,$offset,$file);
594
595
596//CloseTable();
597}
598
599
600
601/******************************************************/
602/*Funzione di visualizzazione globale gruppo */
603/*****************************************************/
604
605function gruppo() {
606 global $fascia, $limite, $admin, $prefix, $dbi, $offset, $min, $id_cons_gen,$genere, $id_cons,$tipo_cons,$file,$prev,$next,$id_circ,$id_comune,$descr_circ,$id_sez,$votog,$votol,$circo,$limite;
607 //dati();
608 // definizione variabile per button 'ok' nei form
609 $button="<input name=\"vai\" type=\"image\" src=\"modules/Elezioni/images/ok2.jpg\" alt=\"ok\" title=\"ok\" />";
610
611 // numero sezioni scrutinate sul gruppo
612 // Verificare per la circoscrizione
613 if ($genere==0) {$tab="ref";}else{$tab="gruppo";}
614 if ($votog or $genere==4) {$tab="lista";}else{$tab="gruppo";}
615 if($circo){
616 if(!$id_circ){
617 $sql="select id_circ from ".$prefix."_ele_circoscrizione where id_cons='$id_cons' limit 0,1";
618 $res = $dbi->prepare("$sql");
619 $res->execute();
620
621 list($id_circ)=$res->fetch(PDO::FETCH_NUM);
622 }
623 $sql="select t1.id_sez,sum(t1.voti) from ".$prefix."_ele_voti_$tab as t1, ".$prefix."_ele_$tab as t2 where t1.id_$tab=t2.id_$tab and t1.id_cons='$id_cons' and t2.id_circ='$id_circ' group by t1.id_sez";
624 }else $sql="select id_sez from ".$prefix."_ele_voti_".$tab." where id_cons='$id_cons' group by id_sez ";
625 $res = $dbi->prepare("$sql");
626 $res->execute();
627
628 $numero=$res->rowCount();
629 if($circo) $circos="and id_circ='$id_circ'"; else $circos='';
630
631 if($circo) $sql="select * from ".$prefix."_ele_sezioni as t1, ".$prefix."_ele_sede as t2 where t1.id_sede=t2.id_sede and t1.id_cons='$id_cons' and t2.id_circ=$id_circ";
632 else $sql="select * from ".$prefix."_ele_sezioni where id_cons='$id_cons' $circos ";
633 $res = $dbi->prepare("$sql");
634 $res->execute();
635
636 $sezioni=$res->rowCount();
637 if ($numero!=0) {
638# echo "<div><h2>"._SEZSCRU." $numero "._SU." $sezioni</h2></div>";
639
640 ####################### inserimento scrutinio in percentuale -- per i gruppi
641 if($genere==0)
642 $sql="SELECT COUNT(0) FROM ".$prefix."_ele_voti_ref WHERE id_cons ='$id_cons' group by id_sez";
643 else
644 $sql="SELECT COUNT(0) FROM ".$prefix."_ele_sezioni WHERE validi <>'0' AND id_cons ='$id_cons' group by id_sez";
645 $resn = $dbi->prepare("$sql");
646 $resn->execute();
647
648 $NicolaSezScrut = $resn->rowCount();
649 $sql="SELECT COUNT( id_sez ) FROM ".$prefix."_ele_sezioni WHERE id_cons ='$id_cons'";
650 $res = $dbi->prepare("$sql");
651 $res->execute();
652
653 $NicolaSezTot = $res->fetch(PDO::FETCH_NUM);
654
655 if($genere==0) $sql="select sum(si+no), sum(bianchi+nulli+contestati) from ".$prefix."_ele_voti_ref where id_cons='$id_cons' group by id_gruppo";
656 else $sql="select sum(validi),sum(nulli+bianchi+contestati+voti_nulli) from ".$prefix."_ele_sezioni where id_cons='$id_cons'";
657 $resperc = $dbi->prepare("$sql");
658 $resperc->execute();
659
660 list($scruvalidi,$scrunulli)=$resperc->fetch(PDO::FETCH_NUM);
661 $sql="select sum(voti_complessivi) from ".$prefix."_ele_voti_parziale where id_cons='$id_cons' group by data,orario order by data desc, orario desc limit 0,1 ";
662 $resperc = $dbi->prepare("$sql");
663 $resperc->execute();
664
665 list($totschede)=$resperc->fetch(PDO::FETCH_NUM);
666 if($totschede)
667 $grpercscru=number_format(($scruvalidi+$scrunulli)*100/$totschede,2);
668 else $grpercscru=0;
669# echo "<div><h2> $sql2 Dati riferiti a $numero "._SEZ." "._SU." $sezioni</h2></div>";
670 echo "<table border=\"2\"><tr><td style=\"text-align:center; \">";
671 if(!$votog and $genere!=4){ echo "<h2><b>"._GRUPPO.": </b>";
672 echo "</br>Scrutinate ".($scruvalidi+$scrunulli)." schede su $totschede ($grpercscru %) <br></h2>";
673 }
674#$numero sezioni su $sezioni<br> le schede scrutinate sono: $grpercscru %
675# echo "<div><h2> $numero "._SEZSCRU." ("._ALPERC." $grpercscru %) "._SU." $sezioni</h2></div>";
676 ####################### inserimento scrutinio in percentuale -- per le liste
677 if ($genere>2 && ($fascia>$limite or !$limite)){
678
679 if($genere==4 or ($genere==5 and $votog)) $sql="select sum(validi),sum(nulli+bianchi+voti_nulli+contestati) from ".$prefix."_ele_sezioni where id_cons='$id_cons'";
680 else $sql="select sum(validi_lista),sum(nulli+bianchi+voti_nulli+contestati+solo_gruppo+voti_nulli_lista+contestati_lista) from ".$prefix."_ele_sezioni where id_cons='$id_cons'";
681 $resperc = $dbi->prepare("$sql");
682 $resperc->execute();
683 list($scruvalidi,$scrunulli)=$resperc->fetch(PDO::FETCH_NUM);
684 if($totschede)
685 $listpercscru=number_format(($scruvalidi+$scrunulli)*100/$totschede,2);
686 else $listpercscru=0;
687 $listtotschede=$totschede;
688 $listtotvoti=($scruvalidi+$scrunulli);
689if($genere!=0 && $genere!=3)
690 echo "<h6>Voti alle Liste: pervenute: $NicolaSezScrut sezioni su $NicolaSezTot[0] <br/> Scrutinate $listtotvoti schede su $listtotschede ($listpercscru %)</h6>";
691# echo "<h6>Voti alle Liste: Scrutinate $listtotvoti schede su $listtotschede ($listpercscru %)</h6>";
692 }
693 echo "</td></tr></table> ";
694 ####################### 725
695
696 }
697
698
699
700 $offset=15;
701 if (!isset($min)) $min=0;
702 $go="gruppo";
703 if(!$votog and $genere!=4) echo "<div><h2><b>"._GRUPPO." </b><br /></h2></div>";
704 if ($tipo_cons==18 or $tipo_cons==19) echo "<div><b>I voti di lista subiranno una integrazione al termine delle operazioni sul collegio con la ripartizione pro-quota derivata dai voti sull'uninominale</b></div>";
705
706 if ($genere!=4){
707 $circos='';
708 $circol='';
709 // numero sezioni scrutinate per lista
710 if ($circo){$circos="and id_circ='$id_circ'";$circol="and t2.id_circ='$id_circ'";}
711
712
713
714 $sql="select t1.id_sez,sum(t1.voti) from ".$prefix."_ele_voti_lista as t1, ".$prefix."_ele_lista as t2 where t1.id_lista=t2.id_lista and t1.id_cons='$id_cons' $circol group by t1.id_sez";
715 $res_num_list = $dbi->prepare("$sql");
716 $res_num_list->execute();
717
718 //$res_num_list = mysql_query("select * from ".$prefix."_ele_voti_lista where id_cons='$id_cons' group by id_sez ",$dbi);
719 $numero_l=$res_num_list->rowCount();
720 // verifica delle sezioni in relazione ai candidati (comuni >=15000) non c'e' il voto di lista e quindi ci metto se scrutinate le preferenze sulla lista [$numero_c] - 5/5/2009
721 $sql="select id_sez from ".$prefix."_ele_voti_candidati where id_cons='$id_cons' group by id_sez ";
722 $res_num_list = $dbi->prepare("$sql");
723 $res_num_list->execute();
724
725 $numero_c=$res_num_list->rowCount();
726
727 $sezioni_l=$sezioni;
728
729
730 $sql="SELECT * FROM ".$prefix."_ele_gruppo where id_cons='$id_cons' $circos ";
731 $res = $dbi->prepare("$sql");
732 $res->execute();
733
734 $max = $res->rowCount();
735 $t_circos="";
736 if (!$votog){
737 if ($circo) $t_circos=" and t2.id_circ='$id_circ'";
738 $sql="select sum(t1.voti) from ".$prefix."_ele_voti_gruppo as t1 , ".$prefix."_ele_gruppo as t2 where t1.id_gruppo=t2.id_gruppo and t1.id_cons='$id_cons' $t_circos ";
739
740 // sommatoria dei voti di lista per camera e senato dal 2006 per coalizioni-->byluc
741 }else{
742 $sql="select sum(voti) from ".$prefix."_ele_voti_lista where id_cons='$id_cons'";
743 }
744 $res_pres_tutti = $dbi->prepare("$sql");
745 $res_pres_tutti->execute();
746
747 list($voti_pres_tutti) = $res_pres_tutti->fetch(PDO::FETCH_NUM);
748######gestione percentuali
749 $arval=array();$arperc=array();
750 if ($genere>0){ // no referendum
751 if (!$votog){ // no camere e senato per coalizioni
752 $sql="select sum(t1.voti),t1.id_gruppo from ".$prefix."_ele_voti_gruppo as t1 , ".$prefix."_ele_gruppo as t2 where t1.id_gruppo=t2.id_gruppo and t1.id_cons='$id_cons' $t_circos group by id_gruppo";
753
754 }else{ // sommatoria voti lista per coalizione per camere e senato
755 $sql="select sum(t1.voti),t2.id_gruppo from ".$prefix."_ele_voti_lista as t1 , ".$prefix."_ele_lista as t2 where t1.id_lista=t2.id_lista and t1.id_cons='$id_cons' $t_circos group by t2.id_gruppo";
756 }
757 $res_presidente = $dbi->prepare("$sql");
758 $res_presidente->execute();
759 while(list($voti_pres,$id_gruppo2) = $res_presidente->fetch(PDO::FETCH_NUM)) {
760 $arval[$id_gruppo2]=$voti_pres;
761 }
762 $arperc=arrayperc($arval,$voti_pres_tutti);
763
764 }
765#######
766 $sql="select id_cons ,id_gruppo ,num_gruppo, descrizione, prognome from ".$prefix."_ele_gruppo where id_cons='$id_cons' $circos ORDER BY num_gruppo LIMIT $min,$offset";
767 $result = $dbi->prepare("$sql");
768 $result->execute();
769
770 while(list($id_cons2,$id_gruppo2,$num_gruppo, $descr_gruppo,$prognome) = $result->fetch(PDO::FETCH_NUM)) {
771 if ($num_gruppo!=0) {
772 echo "<table class=\"table-80\">
773 <tr>"
774 ."<td class=\"td-5\"><b>"._NUM."</b></td>"
775 ."<td class=\"bggray\"><b>"._DESCR."</b></td>"
776 ."<td class=\"td-5\"><b>"._SIMBOLO."</b></td>
777 </tr>";
778 if ($genere>0){ // no referendum
779 if (!$votog){ // no camere e senato per coalizioni
780 $sql="select sum(voti) from ".$prefix."_ele_voti_gruppo where id_cons='$id_cons' and id_gruppo='$id_gruppo2'";
781 }else{ // sommatoria voti lista per coalizione per camere e senato
782 $sql="select sum(t1.voti) from ".$prefix."_ele_voti_lista as t1 , ".$prefix."_ele_lista as t2 where t1.id_lista=t2.id_lista and t1.id_cons='$id_cons' and t2.id_gruppo='$id_gruppo2'";
783 }
784 $res_presidente = $dbi->prepare("$sql");
785 $res_presidente->execute();
786 list($voti_pres) = $res_presidente->fetch(PDO::FETCH_NUM);
787 if ($voti_pres_tutti!=0){
788 $perc_pres=number_format($arperc[$id_gruppo2],2);
789 $var1="<h2>voti: $voti_pres <span class=\"redbig\"> $perc_pres </span>%</h2>";
790 }else {$var1="";}
791 }else{ //referendum
792 $sql="select sum(si),sum(no),sum(validi),sum(bianchi),sum(nulli),sum(contestati) from ".$prefix."_ele_voti_ref where id_cons='$id_cons' and id_gruppo='$id_gruppo2'";
793 $res_ref = $dbi->prepare("$sql");
794 $res_ref->execute();
795 if($res_ref->rowCount())
796 list($voti_si,$voti_no,$validi,$bianchi,$nulli,$conte) = $res_ref->fetch(PDO::FETCH_NUM);
797 if(($voti_si+$voti_no+$validi+$bianchi+$nulli+$conte)>0)
798 {
799 $sql="select t3.orario,t3.data from ".$prefix."_ele_rilaff as t1 left join ".$prefix."_ele_cons_comune as t2 on t1.id_cons_gen=t2.id_cons_gen left join ".$prefix."_ele_voti_parziale as t3 on t2.id_cons=t3.id_cons where t1.id_cons_gen='$id_cons_gen' and t2.id_cons='$id_cons' order by t3.data desc, t3.orario desc limit 0,1";
800 $aff = $dbi->prepare("$sql");
801 $aff->execute();
802 list($ora,$data) = $aff->fetch(PDO::FETCH_NUM);
803 $sql="select sum(voti_complessivi) from ".$prefix."_ele_voti_parziale where id_cons='$id_cons' and orario='$ora' and data='$data' and id_gruppo='$id_gruppo2'";
804 $tot_rel = $dbi->prepare("$sql");
805 $tot_rel->execute();
806 list($tot_relativo) = $tot_rel->fetch(PDO::FETCH_NUM);
807 }else{
808 $voti_si=0;$voti_no=0;$validi=0;$bianchi=0;$nulli=0;$conte=0;$tot_relativo=0;
809 }
810 // totale assoluto
811 $sql="select sum(maschi+femmine) from ".$prefix."_ele_sezioni where id_cons='$id_cons'";
812 $tot_ass = $dbi->prepare("$sql");
813 $tot_ass->execute();
814
815 list($tot_assoluto) = $tot_ass->fetch(PDO::FETCH_NUM);
816 // controlli del 15 giugno 2009
817 if($tot_assoluto)
818 $perc_tot=number_format(($tot_relativo*100)/$tot_assoluto,2);
819 else $perc_tot=0;
820
821 $tot_ref=$voti_si+$voti_no;
822 if($tot_ref){
823 $perc_si=number_format(($voti_si*100)/$tot_ref,2);
824 $perc_no=number_format(($voti_no*100)/$tot_ref,2);
825 }else{ $perc_si=0;$perc_no=0;}
826 $var1="<table class=\"table-80\" style=\"text-align: center;\">";
827 if(isset($ora)){
828 list ($ore,$minuti,$secondi)=explode(':',$ora);
829 $var1.= "<tr>
830 <td class=\"redbig\">
831 <h2>"._PERC_ASS." $ore,$minuti:<span class=\"redbig\"> $perc_tot% </span></h2></td>
832 </tr>";
833 }
834 $var1 .="<tr>
835 <td><h1>SI: $voti_si <span class=\"redbig\"> $perc_si </span>%</h1></td>
836 </tr>
837 <tr>
838 <td><h1>NO: $voti_no<span class=\"redbig\"> $perc_no </span>%
839 </h1></td>
840 </tr>
841 </table>";
842 }
843 echo "<tr>
844 <td class=\"bggray\"><h1><b>$num_gruppo</b></h1></td>
845 <td class=\"table-main\" style=\"text-align: left;\"><h1>$descr_gruppo</h1> $var1</td>";
846 if($tipo_cons!=2 and $prognome)
847 echo "<td onmouseover=\"this.style.cursor='pointer';\" onclick=\"javascript:window.open('modules.php?name=Elezioni&amp;file=foto&amp;id_gruppo=$id_gruppo2&amp;pdfvis=1')\">";
848 else echo "<td>";
849 echo "<b><img class=\"stemma\" src=\"modules.php?name=Elezioni&amp;file=foto&amp;id_gruppo=$id_gruppo2\" alt=\"immagine $descr_gruppo\" /><br>";
850 if($tipo_cons!=2 and $prognome) echo _PROGRAM;
851 echo "</b></td>";
852 echo "</tr>
853 </table>";
854 //Liste collegate
855# if ($numero!=0 and !$votol and $genere>1)
856 // verifica delle sezioni in relazione ai candidati (comuni >=15000 $LIMIT>=4 non c'e' il voto di lista 5/5/2009
857
858# if ($genere!=2 && $fascia>$limite)
859# echo "<div><h6>Liste:"._SEZSCRU." $numero_l "._SU." $sezioni_l</h6></div>";
860# else
861# if(!$circo and $votog) // non per le circoscrizionali, senato e camera
862# echo "<div><h6>"._SEZSCRU." $numero_c "._SU." $sezioni_l</h6></div>";
863 echo "<table class=\"table-80\"><tr>";
864 $sql="select id_cons ,id_lista ,num_lista, descrizione from ".$prefix."_ele_lista where id_cons='$id_cons' and id_gruppo='$id_gruppo2' ORDER BY num_lista " ;
865 $result2 = $dbi->prepare("$sql");
866 $result2->execute();
867 $i=0;
868 while(list($id_cons2,$id_lista2,$num_lista, $descr_lista) = $result2->fetch(PDO::FETCH_NUM)) {
869 if ($num_lista!=0) {
870 $sql="select sum(voti) from ".$prefix."_ele_voti_lista where id_cons='$id_cons' and id_lista='$id_lista2'";
871 $res_lista = $dbi->prepare("$sql");
872 $res_lista->execute();
873 list($voti_lista) = $res_lista->fetch(PDO::FETCH_NUM);
874// calcolo della percentuale
875 if ($circo){ // circoscrizioni
876 $voti_lista_tutti=0;
877 $sql="select id_lista from ".$prefix."_ele_lista where id_circ='$id_circ'";
878 $res_circ = $dbi->prepare("$sql");
879 $res_circ->execute();
880 while(list($lista_id) = $res_circ->fetch(PDO::FETCH_NUM)){
881 $sql="select sum(voti) from ".$prefix."_ele_voti_lista where id_lista='$lista_id'";
882 $res_circ_voti = $dbi->prepare("$sql");
883 $res_circ_voti->execute();
884 list($voti) = $res_circ_voti->fetch(PDO::FETCH_NUM);
885 $voti_lista_tutti=$voti_lista_tutti+$voti;
886 }
887 }else{
888
889// tutti
890 $sql="select sum(voti) from ".$prefix."_ele_voti_lista where id_cons='$id_cons'";
891 $res_lista_tutti = $dbi->prepare("$sql");
892 $res_lista_tutti->execute();
893 list($voti_lista_tutti) = $res_lista_tutti->fetch(PDO::FETCH_NUM);
894 }
895 if($voti_lista_tutti!=0){
896 $perc_lista=number_format(($voti_lista*100)/$voti_lista_tutti,5);
897 $perc_lista=number_format($perc_lista,3);// add luc 11 feb 2007
898 }else{
899 $perc_lista='';
900 }
901 $i++;
902 echo "<td class=\"table-main\"><a href=\"modules.php?name=Elezioni&amp;id_gruppo=$id_gruppo2&amp;id_circ=$id_circ&amp;id_cons_gen=$id_cons_gen&amp;id_lista=$id_lista2&amp;op=partiti&amp;voti_lista=$voti_lista&amp;perc_lista=$perc_lista&amp;id_comune=$id_comune\">
903 <img class=\"stemma\" src=\"modules.php?name=Elezioni&amp;file=foto&amp;id_lista=$id_lista2\" alt=\"stemma\" /><br />N. $num_lista $descr_lista";
904 if ($voti_lista) echo "<br />voti: $voti_lista ";
905 if ($perc_lista) echo "<span class=\"red\"> $perc_lista </span>%";
906 echo "</a></td>";
907 }
908 if (($i%3) ==0) echo "</tr><tr>";
909 }
910 if (($i%3) !=0)echo "</tr></table>";else echo "<td></td></tr></table>";
911 }
912 }
913 echo "";
914 }else{
915 // tot liste
916 $sql="SELECT id_lista FROM ".$prefix."_ele_lista where id_cons='$id_cons' $circos ";
917 $res = $dbi->prepare("$sql");
918 $res->execute();
919 $max = $res->rowCount();
920 // tot voti liste
921 if($circo) $sql="select sum(t1.voti) from ".$prefix."_ele_voti_lista as t1, ".$prefix."_ele_lista as t2 where t1.id_lista=t2.id_lista and t1.id_cons='$id_cons' and t2.id_circ='$id_circ'";
922 else $sql="select sum(voti) from ".$prefix."_ele_voti_lista where id_cons='$id_cons'";
923 $res_lista_tutti = $dbi->prepare("$sql");
924 $res_lista_tutti->execute();
925 list($voti_lista_tutti) = $res_lista_tutti->fetch(PDO::FETCH_NUM);
926 $sql="select id_cons ,id_lista ,num_lista, descrizione from ".$prefix."_ele_lista where id_cons='$id_cons' $circos ORDER BY num_lista LIMIT $min,$offset";
927 $result = $dbi->prepare("$sql");
928 $result->execute();
929 while(list($id_cons2,$id_lista,$num_lista, $descr_lista) = $result->fetch(PDO::FETCH_NUM)) {
930 if ($num_lista!=0) {
931 // voti lista
932 $sql="select sum(voti) from ".$prefix."_ele_voti_lista where id_cons='$id_cons' and id_lista='$id_lista'";
933 $res_lista = $dbi->prepare("$sql");
934 $res_lista->execute();
935
936 list($voti_lista) = $res_lista->fetch(PDO::FETCH_NUM);
937 if($voti_lista_tutti)
938 $perc_lista=number_format(($voti_lista*100)/$voti_lista_tutti,5);
939 else $perc_lista=0;
940 $perc_lista=number_format($perc_lista,2);
941 echo "<table class=\"table-80\">
942 <tr>"
943 ."<td class=\"td-5\"><b>"._NUM."</b></td>"
944 ."<td class=\"bggray\"><b>"._DESCR."</b></td>"
945 ."<td class=\"td-5\"><b>"._SIMBOLO."</b></td>
946 </tr>";
947 echo "<tr><td class=\"bggray\"><h1><b>$num_lista</b></h1></td>
948 <td class=\"table-main\"><a href=\"modules.php?name=Elezioni&amp;id_cons_gen=$id_cons_gen&amp;id_lista=$id_lista&amp;op=partiti&amp;voti_lista=$voti_lista&amp;perc_lista=$perc_lista&amp;id_comune=$id_comune\"><h1>$descr_lista<br /></a>
949 voti: $voti_lista <span class=\"redbig\">$perc_lista %</span></h1>";
950 echo "</td><td><a href=\"modules.php?name=Elezioni&amp;id_cons_gen=$id_cons_gen&amp;id_lista=$id_lista&amp;op=partiti&amp;voti_lista=$voti_lista&amp;perc_lista=$perc_lista&amp;id_comune=$id_comune\">
951 <img class=\"stemma\" src=\"modules.php?name=Elezioni&amp;file=foto&amp;id_lista=$id_lista\" alt=\"$descr_lista\" /></a>";
952 echo "</td></tr></table>";
953 }
954 }
955 //echo "</table>";
956 }
957 page($id_cons_gen,$go,$max,$min,$prev,$next,$offset,$file);
958//CloseTable();
959}
960
961
962
963function partiti(){
964// visualizza i dati di lista con i candidati
965
966global $genere,$admin, $prefix, $dbi, $offset, $min, $id_cons_gen,$votog,$votol,$circo, $id_cons,$tipo_cons,$file,$prev,$next,$id_circ,$id_comune,$id_lista,$id_gruppo,$voti_lista,$perc_lista;
967
968
969
970
971 //dati();
972
973 if ($circo==1){
974 $sql="select descrizione,num_circ from ".$prefix."_ele_circoscrizione where id_circ='$id_circ'";
975 $res_circ = $dbi->prepare("$sql");
976 $res_circ->execute();
977
978 list($descr_circ,$num_circ)=$res_circ->fetch(PDO::FETCH_NUM);
979 if($num_circ) echo "<center><h1>"._CIRC_N." $num_circ: $descr_circ</h1>";
980 # numero sezioni
981
982 }
983
984 if ($genere!=4){
985 $sql="select descrizione from ".$prefix."_ele_gruppo where id_gruppo='$id_gruppo'";
986 $res_gruppo = $dbi->prepare("$sql");
987 $res_gruppo->execute();
988
989 list($descr_gruppo)=$res_gruppo->fetch(PDO::FETCH_NUM);
990
991 }else{
992 $sql="select descrizione from ".$prefix."_ele_lista where id_lista='$id_lista'";
993 $res_gruppo = $dbi->prepare("$sql");
994 $res_gruppo->execute();
995
996 list($descr_gruppo)=$res_gruppo->fetch(PDO::FETCH_NUM);
997
998 }
999 // numero sezioni scrutinate, escluse circorscrizioni (da aggiungere)
1000
1001 if ($circo!=1)
1002 {
1003 $sqlcir="";
1004 $sql2="select max(num_sez) from ".$prefix."_ele_sezioni where id_cons='$id_cons'";
1005 }
1006 else
1007 {
1008 $sqlcir="and id_circ='$id_circ'";
1009 $sql2="select count(num_sez) from ".$prefix."_ele_sezioni where id_sede in (select id_sede from ".$prefix."_ele_sede where id_circ='$id_circ')";
1010 }
1011 if ($votog)
1012 $sql="select t1.id_sez from ".$prefix."_ele_voti_candidati as t1 left join ".$prefix."_ele_candidati as t2 on t1.id_cand=t2.id_cand where t2.id_lista in (select id_lista from ".$prefix."_ele_lista where id_cons='$id_cons' $sqlcir) group by t1.id_sez ";
1013 else
1014 $sql="select id_sez from ".$prefix."_ele_voti_lista where id_lista in (select id_lista from ".$prefix."_ele_lista where id_cons='$id_cons' $sqlcir) group by id_sez ";
1015 $res1 = $dbi->prepare("$sql");
1016 $res1->execute();
1017 $numero=$res1->rowCount();
1018
1019 $res2 = $dbi->prepare("$sql2");
1020 $res2->execute();
1021
1022 list($sezioni)=$res2->fetch(PDO::FETCH_NUM);
1023
1024
1025
1026
1027
1028
1029
1030
1031 //$result = mysql_query("select id_cons ,id_lista ,num_lista, descrizione from ".$prefix."_ele_lista where id_lista='$id_lista'", $dbi);
1032
1033 $sql="select id_cons ,id_lista ,num_lista, descrizione from ".$prefix."_ele_lista where id_lista='$id_lista'";
1034 $result = $dbi->prepare("$sql");
1035 $result->execute();
1036
1037
1038 list($id_cons2,$id_lista,$num_lista, $descr_lista) = $result->fetch(PDO::FETCH_NUM);
1039
1040
1041 # if ($numero!=0) echo "<center><h2>"._SEZSCRU." $numero "._SU." $sezioni</h2></center>";
1042 echo " <center><h5>"._LISTA." Numero : <font color=\"red\">$num_lista</font><br /></h5>";
1043
1044
1045 echo "<img src=\"modules.php?name=Elezioni&amp;file=foto&amp;id_lista=$id_lista\" style=\"width:50; text-align:center;\"><h2> $descr_lista</h2><br />";
1046 if ($voti_lista OR $perc_lista){ echo "<h5>";
1047 echo _VOTI.": <font color=\"red\">$voti_lista</font> "._PERC.": <font color=\"red\">$perc_lista %</font><br /></h5>";
1048 }
1049 echo "<center>"._GRUPPO."<h1> $descr_gruppo</h1>";
1050
1051
1052
1053
1054
1055 echo "<table width=\"60%\">";
1056 // candidati con voti ottenuti
1057
1058 $sql="SELECT t1.id_cand , t1.cognome, t1.nome, t1.num_cand, t2.id_cand, sum(t2.voti) as somma FROM ".$prefix."_ele_candidati as t1 , ".$prefix."_ele_voti_candidati as t2
1059 where t1.id_lista='$id_lista' and t1.id_cand=t2.id_cand group by t1.id_cand order by somma desc, t1.num_cand asc" ;
1060 $res_candi = $dbi->prepare("$sql");
1061 $res_candi->execute();
1062
1063 //$res_candi = mysql_query("SELECT id_cand , cognome, nome, num_cand FROM ".$prefix."_ele_candidati
1064 //where id_lista='$id_lista' and id_cons='$id_cons order by num_cand" , $dbi);
1065 $num_candi=$res_candi->rowCount();
1066 if (!$num_candi) {
1067 $sql="SELECT id_cand , cognome, nome, num_cand FROM ".$prefix."_ele_candidati
1068 where id_lista='$id_lista' and id_cons='$id_cons' order by num_cand" ;
1069 $res_candi = $dbi->prepare("$sql");
1070 $res_candi->execute();
1071
1072 echo "<tr bgcolor=\"#EAEAEA\"><td >"._NUM."</td><td>"._CANDIDATO."</td></tr>";
1073 while(list($id_cand,$cognome,$nome, $num) = $res_candi->fetch(PDO::FETCH_NUM)) {
1074
1075 echo "<tr><td>[ $num ]</td><td> $cognome $nome</td>";
1076 }
1077 }else{
1078 echo "<tr bgcolor=\"#EAEAEA\"><td >"._NUM."</td><td>"._CANDIDATO."</td><td>"._PREFERENZE."</td></tr>";
1079 while(list($id_cand,$cognome,$nome, $num,$id_cand, $somma) = $res_candi->fetch(PDO::FETCH_NUM)) {
1080
1081 echo "<tr><td>[ $num ]</td><td>
1082 <a href=\"modules.php?name=Elezioni&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;op=candidato_sezione&amp;min=$num&amp;offset=$num&amp;id_lista=$id_lista&amp;orvert=1&amp;offsetsez=$sezioni&id_circ=$id_circ\">
1083 $cognome $nome</a></td><td> $somma</td>";
1084 }
1085
1086
1087
1088
1089
1090 echo "</tr>";
1091 }
1092 echo "</table>";
1093 }
1094
1095
1096// funzione visualizzazione delle liste per camera e senato con raggruppamenti/coalizioni
1097function liste(){
1098global $id_cons,$id_cons_gen,$prefix,$dbi,$min,$offset,$op,$tipo_cons,$prev,$next,$votog,$votol,$circo,$genere,$id_comune,$id_circ;
1099//dati();
1100$offset=10;
1101if (!isset($min)) $min=0;
1102
1103// numero sezioni scrutinate sul gruppo
1104 if ($circo) $circos = "and t2.id_circ=$id_circ" ; else $circos='';
1105 if ($genere==0) {
1106 $sql="select * from ".$prefix."_ele_voti_ref where id_cons='$id_cons' group by id_sez ";
1107 }else{
1108 $sql="select t1.* from ".$prefix."_ele_voti_gruppo as t1 left join ".$prefix."_ele_gruppo as t2 on t1.id_gruppo=t2.id_gruppo where t2.id_cons='$id_cons' $circos group by t1.id_sez ";
1109 }
1110 $res = $dbi->prepare("$sql");
1111 $res->execute();
1112 $numero=$res->rowCount();
1113 $sql="select t1.* from ".$prefix."_ele_sezioni as t1 left join ".$prefix."_ele_sede as t2 on t1.id_sede=t2.id_sede where t2.id_cons='$id_cons' $circos ";
1114 $res = $dbi->prepare("$sql");
1115 $res->execute();
1116
1117 $sezioni=$res->rowCount();
1118 $sql="select chiusa from ".$prefix."_ele_cons_comune where id_cons='$id_cons'";
1119 $res = $dbi->prepare("$sql");
1120 $res->execute();
1121
1122 $chiusa=$res->rowCount();
1123 if ($numero!=0 and $chiusa==0)
1124 echo "<div><h2>"._SEZSCRU." $numero "._SU." $sezioni</h2></div>";
1125
1126 echo "<div><h1>"._LISTE."</h1></div><br /><br />";
1127
1128
1129
1130
1131 // tot liste
1132 $sql="SELECT t2.* FROM ".$prefix."_ele_lista as t2 where t2.id_cons='$id_cons' $circos ";
1133 $res = $dbi->prepare("$sql");
1134 $res->execute();
1135
1136 $max = $res->rowCount();
1137
1138 // tot voti liste
1139 $sql="select sum(voti) from ".$prefix."_ele_voti_lista where id_cons='$id_cons'";
1140 $res_lista_tutti = $dbi->prepare("$sql");
1141 $res_lista_tutti->execute();
1142
1143 list($voti_lista_tutti) = $res_lista_tutti->fetch(PDO::FETCH_NUM);
1144
1145 $sql="select id_cons ,id_lista ,id_gruppo, num_lista, descrizione from ".$prefix."_ele_lista as t2 where id_cons='$id_cons' $circos ORDER BY num_lista LIMIT $min,$offset";
1146 $result = $dbi->prepare("$sql");
1147 $result->execute();
1148
1149 while(list($id_cons2,$id_lista,$id_gruppo, $num_lista, $descr_lista) = $result->fetch(PDO::FETCH_NUM)) {
1150 if ($num_lista!=0) {
1151 // voti lista
1152 $sql="select sum(voti) from ".$prefix."_ele_voti_lista where id_cons='$id_cons' and id_lista='$id_lista'";
1153 $res_lista = $dbi->prepare("$sql");
1154 $res_lista->execute();
1155
1156 list($voti_lista) = $res_lista->fetch(PDO::FETCH_NUM);
1157 if ($voti_lista_tutti!=0)
1158 $perc_lista=number_format(($voti_lista*100)/$voti_lista_tutti,2);
1159 else $perc_lista='';
1160 // gruppo
1161 $sql="select descrizione from ".$prefix."_ele_gruppo where id_gruppo='$id_gruppo'";
1162 $res_gruppo = $dbi->prepare("$sql");
1163 $res_gruppo->execute();
1164
1165 list($descr_gruppo) = $res_gruppo->fetch(PDO::FETCH_NUM);
1166
1167
1168 echo "<table class=\"table-80\"><tr class=\"bggray\">"
1169 ."<td class=\"td-5\"><b>"._NUM."</b></td>"
1170 ."<td ><b>"._DESCR."</b></td>"
1171 ."<td class=\"td-5\"><b>"._SIMBOLO."</b></td>"
1172 ."<td class=\"td-5\"><b>"._GRUPPO."</b></td></tr>";
1173
1174
1175
1176 echo "<tr><td class=\"bggray\"><h1>$num_lista</h1>"
1177 ."</td>
1178 <td class=\"table-main\"><h1>$descr_lista<br />
1179 voti: $voti_lista <span class=\"redbig\"> $perc_lista</span> %</h1>";
1180 echo "</td>
1181 <td><a href=\"modules.php?name=Elezioni&amp;id_gruppo=$id_gruppo&amp;id_cons_gen=$id_cons_gen&amp;id_lista=$id_lista&amp;op=partiti&amp;voti_lista=$voti_lista&amp;perc_lista=$perc_lista&amp;id_comune=$id_comune\">
1182 <img class=\"stemma\" src=\"modules.php?name=Elezioni&amp;file=foto&amp;id_lista=$id_lista\" alt=\"$descr_lista\" />";
1183 echo "</a></td>
1184 <td>
1185 <img class=\"stemma\" src=\"modules.php?name=Elezioni&amp;file=foto&amp;id_gruppo=$id_gruppo\" alt=\"$descr_gruppo\" />
1186 <br />$descr_gruppo</td>
1187 </tr></table>";
1188 }
1189 }
1190
1191 $file="index";
1192 $go=$op;
1193 page($id_cons_gen,$go,$max,$min,$prev,$next,$offset,$file);
1194 }
1195
1196
1197
1198function grafici($id_cons) {
1199global $visgralista;
1200//graf_votanti();
1201graf_gruppo($visgralista);
1202//graf_candidato();
1203
1204}
1205
1206//visualizzaione a seconda dello stato della consultazione
1207// finita si basa sui gruppi o liste per tutte le sezioni
1208if (!$op){
1209
1210 $circos=''; // definizione provvisoria
1211 if ($genere==0) {$tab="ref";}else{$tab="gruppo";}
1212 if ($votog) {$tab="lista";}else{$tab="gruppo";}
1213 $sql="select id_sez from ".$prefix."_ele_voti_".$tab." where id_cons='$id_cons' $circos group by id_sez ";
1214 $res = $dbi->prepare("$sql");
1215 $res->execute();
1216
1217 $numero=$res->rowCount();
1218 $sql="select * from ".$prefix."_ele_sezioni where id_cons='$id_cons' $circos ";
1219 $res = $dbi->prepare("$sql");
1220 $res->execute();
1221
1222 $sezioni=$res->rowCount();
1223 if ($numero==0) $op="gruppo";
1224 if ($numero==$sezioni) $op="graf_gruppo";
1225
1226}
1227$test=phpversion();
1228if($test>=5.6) $phpver=1; else $phpver=0;
1229switch ($op){
1230
1231
1232 case "circo":
1233 circo();
1234 break;
1235
1236 case "sezione":
1237 sezione();
1238 break;
1239
1240 case "candi":
1241 include("candidato.php");
1242 candidato();
1243 //candi();
1244 break;
1245
1246 case "gruppo":
1247 gruppo();
1248 break;
1249
1250 case "partiti":
1251 partiti();
1252 BREAK;
1253
1254 case "liste":
1255 liste();
1256 break;
1257
1258 case "come":
1259 switch ($info){
1260 case 'dati':
1261 circo();
1262 break;
1263 case "confronti":
1264 include("confronti.php");
1265 break;
1266
1267 case "affluenze_sez":
1268 if($phpver)
1269 include("affluenze.php");
1270 else
1271 include("affluenzephp5.php");
1272 break;
1273 case "votanti":
1274 if($phpver)
1275 include("votanti.php");
1276 else
1277 include("votantiphp5.php");
1278 break;
1279 default:
1280 come($info);
1281 }
1282 break;
1283
1284// esterni
1285
1286 case "consiglieri":
1287 include("consiglieri.php");
1288 consiglio();
1289 break;
1290
1291 case "gruppo_circo":
1292 include("gruppo.php");
1293 gruppo_circo();
1294 break;
1295
1296 case "gruppo_sezione":
1297 include("gruppo.php");
1298 gruppo_circo();
1299 break;
1300
1301 case "lista_circo":
1302 include("gruppo.php");
1303 gruppo_circo();
1304 break;
1305
1306 case "lista_sezione":
1307 include("gruppo.php");
1308 gruppo_circo();
1309 break;
1310
1311 case "candidato_circo":
1312 include("gruppo.php");
1313 gruppo_circo();
1314 break;
1315
1316
1317
1318 case "candidato_sezione":
1319 include("gruppo.php");
1320 gruppo_circo();
1321 break;
1322
1323 case "affluenze_graf":
1324 include("grafici.php");
1325 affluenze_graf();
1326 break;
1327
1328 case "graf_votanti":
1329 include("grafici.php");
1330 graf_votanti();
1331 break;
1332
1333 case "graf_candidato":
1334 include("grafici.php");
1335# if (!$circo)graf_candidato();
1336 graf_candidato();
1337 break;
1338
1339 case "graf_gruppo":
1340 include("grafici.php");
1341 graf_gruppo(0);
1342 break;
1343
1344 case "graf_lista":
1345 include("grafici.php");
1346 graf_gruppo(1);
1347 break;
1348
1349
1350
1351
1352 case "tema":
1353 include("theme.php");
1354 break;
1355
1356 case "top":
1357 include("top.php");
1358 break;
1359
1360 case "contatti":
1361 include("contatti.php");
1362 break;
1363
1364 case "rss":
1365 include("rss.php");
1366 break;
1367
1368 case "evvai":
1369 include("evvai.php");
1370 break;
1371 case "privacy":
1372 include("blocchi/privacy/privacy.php");
1373 break;
1374
1375}
1376
1377if ($csv!=1 && $rss!=1){
1378########## icona rss da sistemare in un altra parte con calma...
1379global $circo;
1380if($genere!=0 && $id_circ==''){ // no referendum ne circoscrizioni
1381 echo "<div align=\"right\"><a href=\"modules.php?id_cons_gen=$id_cons_gen&amp;name=Elezioni&amp;id_comune=$id_comune&amp;file=index&amp;op=rss&amp;rss=1\"><img class =\"nobordo\" width=\"60\" src=\"modules/Elezioni/images/valid-rss.png\" alt=\"rss\"/></a></div>";
1382}
1383
1384include("footer.php");
1385}
1386?>
Note: See TracBrowser for help on using the repository browser.