source: trunk/client/modules/Elezioni/gruppo.php@ 12

Last change on this file since 12 was 12, checked in by roby, 14 years ago

sicurezza anti xss

File size: 30.3 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
9if (!defined('MODULE_FILE')) {
10 die ("You can't access this file directly...");
11}
12if ($xls=='1') include("modules/Elezioni/language/lang-$lang.php");
13
14
15$param=strtolower($_SERVER['REQUEST_METHOD']) == 'get' ?
16 $_GET : $_POST;
17
18if (isset($param['id_cons_gen'])) $id_cons_gen=intval($param['id_cons_gen']); else $id_cons_gen='';
19//if (isset($param['op'])) $op=$param['op']; else $op='';
20if (isset($param['minsez'])) $minsez=intval($param['minsez']); else $minsez='';
21if (isset($param['id_lista'])) $id_lista=intval($param['id_lista']); else $id_lista='';
22if (isset($param['id_circ'])) $id_circ=intval($param['id_circ']); else $id_circ='';
23if (isset($param['csv'])) $csv=intval($param['csv']); else $csv='';
24if (isset($param['min'])) $min=intval($param['min']); else $min= 0;
25if (isset($param['orvert'])) $orvert=intval($param['orvert']); else $orvert='';
26if (isset($param['offset'])) $offset=intval($param['offset']); else $offset='';
27if (isset($param['offsetsez'])) $offsetsez=intval($param['offsetsez']); else $offsetsez='';
28if (isset($param['perc'])) $perc=$param['perc']; else $perc='';
29if (isset($param['info'])) get_magic_quotes_gpc() ? $info=$param['info']:$info=addslashes($param['info']); else $info='';
30if (isset($param['files'])) get_magic_quotes_gpc() ? $files=$param['files']:$files=addslashes($param['files']); else $files='';
31if (isset($param['voti_lista'])) $voti_lista=intval($param['voti_lista']); else $voti_lista= 0;
32if (isset($param['perc_lista'])) $perc_lista=$param['perc_lista']; else $perc_lista= 0;
33if (isset($param['lettera'])) get_magic_quotes_gpc() ? $lettera=$param['lettera']:$lettera=addslashes($param['lettera']); else $lettera='';
34if (isset($param['id_gruppo'])) $id_gruppo=intval($param['id_gruppo']); else $id_gruppo='';
35#if (isset($param['tipo_cons'])) $tipo_cons=intval($param['tipo_cons']); else $tipo_cons='';
36
37# anti-xss nov. 2009
38$id_comune=htmlentities($id_comune);
39$id_comune=intval($id_comune);
40$perc=floatval($perc);
41$perc_lista=floatval($perc_lista);
42$datipdf= htmlentities($datipdf);
43$op= htmlentities($op);
44$info= htmlentities($info);
45$files=htmlentities($files);
46$lettera=htmlentities($lettera);
47
48
49
50
51
52
53
54include("crea_pagina.php");
55$res = mysql_query("SELECT descrizione from ".$prefix."_ele_comuni where id_comune='$id_comune'" , $dbi);
56list($descr_comune) = mysql_fetch_row($res);
57
58$res = mysql_query("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' ", $dbi);
59list($descr_cons,$tipo_cons,$genere,$votog,$votol,$votoc,$circo) = mysql_fetch_row($res);
60$res = mysql_query("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'" , $dbi);
61list($id_cons) = mysql_fetch_row($res);
62
63
64
65
66
67
68
69////////////////////////////////////////////////////////////
70// Visualizza i dati per liste, gruppi e referendum, per sezione o circoscrizione
71////////////////////////////////////////////////////////////
72
73function gruppo_circo(){
74 global $prefix, $dbi, $descr_cons, $id_cons, $id_cons_gen,$tipo_cons,$votog,$votol,$votoc,$circo, $genere,$id_gruppo,$id_lista,$bgcolor1,$bgcolor2,$id_comune,$descr_comune,$id_circ;
75 global $id_comune,$id_cons_gen,$op,$minsez,$id_lista,$id_circ,$csv,$min,
76 $orvert,$offset,$offsetsez,$perc,$info,$files;
77 #Denominazione pagine
78 if($op=="gruppo_circo") $pagina=_GRUPPO." "._PER." "._CIRCO;
79 if($op=="gruppo_sezione") $pagina=_GRUPPO." "._PER." "._SEZIONI;
80 if($op=="lista_circo") $pagina=_LISTA." "._PER." "._CIRCO;
81 if($op=="lista_sezione") $pagina=_LISTA." "._PER." "._SEZIONI;
82 if($op=="candidato_circo") $pagina=_CONSI." "._PER." "._CIRCO;
83 if($op=="candidato_sezione") $pagina=_CONSI." "._PER." "._SEZIONI;
84 if($op=="consiglieri") $pagina=_CALCONS;
85
86
87
88
89 if (ereg('circo',$op)) { //$op=='gruppo_circo' or $op=='lista_circo') {
90 $tab1="circ";
91 $tab2="t5.num_circ,t5.descrizione";
92 $tab3="t5.num_circ";
93 $tipo1=_DA." "._CIRCO;
94 $tipo2=_CIRCOS;
95 $tipo3=_CIRCO;
96 }else{
97 $tab1="sez";
98 $tab2="t3.num_sez,''";
99 $tab3="t3.num_sez";
100 $tipo1=_DA." "._SEZIONE;
101 $tipo2=_SEZIONI;
102 $tipo3=_SEZIONE;
103 }
104 if (ereg("gruppo",$op)){
105 $tab="gruppo";
106 }elseif (ereg('lista',$op)) {
107 $tab="lista";
108 }else{
109 $tab="candidati";
110 }
111 if ($orvert) {
112 $righe='';
113 $colonne='checked';
114 }else{
115 $righe='checked';
116 $colonne='';
117 }
118 if ($genere>0) { //se non e' un referendum
119
120
121 $voticompl=0;
122 if (!($offset)) $offset=25;
123 if (!($min)) $min=1;
124 if (!($offsetsez)) $offsetsez=20;
125 if (!($minsez)) $minsez=1;
126 if ($min>$offset) {
127 $appo=$min;
128 $min=$offset;
129 $offset=$appo;
130 }
131 if ($minsez>$offsetsez) {
132 $appo=$minsez;
133 $minsez=$offsetsez;
134 $offsetsez=$appo;
135 }
136 if (!$csv){
137 echo "<form id=\"voti\" method=\"post\" action=\"modules.php\">";
138 echo "<div><input type=\"hidden\" name=\"pag\" value=\"modules.php?name=Elezioni&amp;op=$op&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;id_circ=$id_circ&amp;id_lista=\"></input>";
139 echo "<input type=\"hidden\" name=\"pagina\" value=\"modules.php?name=Elezioni&amp;op=$op&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;id_circ=\"></input>";
140 }
141 $condcirc='';
142 if ($circo){ //gestione circoscrizionali
143 if(!$id_circ){
144 $res_cir = mysql_query("SELECT id_circ from ".$prefix."_ele_circoscrizione where id_cons=$id_cons and num_circ=1",$dbi); //se non si e' scelta una circoscr. prende la prima
145 list($id_circ)=mysql_fetch_row($res_cir);
146 }
147 $res_cir = mysql_query("SELECT num_circ from ".$prefix."_ele_circoscrizione where id_circ=$id_circ",$dbi); //estrae il numero della circoscrizione
148 list($num_circ)=mysql_fetch_row($res_cir);
149 $condcirc="and id_circ=$id_circ"; //variabile aggiunta nelle select per le circ.
150 $res_sez = mysql_query("SELECT count(t1.num_sez) from ".$prefix."_ele_sezioni as t1, ".$prefix."_ele_sede as t2 where t1.id_cons=$id_cons and t1.id_sede=t2.id_sede and t2.id_circ=$id_circ",$dbi); //numero di sezioni nella circoscrizione
151 $res_min = mysql_query("SELECT min(t1.num_sez) from ".$prefix."_ele_sezioni as t1, ".$prefix."_ele_sede as t2 where t1.id_cons=$id_cons and t1.id_sede=t2.id_sede and t2.id_circ=$id_circ",$dbi); //setta minsez sulla prima sezione della circoscrizione
152 list($minsez)=mysql_fetch_row($res_min);
153 }
154 else
155 $res_sez = mysql_query("SELECT count(num_sez) from ".$prefix."_ele_sezioni where id_cons=$id_cons",$dbi);
156 list($tot_sez)=mysql_fetch_row($res_sez);
157 $num_sez=$tot_sez;//mysql_data_seek($res_sez,0);
158 if ($circo) $offsetsez=$num_sez+$minsez-1;//setta offsetsez sull'ultima sezione della circoscrizione
159 if(ereg("circo", $op)) {
160 $res_sez = mysql_query("SELECT count(num_circ) from ".$prefix."_ele_circoscrizione where id_cons=$id_cons",$dbi); //estrae il numero delle circoscrizioni
161 list($num_sez)=mysql_fetch_row($res_sez);
162 }
163#Tolgo la scelta della circoscrizione o collegio perché gestita per tutte le pagine in index.php
164/* if ($circo){ // elenco per scelta circoscrizione
165 $res_sez = mysql_query("SELECT id_circ,descrizione,num_circ from ".$prefix."_ele_circoscrizione where id_cons=$id_cons",$dbi);
166 echo "<div >"._SCELTA_CIR.":
167 <select name=\"id_circ\" class=\"modulo\" onChange=\"top.location.href=this.form.pagina.value+this.form.id_circ.options[this.form.id_circ.selectedIndex].value;return false\">";
168 while(list($id_rif,$descrizione,$num_cir)=mysql_fetch_row($res_sez)) {
169 if (!$id_circ) $id_circ=$id_rif;
170 $sel = ($id_rif == $id_circ) ? "selected=\"selected\"" : "";
171 echo "<option value=\"$id_rif\" $sel>";
172 for ($j=strlen($num_cir);$j<2;$j++) { echo "&nbsp;&nbsp;";}
173 echo $num_cir.") ".$descrizione."</option>";
174 }
175 echo "</select></div>";
176
177 }
178*/
179 $visvot='';
180 if(ereg('candidato', $op)){
181// $numliste=mysql_num_rows($res_lis);
182 $visvot="cand";
183 if (!$csv){
184 $res_lis = mysql_query("SELECT id_lista, descrizione,num_lista from ".$prefix."_ele_lista where id_cons=$id_cons $condcirc order by num_lista",$dbi);
185 //elenco delle liste per la scelta
186 echo "<p>Scegli la lista:
187 <select name=\"id_lista\" class=\"modulo\" onChange=\"top.location.href=this.form.pag.value+this.form.id_lista.options[this.form.id_lista.selectedIndex].value;return false\">";
188 while(list($id_rif,$descrizione,$num_lis) = mysql_fetch_row($res_lis)) {
189 if (!$id_lista) $id_lista=$id_rif;
190 $sel = ($id_rif == $id_lista) ? "selected=\"selected\"" : "";
191 echo "<option value=\"$id_rif\" $sel>";
192 for ($j=strlen($num_lis);$j<2;$j++) { echo "&nbsp;&nbsp;";}
193 echo $num_lis.") ".$descrizione."</option>";
194 }
195 echo "</select></p>";
196 }
197 $res_scr = mysql_query("SELECT count(t1.id_sez) from ".$prefix."_ele_voti_$tab as t1, ".$prefix."_ele_$tab as t2 where t2.id_lista=$id_lista and t1.id_cand=t2.id_cand group by t1.id_cand",$dbi);
198 $res_cand = mysql_query("SELECT id_cand, concat(cognome,' ', nome), num_cand from ".$prefix."_ele_$tab where id_cons=$id_cons and id_lista=$id_lista order by num_cand",$dbi);
199 if ($circo) $condcirc="and t5.id_circ=$id_circ";
200 $res_voti = mysql_query("select $tab2, t1.num_cand, concat(t1.cognome,' ', t1.nome), sum(t2.voti),'','','','',''
201 from ".$prefix."_ele_candidati as t1, ".$prefix."_ele_voti_candidati as t2, "
202 .$prefix."_ele_sezioni as t3, ".$prefix."_ele_sede as t4, ".$prefix."_ele_circoscrizione as t5
203 where t1.id_lista=$id_lista
204 and t1.id_cons=$id_cons
205 and t1.id_cand=t2.id_cand
206 and t2.id_sez=t3.id_sez
207 and t3.id_sede=t4.id_sede
208 and t4.id_circ=t5.id_circ $condcirc
209 group by t1.num_cand,$tab3
210 order by $tab3,t1.num_cand",$dbi);
211
212 }else{
213 if (!$csv)
214 echo "<input type=\"hidden\" name=\"id_lista\" value=\"\"></input>";
215
216 // camera e senato nel 2006 aggiunte le somme della coalizione
217 // divise per circo e sez. in quanto nella tabella del gruppo
218 // all'atto dell'immsione non viene fatta la somma
219 // quindi leggere prima i voti di lista e poi agganciali al gruppo
220 // la var $tab diviene lista, $tab15 diviene gruppo in caso di somma
221 // dei voti di lista...oltre naturalmnte alle condizioni messe in variabile
222 // 4 aprile 2006 by luc
223 if ($votog && $tab=="gruppo"){ // camera e senato 2006
224 $t="t9";
225 $tab="lista";
226 $tab15="gruppo";
227 $add_1= ",".$prefix."_ele_gruppo as t9";
228 $and_1="and t1.id_gruppo=t9.id_gruppo";
229 }else{
230 $t="t1";
231 $tab15=$tab;
232 $add_1='';
233 $and_1='';
234 }
235 // fine della modifica
236
237 $res_scr = mysql_query("SELECT count(id_sez) from ".$prefix."_ele_voti_$tab15 where id_cons='$id_cons' group by id_$tab15",$dbi); //numero sezioni scrutinate
238 $res_cand = mysql_query("SELECT id_$tab15, descrizione, num_$tab15 from ".$prefix."_ele_$tab15 where id_cons='$id_cons' $condcirc order by num_$tab15",$dbi);
239 if ($circo) $condcirc="and t5.id_circ=$id_circ";
240 if ($tab=="gruppo")
241 $votigl=" sum(t3.validi),sum(t3.nulli),sum(t3.bianchi),sum(t3.contestati),sum(t3.voti_nulli)";
242 else
243 if ($votog) $votigl=" (t3.validi_lista),(t3.nulli),(t3.bianchi),(t3.contestati_lista),(t3.voti_nulli_lista)";
244 else $votigl=" sum(t3.validi_lista),sum(t3.nulli),sum(t3.bianchi),sum(t3.contestati_lista),sum(t3.voti_nulli_lista)";
245
246
247
248
249
250 $res_voti = mysql_query("select $tab2, $t.num_$tab15, $t.descrizione, sum(t2.voti), $votigl
251 from
252 ".$prefix."_ele_$tab as t1,
253 ".$prefix."_ele_voti_$tab as t2,
254 ".$prefix."_ele_sezioni as t3,
255 ".$prefix."_ele_sede as t4,
256 ".$prefix."_ele_circoscrizione as t5
257 $add_1
258
259 where t1.id_cons=$id_cons
260 and t1.id_$tab=t2.id_$tab
261 $and_1
262
263 and t2.id_sez=t3.id_sez
264 and t3.id_sede=t4.id_sede
265 and t4.id_circ=t5.id_circ $condcirc
266
267
268 group by $t.num_$tab15,$tab3
269 order by $tab3,$t.num_$tab15",$dbi);
270 }
271 if ($res_scr) list($tot_scr)=mysql_fetch_row($res_scr);else $tot_scr=0;
272 if ($res_cand) $num_cand=mysql_num_rows($res_cand); else $num_cand=0;
273 if(!$circo){
274 if (!(0 < $minsez and $minsez<=$num_sez)) $minsez=1;
275 if (!(0<$offsetsez and $offsetsez<=$num_sez)) $offsetsez=$num_sez;
276 }
277 if (!(0 < $min and $min<=$num_cand)) $min=1;
278 if (!(0<$offset and $offset<=$num_cand)) $offset=$num_cand;
279 if (!$csv) {
280 echo "<br /><table>
281 <tr><td><h5>$pagina</h5></td></tr>";
282 echo "<tr><td>"._DA.":&nbsp; <select name=\"min\" class=\"modulo\">";
283 while(list($id_rif,$descrizione,$num_lis) = mysql_fetch_row($res_cand)) {
284 if (!$min) $min=$num_lis;
285 $sel = ($num_lis == $min) ? "selected=\"selected\"" : "";
286 echo "<option value=\"$num_lis\" $sel>";
287 for ($j=strlen($num_lis);$j<2;$j++) { echo "&nbsp;&nbsp;";}
288 echo $num_lis.") ".$descrizione."</option>";
289
290 }
291 echo "</select></td></tr>";
292 echo "<tr><td>&nbsp;&nbsp;"._A.":&nbsp; <select name=\"offset\" class=\"modulo\">";
293 mysql_data_seek($res_cand,0);
294 while(list($id_rif,$descrizione,$num_lis) = mysql_fetch_row($res_cand)) {
295 if (!$offset) $offset=$num_lis;
296 $sel = ($num_lis == $offset) ? "selected=\"selected\"" : "";
297 echo "<option value=\"$num_lis\" $sel>";
298 for ($j=strlen($num_lis);$j<2;$j++) { echo "&nbsp;&nbsp;";}
299 echo $num_lis.") ".$descrizione."</option>";
300
301 }
302 echo "</select></td></tr></table>";
303 echo "<table><tr><td>";
304 if(!$circo)
305 echo "$tipo1 n. <input name=\"minsez\" value=\"$minsez\" size=\"4\" ></input>";
306 echo "</td>";
307 echo "<td>";
308 if(!$circo)
309 echo _A." n. <input name=\"offsetsez\" value=\"$offsetsez\" size=\"4\" ></input> (max. $num_sez)";
310 echo "</td>
311 <td align=\"right\">"._MOSTRA." $tipo2 <br/>"._PERCOL."<input type=\"radio\" name=\"orvert\" $righe value=\"0\"></input><br/>"._PERRIGHE." <input
312 type=\"radio\" name=\"orvert\" $colonne value=\"1\"></input>";
313 echo "<input type=\"hidden\" name=\"name\" value=\"Elezioni\"></input>
314 </td></tr>";
315$diff=($offsetsez-$minsez);
316if ($minsez>1){
317 $minsez_p= ($minsez-$diff)>1 ? $minsez-$diff-1:1;
318
319 $offsetsez_p=$offsetsez-$diff-1;
320 echo "<tr><td valign=\"middle\"><div align=\"right\"><a href=\"modules.php?name=Elezioni&amp;file=index&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;op=$op&amp;min=$min&amp;offset=$offset&amp;minsez=$minsez_p&amp;offsetsez=$offsetsez_p&amp;perc=$perc&amp;id_lista=$id_lista\"> <- Precedenti</a></div></td>";
321}else{echo "<tr><td></td>";}
322if ($offsetsez<$num_sez){
323 $minsez_s=$minsez+$diff+1;
324 $offsetsez_s= ($offsetsez+$diff)>$num_sez ? $num_sez: $offsetsez+$diff+1;
325
326 echo "<td><div><a href=\"modules.php?name=Elezioni&amp;file=index&amp;op=$op&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;orvert=$orvert&amp;min=$min&amp;offset=$offset&amp;minsez=$minsez_s&amp;offsetsez=$offsetsez_s&amp;perc=$perc&amp;id_lista=$id_lista\"> Successive -></a></div></td><td></td></tr>";
327}else{echo "<td></td><td></td></tr>";}
328
329
330
331 echo "<tr>";
332 if (!ereg('candidato',$op)) {
333 echo "<td>"._VIS_PERC.": <input type=\"checkbox\" name=\"perc\" value=\"true\"";
334 if($perc=='true') echo " checked=\"true\"";
335 echo "></input></td>";
336 }
337 echo "<td>";
338 echo "<input type=\"hidden\" name=\"op\" value=\"$op\"></input>";
339 echo "<input type=\"hidden\" name=\"id_cons_gen\" value=\"$id_cons_gen\"></input>";
340 echo "<input type=\"hidden\" name=\"id_comune\" value=\"$id_comune\"></input>";
341
342 echo "<input type=\"hidden\" name=\"pag2\" value=\"modules.php?name=Elezioni&amp;op=$op&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;csv=1&amp;orvert=$orvert&amp;min=$min&amp;offset=$offset&amp;minsez=$minsez&amp;offsetsez=$offsetsez&amp;perc=$perc&amp;id_lista=\"></input>";
343
344 echo "<input type=\"submit\" name=\"update\" value=\""._OK."\"></input>";
345
346
347 #### recupera dati stampa supporti diversi dati
348 //echo "</tr><tr><td><b>"._COMUNE." $descr_comune</b> - "._RISULTATI.": $descr_cons <br/>";
349 //echo "tot:$tot_scr";
350 //if ($tipo_cons!=4 && $tot_scr) echo " - Sezioni scrutinate: $tot_scr su $tot_sez";
351
352 # liste e gruppi da.... a
353 if (!ereg('candidato',$op)) {
354 $res_cand2 = mysql_query("SELECT descrizione from ".$prefix."_ele_$tab15 where id_cons='$id_cons' and num_$tab15 ='$min'",$dbi);
355 list($descrizione)= mysql_fetch_row($res_cand2);
356 $list1 ="da $descrizione ";
357
358
359
360 $res_cand3 = mysql_query("SELECT descrizione from ".$prefix."_ele_$tab15 where id_cons='$id_cons' and num_$tab15 ='$offset'",$dbi);
361 list($descrizione)= mysql_fetch_row($res_cand3);
362 $list1 .=" a $descrizione <br/>";
363
364 }else{$list1='';}
365
366 # nome della lista
367 if (ereg('candidato',$op)) {
368 $res_lis2 = mysql_query("SELECT num_lista, descrizione from ".$prefix."_ele_lista where id_lista=$id_lista",$dbi);
369 list($num_lista2,$descr_lista2)= mysql_fetch_row($res_lis2);
370 $list2 .=" Lista n. $num_lista2 - $descr_lista2 <br/>";
371
372 $res_cand4 = mysql_query("SELECT concat(cognome,' ', nome) from ".$prefix."_ele_$tab where id_cons=$id_cons and id_lista=$id_lista and num_cand=$min",$dbi);
373 list($descrizione)= mysql_fetch_row($res_cand4);
374 $list3 ="da $descrizione ";
375 $res_cand5 = mysql_query("SELECT concat(cognome,' ', nome) from ".$prefix."_ele_$tab where id_cons=$id_cons and id_lista=$id_lista and num_cand=$offset",$dbi);
376 list($descrizione)= mysql_fetch_row($res_cand5);
377 $list3 .="a $descrizione <br/>";
378
379 }else{ $list2 .='';$list3='';}
380
381
382 $datipdf="<b>"._COMUNE." $descr_comune</b> - "._RISULTATI.": $descr_cons<br/><b>$pagina</b><br/><br/> $list1 $list2 $list3
383 dalla $tipo3 n. <b>$minsez</b> alla $tipo3 n. <b>$offsetsez</b> di <b>$num_sez</b> $tipo2<br/><br/>";
384
385
386
387
388
389 # verificare la stampa sulle circoscrizioni
390 if(!$circo){
391 echo "</td><td><a href=\"".$_SERVER['PHP_SELF']."?name=Elezioni&amp;op=$op&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;csv=1&amp;orvert=$orvert&amp;min=$min&amp;offset=$offset&amp;minsez=$minsez&amp;offsetsez=$offsetsez&amp;perc=$perc&amp;id_lista=$id_lista&amp;datipdf=$datipdf\" ><img class=\"image\" src=\"modules/Elezioni/images/printer.gif\" alt=\"Stampa\" /></a>";
392 echo "<a href=\"".$_SERVER['PHP_SELF']."?name=Elezioni&amp;op=$op&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;csv=1&amp;orvert=$orvert&amp;min=$min&amp;offset=$offset&amp;minsez=$minsez&amp;offsetsez=$offsetsez&amp;perc=$perc&amp;id_lista=$id_lista&amp;xls=1&amp;datipdf=$datipdf\" ><img class=\"image\" src=\"modules/Elezioni/images/csv.gif\" alt=\"Export Csv\" /></a>";
393 echo "<a href=\"".$_SERVER['PHP_SELF']."?name=Elezioni&amp;op=$op&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;csv=1&amp;orvert=$orvert&amp;min=$min&amp;offset=$offset&amp;minsez=$minsez&amp;offsetsez=$offsetsez&amp;perc=$perc&amp;id_lista=$id_lista&amp;pdf=1&amp;datipdf=$datipdf\" ><img class=\"image\" src=\"modules/Elezioni/images/pdf.gif\" alt=\"Export Pdf\" /></a>";
394 }
395 echo "</td></tr></table></div></form>";
396
397 if (ereg('candidato',$op)) echo $list2;
398
399
400 }
401 if (!$csv){
402 //echo "<table border=\"0\" width=\"100%\"><tr><td align=\"center\"><h5> Sezioni scrutinate";
403 //if ($tipo_cons!=4) echo ": $tot_scr su $tot_sez";
404 //echo "</h5></td></tr></table>";
405 }
406 $y=1;
407 $ar[0][0]=$tipo2;
408 $ra[0][0]=$tipo2;
409 $num_sez++;
410 $voticompl=0;
411 $ominsez=$minsez-1;
412 $sevaltot=0;
413 $senultot=0;
414 $sebiatot=0;
415 $secontot=0;
416 $sevnutot=0;
417 if ($res_voti)
418 while (list($num_circ,$desc_circ,$num_cand,$nome,$voti,$sevalidi,$senulli,$sebianchi,$secontestati,$sevonulli) = mysql_fetch_row($res_voti)){
419 if (!isset($votitot[($num_circ-$ominsez)])) {
420 $votitot[($num_circ-$ominsez)]=0;
421 $sevaltot+=$sevalidi;
422 $senultot+=$senulli;
423 $sebiatot+=$sebianchi;
424 $secontot+=$secontestati;
425 $sevnutot+=$sevonulli;
426 }
427 $votitot[($num_circ-$ominsez)]+=$voti;
428 $voticompl+=$voti;
429 }
430 if ($voticompl) mysql_data_seek($res_voti,0);
431 $piuvot=0;
432 if ($visvot!='cand') $piuvot=5;
433 for ($z=1;$z<=($offsetsez-$ominsez);$z++) $ar[$z][0]=$ominsez+$z;
434
435 ////////////////////////////////////////////////////////////////////
436 // sandro: carica i numeri di sezione dal DB - giugno 2009
437 // caso: sezioni in collegi diversi non consecutive
438 if($circo) {
439 $numsezioni = $offsetsez-$ominsez;
440 $res_numsez = mysql_query("SELECT t1.num_sez from ".$prefix."_ele_sezioni as t1, ".$prefix."_ele_sede as t2 where t1.id_cons=$id_cons and t1.id_sede=t2.id_sede and t2.id_circ=$id_circ order by t1.num_sez",$dbi);
441 for ($z=1;$z<=($offsetsez-$ominsez);$z++) {
442 $res=mysql_fetch_row($res_numsez);
443 $ar[$z][0]=$res[0];
444 }
445 }
446 ////////////////////////////////////////////////////////////////////
447
448
449
450 for ($y=$min;$y<=($offset+$piuvot);$y++) $ar[0][$y]="&nbsp;";
451 for ($z=1;$z<=($offsetsez-$ominsez);$z++)
452 for ($y=$min;$y<=($offset+$piuvot);$y++) $ar[$z][$y]="&nbsp;"; //inizializza le celle interne
453 if ($res_voti)
454 while (list($num_circ,$desc_circ,$num_cand,$nome,$voti,$sevalidi,$senulli,$sebianchi,$secontestati,$sevonulli) = mysql_fetch_row($res_voti)){
455 if ($num_cand>=$min and $num_cand<=$offset){
456 if($num_circ>=$minsez and $num_circ <=$offsetsez){
457 $ar[0][$num_cand]=$num_cand.") ".$nome;
458 $ar[($num_circ-$ominsez)][0]=$num_circ;
459 if ($desc_circ) $ar[($num_circ-$ominsez)][0].=") ".$desc_circ;
460 $percento=$voti;
461 if ($perc=='true' and $votitot[($num_circ-$ominsez)])
462 {
463 $percento=$voti."<br /><span class=\"red\"><i>".number_format($voti*100/$votitot[($num_circ-$ominsez)],2)." %</i></span>";
464 }
465
466 $ar[($num_circ-$ominsez)][$num_cand]=$percento;
467 }
468 if (!isset($temp[$num_cand])) $temp[$num_cand]=0;
469 $temp[$num_cand]+=$voti;
470 }
471 if ($visvot!='cand'){
472 $posvoti=($offset);
473 $ar[0][$posvoti+1]='<b>Voti Validi</b>';
474 $ar[0][$posvoti+2]='<b>Schede Nulle</b>';
475 $ar[0][$posvoti+3]='<b>Schede Bianche</b>';
476 $ar[0][$posvoti+4]='<b>Voti Contestati</b>';
477 $ar[0][$posvoti+5]='<b>Voti Nulli</b>';
478 if (($offsetsez)>=$num_circ and $minsez<=$num_circ){
479 $posvoti++;
480 $ar[($num_circ-$ominsez)][$posvoti++]="<b>$sevalidi</b>";
481 $ar[($num_circ-$ominsez)][$posvoti++]="<b>$senulli</b>";
482 $ar[($num_circ-$ominsez)][$posvoti++]="<b>$sebianchi</b>";
483 $ar[($num_circ-$ominsez)][$posvoti++]="<b>$secontestati</b>";
484 $ar[($num_circ-$ominsez)][$posvoti]="<b>$sevonulli</b>";
485 }
486 }
487 }
488 if (($offsetsez+1)>=$num_sez){
489 $ar[(2+$offsetsez-$minsez)][0]="<b>"._TOT."<br />"._COMPLESSIVO."</b>";
490 if(isset($temp)) {
491 while (list($key,$voti)= each($temp)) {
492 $percento="<b>$voti</b>";
493 if ($perc=='true' and $voticompl)
494 {
495 $percento="<b>$voti<br /><span class=\"red\"><i>".number_format($voti*100/$voticompl,2)." %</i></span></b>";
496 }
497 $ar[2+$offsetsez-$minsez][$key]=$percento;
498 }
499 }
500 if ($visvot!='cand') {
501 $key=$offset+1;
502 $tmp=array($sevaltot,$senultot,$sebiatot,$secontot,$sevnutot);
503 $voticompl=$sevaltot+$senultot+$sebiatot+$secontot+$sevnutot;
504 while(list($k,$voti)= each($tmp)) {
505 $percento="<b>$voti</b>";
506 if ($perc=='true' and $voticompl)
507 {
508 $percento="<b>$voti<br /><span class=\"red\"><i>".number_format($voti*100/$voticompl,2)." %</i></span></b>";
509 }
510 $ar[2+$offsetsez-$minsez][++$key]=$percento;
511
512 }
513 }
514 }
515 if($orvert!=1) {
516 $i=0;
517 foreach ( $ar as $riga) {
518 $y=0;
519 foreach($riga as $cella) {
520 $ra[$y++][$i]=$cella;
521 }
522 $i++;
523 }
524 crea_tabella($ra);
525 }else{
526 crea_tabella($ar);
527 }
528//e' un referendum
529 }else{
530 $res_lis = mysql_query("SELECT id_gruppo, descrizione,num_gruppo from ".$prefix."_ele_gruppo where id_cons=$id_cons order by num_gruppo",$dbi);
531 $numliste=mysql_num_rows($res_lis);
532
533 if (!isset($offset)) $offset=10;
534 if (!isset($min)) $min=1;
535 if (!isset($offsetsez)) $offsetsez=25; //lo 0 viene sostituito dal totale di sezioni presenti
536 if (!isset($minsez)) $minsez=1;
537 echo "<form id=\"voti\" method=\"post\" action=\"modules.php\">";
538 echo "<div><input type=\"hidden\" name=\"name\" value=\"Elezioni\"></input>";
539 echo "<input type=\"hidden\" name=\"op\" value=\"$op\"></input>";
540 echo "<input type=\"hidden\" name=\"id_cons_gen\" value=\"$id_cons_gen\"></input>";
541 echo "<input type=\"hidden\" name=\"id_comune\" value=\"$id_comune\"></input>";
542 echo "<table><tr><td>"._SCELTA." "._CONSULTAZIONE.": <select name=\"id_gruppo\">";
543 while(list($id_rif,$descrizione,$num_lis) = mysql_fetch_row($res_lis)) {
544 if (!$id_gruppo) $id_gruppo=$id_rif;
545 $sel = ($id_rif == $id_gruppo) ? "selected=\"selected\"" : "";
546 echo "<option value=\"$id_rif\" $sel>";
547 for ($j=strlen($num_lis);$j<2;$j++) { echo "&nbsp;&nbsp;";}
548 echo $num_lis.") ".strip_tags(substr($descrizione,0,50))."</option>";
549 }
550 echo "</select></td></tr>";
551 echo "<tr><td>"._VIS_PERC.": <input type=\"checkbox\" name=\"perc\" value=\"true\"";
552 if($perc=='true') echo " checked=\"true\"";
553 echo "></td>";
554 echo "<td><input type=\"submit\" name=\"update\" value=\""._OK."\"></td></tr></table></form>";
555 $res_ref= mysql_query("select num_gruppo,descrizione from ".$prefix."_ele_gruppo where id_gruppo=$id_gruppo", $dbi);
556 $res = mysql_query("select $tab2, t1.num_gruppo, t1.descrizione , t1.simbolo,
557 sum(t2.si), sum(t2.no),sum(t2.validi), sum(t2.nulli),sum(t2.bianchi), sum(t2.contestati)
558 from ".$prefix."_ele_gruppo as t1
559 left join ".$prefix."_ele_voti_ref as t2 on (t1.id_gruppo=t2.id_gruppo)
560 left join ".$prefix."_ele_sezioni as t3 on (t2.id_sez=t3.id_sez)
561 left join ".$prefix."_ele_sede as t4 on (t3.id_sede=t4.id_sede)
562 left join ".$prefix."_ele_circoscrizione as t5 on (t4.id_circ=t5.id_circ)
563 where t1.id_cons='$id_cons' and t1.id_gruppo=$id_gruppo
564 group by t2.id_gruppo,$tab3
565 order by $tab3, t1.num_gruppo
566 ", $dbi);
567 $num_sez=mysql_num_rows($res);
568 list($num_gruppo,$descr)= mysql_fetch_row($res_ref);
569 echo "<table><tr><td><b>Referendum n. ".$num_gruppo.") </b></td><td>".$descr."</td></tr></table></form>";
570 $y=1;
571 $ar[0][0]=$tipo2;
572 $ar[0][1]=_SI;
573 $ar[0][2]=_NO;
574 $ar[0][3]=_VALIDI;
575 $ar[0][4]=_NULLI;
576 $ar[0][5]=_BIANCHI;
577 $ar[0][6]=_CONTESTATI;
578
579 while (list($num_gruppo,$desc_ref) = mysql_fetch_row($res_ref)){
580 $ar[0][$i++]= $num_gruppo.") ".$desc_ref;
581 $ar[1][$y++]= "SI";
582 $ar[1][$y++]= "NO";
583 }
584 $num_sez++;
585 $tot_si=0;
586 $tot_no=0;
587 $tot_va=0;
588 $tot_nu=0;
589 $tot_bi=0;
590 $tot_co=0;
591 while (list($num_circ,$desc_circ,$num_gruppo,$desc_ref,$simbolo,$si,$no,$validi,$nulli,$bianchi, $contestati) = mysql_fetch_row($res)){
592 $i=1;
593 $votanti=$validi+$nulli+$bianchi+$contestati;
594 $tot_si+=$si;
595 $tot_no+=$no;
596 $tot_va+=$validi;
597 $tot_nu+=$nulli;
598 $tot_bi+=$bianchi;
599 $tot_co+=$contestati;
600 $ar[$num_circ][0]=$num_circ."<br />".$desc_circ;
601 if($validi){
602 $ar[$num_circ][$i++]= $perc=='true' ? $si."<br /><span class=\"red\">".number_format($si*100/$validi,2)."%</span>":$si;
603 $ar[$num_circ][$i++]= $perc=='true' ? $no."<br /><span class=\"red\">".number_format($no*100/$validi,2)."%</span>":$no;
604 }else{
605 $ar[$num_circ][$i++]= $perc=='true' ? $si."<br /><span class=\"red\">0.00%</span>":$si;
606 $ar[$num_circ][$i++]= $perc=='true' ? $no."<br /><span class=\"red\">0.00%</span>":$no;
607 }
608 if($votanti){
609 $ar[$num_circ][$i++]= $perc=='true' ? $validi."<br /><span class=\"red\">".number_format($validi*100/$votanti,2)."%</span>":$validi;
610 $ar[$num_circ][$i++]= $perc=='true' ? $nulli."<br /><span class=\"red\">".number_format($nulli*100/$votanti,2)."%</span>":$nulli;
611 $ar[$num_circ][$i++]= $perc=='true' ? $bianchi."<br /><span class=\"red\">".number_format($bianchi*100/$votanti,2)."%</span>":$bianchi;
612 $ar[$num_circ][$i++]= $perc=='true' ? $contestati."<br /><span class=\"red\">".number_format($contestati*100/$votanti,2)."%</span>":$contestati;
613 }else{
614 $ar[$num_circ][$i++]= $perc=='true' ? $validi."<br /><span class=\"red\">0.00%</span>":$validi;
615 $ar[$num_circ][$i++]= $perc=='true' ? $nulli."<br /><span class=\"red\">0.00%</span>":$nulli;
616 $ar[$num_circ][$i++]= $perc=='true' ? $bianchi."<br /><span class=\"red\">0.00%</span>":$bianchi;
617 $ar[$num_circ][$i++]= $perc=='true' ? $contestati."<br /><span class=\"red\">0.00%</span>":$contestati;
618 }
619 }
620 $i=1;
621 $tot_vo=$tot_va+$tot_nu+$tot_bi+$tot_co;
622# if($tot_va==0) $tot_va=1;
623# if($tot_vo==0) $tot_vo=1;
624 $ar[$num_sez][0]=_TOT."<br />"._COMPLESSIVO;
625 if($tot_va){
626 $ar[$num_sez][$i++]= $perc=='true' ? $tot_si."<br /><span class=\"red\">".number_format($tot_si*100/$tot_va,2)."%</span>":$tot_si;
627 $ar[$num_sez][$i++]= $perc=='true' ? $tot_no."<br /><span class=\"red\">".number_format($tot_no*100/$tot_va,2)."%</span>":$tot_no;
628 }else{
629 $ar[$num_sez][$i++]= $perc=='true' ? $tot_si."<br /><span class=\"red\">0.00%</span>":$tot_si;
630 $ar[$num_sez][$i++]= $perc=='true' ? $tot_no."<br /><span class=\"red\">0.00%</span>":$tot_no;
631 }
632 if($tot_vo){
633 $ar[$num_sez][$i++]= $perc=='true' ? $tot_va."<br /><span class=\"red\">".number_format($tot_va*100/$tot_vo,2)."%</span>":$tot_va;
634 $ar[$num_sez][$i++]= $perc=='true' ? $tot_nu."<br /><span class=\"red\">".number_format($tot_nu*100/$tot_vo,2)."%</span>":$tot_nu;
635 $ar[$num_sez][$i++]= $perc=='true' ? $tot_bi."<br /><span class=\"red\">".number_format($tot_bi*100/$tot_vo,2)."%</span>":$tot_bi;
636 $ar[$num_sez][$i++]= $perc=='true' ? $tot_co."<br /><span class=\"red\">".number_format($tot_co*100/$tot_vo,2)."%</span>":$tot_co;
637 }else{
638 $ar[$num_sez][$i++]= $perc=='true' ? $tot_va."<br /><span class=\"red\">0.00%</span>":$tot_va;
639 $ar[$num_sez][$i++]= $perc=='true' ? $tot_nu."<br /><span class=\"red\">0.00%</span>":$tot_nu;
640 $ar[$num_sez][$i++]= $perc=='true' ? $tot_bi."<br /><span class=\"red\">0.00%</span>":$tot_bi;
641 $ar[$num_sez][$i++]= $perc=='true' ? $tot_co."<br /><span class=\"red\">0.00%</span>":$tot_co;
642 }
643 crea_tabella($ar);
644 }
645 if ($csv) echo "</body>\n</html>";
646}
647
648?>
Note: See TracBrowser for help on using the repository browser.