source: trunk/client/modules/Elezioni/grafici.php@ 253

Last change on this file since 253 was 253, checked in by roby, 6 years ago
File size: 34.9 KB
Line 
1<?php
2
3/************************************************************************/
4/* Eleonline - Raccolta e diffusione dei dati elettorali */
5/* by Luciano Apolito & Roberto Gigli */
6/* http://www.eleonline.it */
7/* info@eleonline.it luciano@aniene.net rgigli@libero.it */
8/************************************************************************/
9
10if (!defined('MODULE_FILE')) {
11 die ("You can't access this file directly...");
12}
13
14include "pdoquery.php";
15$res=tipocons();
16$descr_cons=$res[1];$tipo_cons=$res[2];$genere=$res[3];$votog=$res[4];$votol=$res[5];$votoc=$res[6];$circo=$res[7];
17die("SELECT t1.descrizione, t1.tipo_cons,t2.genere, t2.voto_g, t2.voto_l, t2.voto_c, t2.circo ($descr_cons,$tipo_cons,$genere,$votog,$votol,$votoc,$circo)");
18
19
20$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);
21list($descr_cons,$tipo_cons,$genere,$votog,$votol,$votoc,$circo) = mysql_fetch_row($res);
22$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);
23list($id_cons) = mysql_fetch_row($res);
24
25
26if($flash=='1') include "class/charts.php";
27
28/***********************************
29/* Grafica affluenze
30/**********************************/
31
32function affluenze_graf(){
33global $bgcolor1, $bgcolor2, $prefix, $dbi, $offset,$genere,$votog,$votol,$votoc,$circo, $min,$id_cons,$tipo_cons,$id_cons_gen,$csv,$id_comune,$id_circ, $tema;
34// icone
35 if ($circo) $circos="and t2.id_circ='$id_circ'";
36 else $circos="";
37 if (!$csv)
38 echo "<div>
39 <a href=\"
40 modules.php?name=Elezioni&amp;op=come&amp;file=index&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;info=affluenze_sez\">"._DETTAGLIO." "._AFFLUENZE."<img class=\"image\" src=\"modules/Elezioni/images/dettagli.png\" alt=\" "._AFFLUENZE."\" /></a>
41 <a href=\" modules.php?name=Elezioni&amp;file=index&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;op=affluenze_graf&amp;csv=1\">"._VER_STAMPA." <img class=\"image\" src=\"modules/Elezioni/images/printer.png\" alt=\"\" /></a></div>";
42
43 // circoscrizionali
44 /* da verificare
45#tolto, gestito globalmente in index.php
46 if ($circo){ // circoscrizione
47 echo "<form name=\"yesy\" method=\"post\" action=\"modules.php\">";
48 echo "<input type=\"hidden\" name=\"pagina\" value=\"modules.php?name=Elezioni&file=index&id_cons_gen=34&id_comune=$id_comune&op=affluenze_graf&id_circ=\">";
49
50 $res_sez = mysql_query("SELECT id_circ,descrizione,num_circ from ".$prefix."_ele_circoscrizione where id_cons=$id_cons",$dbi);
51 echo "<td>Scegli la Circoscrizione: <select name=\"id_circ\" onChange=\"top.location.href=this.form.pagina.value+this.form.id_circ.options[this.form.id_circ.selectedIndex].value;return false\">";
52 while(list($id_rif,$descr_circ,$num_cir)=mysql_fetch_row($res_sez)) {
53 if (!$id_circ) $id_circ=$id_rif;
54 $sel = ($id_rif == $id_circ) ? "selected" : "";
55 echo "<option value=\"$id_rif\" $sel>";
56 for ($j=strlen($num_cir);$j<2;$j++) { echo "&nbsp;&nbsp;";}
57 echo $num_cir.") ".$descr_circ;
58 }
59 echo "</select>";
60
61
62
63
64
65 //echo "<input type=\"submit\" value=\""._OK."\"></form>";
66 echo "</td></tr></table>";
67 $circos="and t2.id_circ='$id_circ'";
68
69 }
70
71 */
72 // numero sezioni scrutinate
73 //if ($circo)$circos="and id_circ='$id_circ'";
74 if (!isset($data1)) $data1='';
75 if (!isset($ora_ril)) $ora_ril='';
76 $res1 = mysql_query("SELECT count(data) FROM ".$prefix."_ele_voti_parziale as t3 left join ".$prefix."_ele_sezioni as t1 on t3.id_sez=t1.id_sez left join ".$prefix."_ele_sede as t2 on t1.id_sede=t2.id_sede where t1.id_cons='$id_cons' and data='$data1' and orario='$ora_ril' $circos group by t3.id_gruppo", $dbi);
77# mysql_query("select * from ".$prefix."_ele_voti_parziale where id_cons='$id_cons' $circos group by id_sez ",$dbi);
78 $numero=mysql_num_rows($res1);
79 $res2 = mysql_query("SELECT t1.* FROM ".$prefix."_ele_sezioni as t1, ".$prefix."_ele_sede as t2 where t1.id_cons='$id_cons' and t1.id_sede=t2.id_sede $circos order by num_sez", $dbi);
80#mysql_query("select * from ".$prefix."_ele_sezioni where id_cons='$id_cons' $circos",$dbi);
81 $sezioni=mysql_num_rows($res2);
82
83
84
85
86
87// barre
88 $l_size = getimagesize("modules/Elezioni/images/barre/leftbar.gif");
89 $m_size = getimagesize("modules/Elezioni/images/barre/mainbar.gif");
90 $r_size = getimagesize("modules/Elezioni/images/barre/rightbar.gif");
91 $l_size2 = getimagesize("modules/Elezioni/images/barre/leftbar2.gif");
92 $m_size2 = getimagesize("modules/Elezioni/images/barre/mainbar2.gif");
93 $r_size2 = getimagesize("modules/Elezioni/images/barre/rightbar2.gif");
94 // totali
95
96 if($tema=='tour') $andcond="select orario,data from ".$prefix."_ele_voti_parziale where id_cons='$id_cons' order by data desc,orario desc limit 0,1"; else $andcond="select orario,data from ".$prefix."_ele_rilaff where id_cons_gen='$id_cons_gen' order by data,orario";
97
98 $res = mysql_query("$andcond", $dbi);
99 while(list($orario,$data) = mysql_fetch_row($res)) {
100 list ($ore,$minuti,$secondi)=explode(':',$orario);
101 list ($anno,$mese,$giorno)=explode('-',$data);
102 $tot_v_m=0;$tot_v_d=0;$tot_t=0;
103
104
105 echo "<br /><div><h5>"._VOTANTI." "._ALLE." "._ORE." $ore,$minuti "._DEL." $giorno/$mese/$anno</h5></div>";
106
107 $res1 = mysql_query("SELECT count(data) FROM ".$prefix."_ele_voti_parziale as t3 left join ".$prefix."_ele_sezioni as t1 on t3.id_sez=t1.id_sez left join ".$prefix."_ele_sede as t2 on t1.id_sede=t2.id_sede where t1.id_cons='$id_cons' and data='$data' and orario='$orario' $circos group by t3.id_gruppo", $dbi);
108list($numero)=mysql_fetch_row($res1);
109
110
111 $res1 = mysql_query("select sum(t3.voti_complessivi), t4.num_gruppo , t4.id_gruppo from ".$prefix."_ele_voti_parziale as t3 left join ".$prefix."_ele_sezioni as t1 on t3.id_sez=t1.id_sez left join ".$prefix."_ele_sede as t2 on t1.id_sede=t2.id_sede left join ".$prefix."_ele_gruppo as t4 on (t3.id_gruppo=t4.id_gruppo) where t3.id_cons='$id_cons' and t3.orario='$orario' and t3.data='$data' $circos group by t4.num_gruppo, t4.id_gruppo order by t4.num_gruppo ",$dbi);
112#mysql_query("select sum(t1.voti_complessivi), t2.num_gruppo , t2.id_gruppo from ".$prefix."_ele_voti_parziale as t1 left join ".$prefix."_ele_gruppo as t2 on (t1.id_gruppo=t2.id_gruppo) where t1.id_cons='$id_cons' and t1.orario='$orario' and t1.data='$data' group by t2.num_gruppo,t2.id_gruppo order by t2.num_gruppo " , $dbi);
113
114
115
116
117
118 while(list($voti_t, $num_gruppo,$id_gruppo) = mysql_fetch_row($res1)) {
119 $query="select sum(voti_complessivi) from ".$prefix."_ele_voti_parziale where orario='$orario' and data='$data' and id_cons='$id_cons'";
120
121 if ($genere==0){$query.=" and id_gruppo=$id_gruppo";}
122 $res_aff=mysql_query($query, $dbi);
123 $voti_numero=mysql_num_rows($res_aff);
124 $query="SELECT sum(maschi+femmine) FROM ".$prefix."_ele_sezioni as t1, ".$prefix."_ele_sede as t2 where t1.id_cons='$id_cons' and t1.id_sede=t2.id_sede $circos";
125#"select sum(maschi+femmine) from ".$prefix."_ele_voti_parziale as t1 , ".$prefix."_ele_sezioni as t2 where t1.id_cons=$id_cons and t1.id_sez=t2.id_sez and orario='$orario' and data='$data' $circos";
126
127
128# if ($genere==0){$query.=" and id_gruppo=$id_gruppo";}
129 $res1234=mysql_query($query, $dbi);
130 list($tot)=mysql_fetch_row($res1234);
131
132 $perc=number_format($voti_t*100/$tot,2);
133 echo "<table class=\"td-80\"><tr class=\"bggray\">";
134 if ($genere==0){echo "<td>Referendum N.</td>";}
135 echo "<td><b>"._VOTANTI."</b></td><td><b>"._PERCE."</b></td>";
136 echo "<td><b>"._SEZIONI."</b></td>";
137 echo "</tr>";
138 echo "<tr class=\"bggray2\">";
139 if ($genere==0){echo "<td><h2>$num_gruppo</h2></td>";}
140 echo "<td>$voti_t</td><td>$perc %</td><td>$numero</td>
141 </tr></table>";
142
143
144 // barre
145
146 echo "<table><tr><td><table><tr><td>&nbsp;"._VOTANTI." : </td><td>
147<img src=\"modules/Elezioni/images/barre/leftbar2.gif\" height=\"$l_size2[1]\" width=\"$l_size2[0]\" alt=\"\" /><img src=\"modules/Elezioni/images/barre/mainbar2.gif\" alt=\"\" height=\"$m_size2[1]\" width=\"". ($perc * 2)."\" /><img src=\"modules/Elezioni/images/barre/rightbar2.gif\" height=\"$r_size2[1]\" width=\"$r_size2[0]\" alt=\"\" /><span class=\"red\"> $perc</span> % ($voti_t)<br /></td></tr>\n";
148
149 $tot_gen=$tot;
150
151
152 echo "<tr><td>&nbsp;"._AVENTI.": </td><td><img src=\"modules/Elezioni/images/barre/leftbar.gif\" height=\"$l_size[1]\" width=\"$l_size[0]\" alt=\"\" /><img src=\"modules/Elezioni/images/barre/mainbar.gif\" alt=\"\" height=\"$m_size[1]\" width=\"".(100 * 2)."\" /><img src=\"modules/Elezioni/images/barre/rightbar.gif\" height=\"$r_size[1]\" width=\"$r_size[0]\" alt=\"\" /> 100 % ($tot_gen)</td></tr></table>";
153 echo "</td></tr></table>";
154
155 }
156
157 }
158}
159
160/*********************************/
161/* Grafica votanti */
162/**********************************/
163
164function graf_votanti(){
165global $op, $prefix, $dbi, $offset, $min,$descr_cons,$genere,$votog,$votol,$votoc,$circo, $id_cons,$tipo_cons,$id_comune,$id_cons_gen,$id_circ,$csv,$w,$l,$siteistat,$flash,$tour,$tema;
166
167
168$param=strtolower($_SERVER['REQUEST_METHOD']) == 'get' ?
169 $_GET : $_POST;
170if (isset($param['anim'])) $anim=intval($param['anim']); else $anim='';
171if ($siteistat==$id_comune) $logo="$siteistat"; else $logo=''; // logo per il comune
172$logo=verificasimbolo(); // carica_logo da funzioni.php
173// menu
174 if (!$csv && $anim!=1){ $anim=1;$versione=_VER_HTML;
175 }else{ $anim='';$versione=_VER_FLASH;}
176 if($csv!=1){
177 echo " <div>
178 <a href=\"
179 modules.php?name=Elezioni&amp;op=come&amp;file=index&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;info=votanti\">"._DETTAGLIO." "._VOTANTI."<img class=\"image\" src=\"modules/Elezioni/images/dettagli.png\" alt=\"\" /></a>
180 <a href=\" modules.php?name=Elezioni&amp;file=index&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;op=graf_votanti&amp;csv=1&amp;flash=\">"._VER_STAMPA." <img class=\"image\" src=\"modules/Elezioni/images/printer.png\" alt=\"\" /></a>";
181 if($flash==1)
182 echo "<a href=\" modules.php?name=Elezioni&amp;file=index&amp;id_cons_gen=$id_cons_gen&amp;id_comune=$id_comune&amp;op=graf_votanti&amp;csv=&amp;anim=$anim\">$versione <img class=\"image\" src=\"modules/Elezioni/images/grafici.gif\" alt=\"\" /></a>";
183 echo "</div>";
184 }
185
186
187/* Scelta circoscrizioni da implementare
188if ($circo){ // elenco per scelta circoscrizione
189 echo "<form id=\"test\" action=\"modules.php\"> <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=\">";
190 $res_sez = mysql_query("SELECT id_circ,descrizione,num_circ from ".$prefix."_ele_circoscrizione where id_cons=$id_cons",$dbi);
191 echo "<table><tr><td>Scegli la Circoscrizione: <select name=\"id_circ\" onChange=\"top.location.href=this.form.pagina.value+this.form.id_circ.options[this.form.id_circ.selectedIndex].value;return false\">";
192 while(list($id_rif,$descrizione,$num_cir)=mysql_fetch_row($res_sez)) {
193 if (!$id_circ) $id_circ=$id_rif;
194 $sel = ($id_rif == $id_circ) ? "selected" : "";
195 echo "<option value=\"$id_rif\" $sel>";
196 for ($j=strlen($num_cir);$j<2;$j++) { echo "&nbsp;&nbsp;";}
197 echo $num_cir.") ".$descrizione;
198 }
199 echo "</select></td></tr></table></form>";
200
201 }
202
203
204*/
205
206 if ($genere==0) $tab="ref";elseif($genere=='4' || $votog) $tab="lista";
207 else $tab="gruppo";
208 if (isset($circo) and $circo) $circos="and t2.id_circ='$id_circ'";
209 else $circos='';
210
211 // Verificare per la circoscrizione aprile 2008 Nicola?
212 //if ($genere==0) {$tab="ref";}else{$tab="gruppo";}
213 //if ($votog or $genere==4) {$tab="lista";}else{$tab="gruppo";}
214
215 /*
216 if($circo){
217 if(!$id_circ){
218 $res = mysql_query("select id_circ from ".$prefix."_ele_circoscrizione where id_cons='$id_cons' ", $dbi);
219 list($id_circ)=mysql_fetch_row($res);
220 }
221
222 $res = mysql_query("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", $dbi);
223 }else
224 */
225 if($genere==0)
226 $res = mysql_query("select t1.* from ".$prefix."_ele_voti_".$tab." as t1 left join ".$prefix."_ele_$tab as t2 on t1.id_gruppo=t2.id_gruppo where t1.id_cons='$id_cons' $circos group by t1.id_sez ",$dbi);
227 else
228 $res = mysql_query("select * from ".$prefix."_ele_sezioni where id_cons='$id_cons' and validi+nulli+bianchi+contestati>0", $dbi);
229
230 if($res)
231 $numero=mysql_num_rows($res);
232 else
233 $numero=1;
234 $res = mysql_query("select t1.* from ".$prefix."_ele_sezioni as t1 left join ".$prefix."_ele_sede as t2 on t1.id_sede=t2.id_sede where t1.id_cons='$id_cons' $circos",$dbi);
235 $sezioni=mysql_num_rows($res);
236 if ($numero!=0){
237
238
239
240
241 $res1 = mysql_query("SELECT sum(maschi+femmine) from ".$prefix."_ele_sezioni as t1 left join ".$prefix."_ele_sede as t2 on t1.id_sede=t2.id_sede where t1.id_cons='$id_cons' $circos",$dbi);
242 list($tot_aventi) = mysql_fetch_row($res1);
243
244 if ($genere!=0) {
245 echo "<center><h2>";
246 echo "<b>"._DETTAGLIO." "._VOTIE."</b> - ";
247 echo "<i> "._SEZSCRU." $numero "._SU." $sezioni </i>";
248 echo "</h2></center>";
249
250 $res1 = mysql_query("SELECT sum(validi+nulli+bianchi+contestati) as tot,
251 sum(validi),sum(nulli),sum(bianchi),sum(contestati), '0'
252 from ".$prefix."_ele_sezioni as t1 left join ".$prefix."_ele_sede as t2 on t1.id_sede=t2.id_sede where t1.id_cons='$id_cons' $circos having tot>0",$dbi);
253 }else{
254
255 if($tema=='tour'){
256 $res1 = mysql_query("SELECT count(0)
257 from ".$prefix."_ele_gruppo where id_cons=$id_cons",$dbi);
258
259 list($max_ruotag) =mysql_fetch_row($res1);
260 if (isset($_SESSION['ruotag'])) { $ruotag=$_SESSION['ruotag'];}
261 else {$ruotag=1;$_SESSION['ruotag']=1;}
262 if ($ruotag>=$max_ruotag) {$ruotag=1;}
263 else {$ruotag++;}
264 $_SESSION['ruotag']=$ruotag;
265 $res1 = mysql_query("SELECT count(0) from ".$prefix."_ele_voti_ref AS t1 LEFT JOIN ".$prefix."_ele_gruppo AS t2 ON t1.id_gruppo = t2.id_gruppo WHERE t1.id_cons ='$id_cons' AND t2.num_gruppo ='$ruotag'",$dbi);
266 list($numero)=mysql_fetch_row($res1);
267 echo "<center><h2>";
268 echo "<b>"._DETTAGLIO." "._VOTIE."</b> - ";
269 echo "<i> "._SEZSCRU." $numero "._SU." $sezioni </i>";
270 echo "</h2></center>";
271
272 $res1 = mysql_query("SELECT sum( t1.validi + t1.nulli + t1.bianchi + t1.contestati ) AS tot, sum( t1.validi ) , sum( t1.nulli ) , sum( t1.bianchi ) , sum( t1.contestati ) , t1.id_gruppo
273FROM ".$prefix."_ele_voti_ref AS t1 LEFT JOIN ".$prefix."_ele_gruppo AS t2 ON t1.id_gruppo = t2.id_gruppo
274WHERE t1.id_cons ='$id_cons' AND t2.num_gruppo ='$ruotag' GROUP BY t1.id_gruppo HAVING tot >0",$dbi);
275 } else
276 $res1 = mysql_query("SELECT sum(validi+nulli+bianchi+contestati) as tot,
277 sum(validi),sum(nulli),sum(bianchi),sum(contestati), id_gruppo
278 from ".$prefix."_ele_voti_ref where id_cons=$id_cons group by id_gruppo having tot>0",$dbi);
279 }
280 while (list($tot_votanti,$validi,$nulli,$bianchi,$contestati,$id) = mysql_fetch_row($res1)){
281 $arperc=array();
282 $arval=array($validi,$nulli,$bianchi,$contestati);
283 $arperc=arrayperc($arval,$tot_votanti);
284 $tot_votanti=$validi+$bianchi+$nulli+$contestati;
285 $perc_validi=number_format($arperc[0],2);
286 $perc_nulli=number_format($arperc[1],2);
287 $perc_bianchi=number_format($arperc[2],2);
288 $perc_conte=number_format($arperc[3],2);
289 $perc_votanti=number_format($tot_votanti*100/$tot_aventi,2);
290 $non_votanti=($tot_aventi - $tot_votanti);
291 $perc_non=100-$perc_votanti;
292
293 if ($genere==0) {
294 $res = mysql_query("SELECT num_gruppo,descrizione from ".$prefix."_ele_gruppo where id_gruppo=$id",$dbi);
295 list($num_gruppo,$descr_gruppo) = mysql_fetch_row($res);
296 }
297
298
299
300 $a1=_VALIDI;$b1=_NULLI;$c1=_BIANCHI;$d1=_CONTESTATI;$titolo=""._PERCE." "._VOTIE."";
301 $e1=_VOTANTI;$f1=""._NON." "._VOTANTI."";$titolo2=""._PERCE." "._AFFLUENZE."";
302
303
304
305
306 echo "<table width=\"100%\" class=\"modulo\"><tr>";
307 if ($genere==0) echo "<td colspan=\"2\" valign=\"top\" >";
308 else echo "<td valign=\"top\" >";
309
310 echo "<table cellspacing=\"5\" style=\"text-align:center;\">";
311 if ($genere==0) {echo "<tr><td colspan=\"4\"><h4>"._GRUPPO." $num_gruppo <br/> $descr_gruppo</h4></td></tr>";}
312 echo "
313 <tr class=\"bggray3\"><td style=\"text-align: right;\"><b>"._AVENTI."</b></td><td>$tot_aventi</td><td><span class=\"red\">100%</span></td></td></td></tr>
314
315 <tr class=\"bggray3\"><td style=\"text-align: right;\"><b>"._VOTANTI."</b></td><td>$tot_votanti</td><td><span class=\"red\">$perc_votanti%</span></td></tr>
316
317 <tr class=\"bggray3\"><td style=\"text-align: right;\">"._VALIDI."</td><td>$validi</td><td><span class=\"red\">$perc_validi%</span></td></tr>
318
319 <tr class=\"bggray3\"><td style=\"text-align: right;\">"._NULLI."</td><td>$nulli</td><td><span class=\"red\">$perc_nulli%</span></td></tr>
320
321 <tr class=\"bggray3\"><td style=\"text-align: right;\">"._BIANCHI."</td><td>$bianchi</td><td><span class=\"red\">$perc_bianchi%</span></td></tr>
322
323 <tr class=\"bggray3\"><td style=\"text-align: right;\">"._CONTESTATI."</td><td>$contestati</td><td><span class=\"red\">$perc_conte%</span></td></tr>
324
325 </table>";
326 echo "</td></tr><tr><td style=\"text-align:center;\">
327 <h1>"._PERCE." "._VOTANTI."</h1>";
328 if ($genere==0) echo "<h2> "._GRUPPO." $num_gruppo</h2>";
329
330
331 //if ((!$csv && $flash!=1 && $anim!=1) or ($tour==1 && $flash!=1 && $anim!=1)){ # rotazione x tour marzo 2009 a.l.
332 if ((!$csv && $flash!=1 || $anim!=1) and ($tour!=1)) { # rotazione x tour marzo 2009 a.l.
333 echo "<br /><img alt=\"Grafico\" src=\"modules/Elezioni/grafici/votanti_graf.php?cop=$copy&amp;titolo=$titolo2&amp;e=$perc_votanti&amp;f=$perc_non&amp;e1=$e1&amp;f1=$f1&amp;logo=$logo\" /><br /><br />";
334 }else{
335 // Flash affluenze
336 $gruppos1=array("",_VOTANTI,_NONVOTANTI);
337 $pre1=array("",$perc_votanti,$perc_non);
338 flash_torta($gruppos1,$pre1,50,50);
339 }
340
341 if($csv) echo "</td><td>";else echo "</td></tr><tr><td style=\"text-align:center;\">"; # rotazione x tour marzo 2009 a.l.
342 echo "<h1>"._PERCE." "._VOTIE."</h1>";
343 if ($genere==0) echo "<h2> "._GRUPPO." $num_gruppo<h2> ";
344
345 //$logo=verificasimbolo(); // carica_logo da funzioni.php
346
347 if ((!$csv && $flash!=1 || $anim!=1) and ($tour!=1)){ # rotazione x tour marzo 2009 a.l.
348 echo "<br /><img alt=\"Grafico\" src=\"modules/Elezioni/grafici/voti_graf.php?cop=$copy&amp;titolo=$titolo&amp;a=$perc_validi&amp;b=$perc_nulli&amp;c=$perc_bianchi&amp;d=$perc_conte&amp;a1=$a1&amp;b1=$b1&amp;c1=$c1&amp;d1=$d1&amp;logo=$logo\" /><br /><br />";
349 }else{
350
351 $gruppos2=array("","Validi","Nulli", "Bianchi", "Contestati");
352 $pre2=array("",$perc_validi,$perc_nulli,$perc_bianchi,$perc_conte);
353 flash_torta($gruppos2,$pre2,50,50);
354 }
355
356
357
358 echo "</td></tr></table>";
359
360
361 }
362 }
363
364}
365
366/***********************************
367/* Grafica Gruppo
368/**********************************/
369
370function graf_gruppo($visgralista){
371global $admin, $bgcolor1, $bgcolor5, $prefix, $dbi, $offset, $min,$descr_cons,$genere,$votog,$votol,$votoc,$circo, $id_cons,$id_cons_gen,$id_comune,$id_circ,$tipo_cons,$w,$l,$op,$siteistat,$flash,$tema;
372if ($siteistat==$id_comune) $logo=$siteistat; else $logo=''; // logo per il comune
373$logo=verificasimbolo(); // carica_logo da funzioni.php
374 if (!$id_circ and $circo){
375 $res_sez = mysql_query("SELECT id_circ from ".$prefix."_ele_circoscrizione where id_cons=$id_cons order by num_circ limit 0,1",$dbi);
376 list($id_circ)=mysql_fetch_row($res_sez);
377 }
378 $circond='';$circondt1='';
379 if ($genere!=0){$tab="ele_voti_gruppo";}else{$tab="ele_voti_ref";}
380 if ($genere==4 or $visgralista){$tab="ele_voti_lista";}
381 if ($votog){$tab="ele_voti_lista";}
382 $res = mysql_query("select * from ".$prefix."_$tab where id_cons='$id_cons' group by id_sez ",$dbi);
383 if ($circo){
384 $res = mysql_query("select t1.* 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' and t2.id_circ=$id_circ group by t1.id_sez ",$dbi);
385 $restotv = mysql_query("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' and t2.id_circ=$id_circ",$dbi);
386 $circond="and id_circ=$id_circ";$circondt1="and t1.id_circ=$id_circ";
387 }
388 if ($res) $numero=mysql_num_rows($res);else $numero=0;
389 $res = mysql_query("select t2.* from ".$prefix."_ele_sezioni as t2, ".$prefix."_ele_sede as t1 where t2.id_cons='$id_cons' and t1.id_sede=t2.id_sede $circondt1",$dbi);
390 if ($res) $sezioni=mysql_num_rows($res);else $sezioni=0;
391
392#tolta, gestita globalmente in index.php
393/* if ($circo){ // elenco per scelta circoscrizione
394 echo "<form id=\"test\" action=\"modules.php\"> <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=\">";
395 $res_sez = mysql_query("SELECT id_circ,descrizione,num_circ from ".$prefix."_ele_circoscrizione where id_cons=$id_cons",$dbi);
396 echo "<table><tr><td>Scegli la Circoscrizione: <select name=\"id_circ\" onChange=\"top.location.href=this.form.pagina.value+this.form.id_circ.options[this.form.id_circ.selectedIndex].value;return false\">";
397 while(list($id_rif,$descrizione,$num_cir)=mysql_fetch_row($res_sez)) {
398 if (!$id_circ) $id_circ=$id_rif;
399 $sel = ($id_rif == $id_circ) ? "selected" : "";
400 echo "<option value=\"$id_rif\" $sel>";
401 for ($j=strlen($num_cir);$j<2;$j++) { echo "&nbsp;&nbsp;";}
402 echo $num_cir.") ".$descrizione;
403 }
404 echo "</select></td></tr></table></form>";
405
406 }
407*/
408 if ($numero>0){
409 echo "<center><h2>";
410 if ($genere!=4 and !$visgralista){
411 echo "<b>"._PREFERENZE." "._GRUPPO." $descr_cons </b>";
412 }else{
413 echo "<b>"._PREFERENZE." "._LISTA." $descr_cons </b>";
414 }
415 echo "<i>- "._SEZSCRU." $numero "._SU." $sezioni </i>";
416 echo "</h2></center>";
417
418 if ($genere!=0){
419 // tot voti
420 if (!$circo)
421 $restotv = mysql_query("select sum(voti) from ".$prefix."_$tab where id_cons=$id_cons ", $dbi);
422 if ($votog)
423 $restotv = mysql_query("select sum(voti) from ".$prefix."_ele_voti_lista where id_cons=$id_cons ", $dbi);
424 list($tot) = mysql_fetch_row($restotv);
425
426 $i=0;
427 // lista o gruppo
428 if ($genere!=4 and !$visgralista){
429
430 if ($votog){
431
432 $res = mysql_query("select t1.id_gruppo, t1.num_gruppo, t1.descrizione, sum(t2.voti) as somma
433 from ".$prefix."_ele_gruppo as t1,
434 ".$prefix."_ele_voti_lista as t2,
435 ".$prefix."_ele_lista as t3
436 where t1.id_cons='$id_cons'
437 and t2.id_lista=t3.id_lista
438 and t1.id_gruppo=t3.id_gruppo
439 group by t1.id_gruppo
440 order by somma desc", $dbi);$cosa='id_gruppo';
441
442 }else{
443
444
445 $res = mysql_query("select t1.id_gruppo, t1.num_gruppo, t1.descrizione, sum(t2.voti) as somma
446 from ".$prefix."_ele_gruppo as t1
447 left join ".$prefix."_$tab as t2 on (t1.id_gruppo=t2.id_gruppo)
448 where t1.id_cons='$id_cons' and t1.id_cons=t2.id_cons $circondt1
449 group by t2.id_gruppo
450 order by somma desc", $dbi);$cosa='id_gruppo';
451 }
452
453
454 }else{
455 $res = mysql_query("select t1.id_lista, t1.num_lista, t1.descrizione, sum(t2.voti) as somma
456 from ".$prefix."_ele_lista as t1
457 left join ".$prefix."_$tab as t2 on (t1.id_lista=t2.id_lista)
458 where t1.id_cons='$id_cons' and t1.id_cons=t2.id_cons $circondt1
459 group by t2.id_lista
460 order by somma desc", $dbi);$cosa='id_lista';
461 }
462
463 echo "<table>
464 <tr>
465 <td><br />
466 <table cellspacing=\"0\" cellpadding=\"2\" rules=\"cols\">";
467 // inizio tabella dati
468 // variabili stampa flash
469 $e=0;
470 $gruppos[$e]="";
471 $pre[$e]="";
472 $e=1;
473 // fine
474 $gruppinum=mysql_num_rows($res);
475 $altrivoti=0;
476####calcolo percentuale
477 $arvoti=array();
478 $arperc=array();
479 while (list($id,$num,$descrizione,$voti) = mysql_fetch_row($res)){
480 $arvoti[$id]=$voti;
481 }
482 $arperc=arrayperc($arvoti,$tot);
483 mysql_data_seek($res,0);
484####
485 $altriperc=0;
486 while (list($id,$num,$descrizione,$voti) = mysql_fetch_row($res)){
487
488
489 // verica chi ha preso meno del 3%
490 $menotre=(number_format($voti*100/$tot,2));
491
492 if($menotre>3){
493
494
495
496
497 // funz per il taglio corretto della frase 13 feb 2007
498 //$descrizione=taglio(4,$descrizione);
499
500 $gruppo[$i]=(substr($descrizione,0,21));
501 $gruppos[$e]=(substr($descrizione,0,21)); //flash
502
503
504
505 if (strlen($descrizione)>21) $gruppo[$i].="...";
506 if (strlen($descrizione)>21) $gruppos[$e].="...";
507 $pro[$i]=number_format($arperc[$id],2);
508 $pre[$e]=number_format($arperc[$id],2); //flash
509
510
511 }else{
512 //somma i voti sotto il 3%
513 $altrivoti = $altrivoti + $voti;
514 $altriperc += $arperc[$id];
515 }
516
517
518
519
520
521
522 $votiv=number_format($voti,0,',','.');
523 // formattazione numeri perc
524 $prov=number_format($arperc[$id],2);
525
526 // sviluppo tabella dati
527 $bgcolor1= ($bgcolor1=="#cacaca") ? "#ffffff":"#cacaca";
528 echo "<tr valign=\"top\">
529 <td valign=\"top\"><b><img src=\"modules.php?name=Elezioni&amp;file=foto&amp;$cosa=$id\" class=\"stemmapic\" alt=\"\" /></b></td>
530 <td><b>$descrizione</b></td>
531 <td>"._VOTI."</td><td align=\"right\">$votiv</td><td align=\"right\"> <i>($prov%)</i></td>
532 </tr>";
533
534 $e++; // flash
535 $i++;
536 }
537 // aggiunge altri minori al 3%
538 // esiste
539 // corretto 15 aprile 2006
540 if ($altrivoti>0){
541
542 $gruppo[]=_ALTRI;
543 $gruppos[]=_ALTRI;
544 $pro[]=$altriperc; #number_format($altrivoti*100/$tot,3);
545 $pre[]=$altriperc; #number_format($altrivoti*100/$tot,3);
546 }
547
548
549 if ($i<=10) $i=10;
550 $titolo=""._PERCE." "._VOTIE."";
551 $dati1=serialize($pro);
552 //$dati1=urlencode($dati1);
553 //$gruppo=utf8_encode($gruppo);
554 $dati2=serialize($gruppo);
555 $dati2=urlencode($dati2);
556
557 $titolo=urlencode($titolo);
558 if (isset($copy)) $copy=urlencode($copy); else $copy='';
559 $descr_cons=urlencode($descr_cons);
560 if ($genere==4){$w=800;$l=250;}else{$w=750;$l=220;}
561
562
563 echo "</table></td>";
564 global $tema;
565 if($tema!="tour") echo "</tr><tr>";
566 echo "<td valign=\"top\"><br />";
567 # grafico statico
568 echo "<img src='modules/Elezioni/grafici/barre.php?dati1=$dati1&amp;dati2=$dati2&amp;i=$i&amp;cop=$copy&amp;titolo=$titolo&amp;descr=$descr_cons&amp;l=$l&amp;w=$w&amp;logo=$logo' alt=\"Grafico\" />";
569
570 echo "</td></tr></table><table><tr><td>";
571 # grafico flash
572 if($flash=='1') flash_torta($gruppos,$pre,40,145);
573 echo "</td></tr></table>";
574
575
576 }else{
577 // tot voti
578 if($tema=='tour'){
579 $res1 = mysql_query("SELECT count(0)
580 from ".$prefix."_ele_gruppo where id_cons=$id_cons",$dbi);
581 list($max_ruotag) =mysql_fetch_row($res1);
582 if (isset($_SESSION['ruotag'])) { $ruotag=$_SESSION['ruotag'];}
583 else {$ruotag=1;$_SESSION['ruotag']=1;}
584 $res = mysql_query("select sum(t1.validi),t1.id_gruppo from ".$prefix."_$tab as t1 left join soraldo_ele_gruppo as t2 on t1.id_gruppo=t2.id_gruppo where t1.id_cons='$id_cons' and t2.num_gruppo='$ruotag' group by t1.id_gruppo", $dbi);
585 }else
586 $res = mysql_query("
587 select sum(validi),id_gruppo from ".$prefix."_$tab where id_cons=$id_cons group by id_gruppo", $dbi);
588 while (list($tot,$id_gruppo) = mysql_fetch_row($res)){
589
590 $s=0;
591 $res1 = mysql_query("select t1.id_gruppo, t1.num_gruppo, t1.descrizione, sum(t2.si), sum(t2.no)
592 from ".$prefix."_ele_gruppo as t1
593 left join ".$prefix."_$tab as t2 on (t1.id_gruppo=t2.id_gruppo)
594 where t1.id_cons='$id_cons' and t1.id_gruppo='$id_gruppo'
595 group by t1.id_gruppo
596 ", $dbi);
597
598
599 while (list($id_gruppo,$num_gruppo,$descrizione,$si,$no) = mysql_fetch_row($res1)){
600 if($tot){
601 $percsi=number_format($si*100/$tot,3);
602 $percno=number_format($no*100/$tot,3);
603 $percsi=number_format($percsi,2);
604 $percno=number_format($percno,2);
605 }else{ $percsi="0.00"; $percno="0.00";}
606 $gruppo=array("si","no");
607 $gruppos=array("","si","no");// flash
608 $pro=array($percsi,$percno);
609 $pre=array("",$percsi,$percno);//flash
610// echo "<br/><b><center>$descrizione</center><br/><br/>";
611 // sviluppo tabella dati
612 echo "<table><tr><td><table>"; // inizio tabella dati
613 echo "<tr><td bgcolor=\"$bgcolor1\">$num_gruppo - $descrizione</b></td></tr><tr></table>
614 <table><tr>
615 <td ><b>"._SI.":</b> </td><td>$si</td>
616 <td ><b>%</b> </td><td>$percsi</td>
617 <td ><b>"._NO.":</b> </td><td>$no</td>
618 <td ><b>%</b> </td><td>$percno</td><tr>
619 </table></td><td><center><br />";
620
621 $i=8; // parametro lunghezza tavola
622 $l=30; // larghezza label
623 $titolo="Numero ".$num_gruppo."";
624 $dati1=serialize($pro);
625 //$dati1=urlencode($dati1); //IE
626 $dati2=serialize($gruppo);
627 $dati2=urlencode($dati2);
628 $titolo=urlencode($titolo);
629 if (isset($copy)) $copy=urlencode($copy); else $copy='';
630 $descr=urlencode($descr_cons);
631 echo "<center><img src='modules/Elezioni/grafici/barre.php?dati1=$dati1&amp;dati2=$dati2&amp;i=$i&amp;cop=$copy&amp;titolo=$titolo&amp;descr=$descr&amp;l=$l&amp;w=$w&amp;logo=$logo' alt=\"Grafico\" /></center>";
632
633
634 if($flash=='1')flash_torta($gruppos,$pre,20,70);
635
636
637
638
639
640 echo "</td></tr></table>"; // fine tabella dati
641 $s++;
642 }
643
644
645 }
646
647
648
649 }
650
651 }
652
653
654}
655
656
657
658
659/***********************************
660/* Grafica Candidato
661/**********************************/
662
663function graf_candidato(){
664global $descr_com, $bgcolor1, $bgcolor5,$bgcolor5, $prefix, $dbi, $offset, $min,$descr_cons, $id_cons,$tipo_cons,$copy,$id_comune,$id_istat,$genere,$votog,$votol,$votoc,$circo,$siteistat;
665
666$logo=verificasimbolo(); // carica_logo da funzioni.php
667
668 $tab="ele_voti_candidati";
669
670 $res = mysql_query("select * from ".$prefix."_ele_voti_candidati where id_cons='$id_cons' group by id_sez ",$dbi);
671 $numero=mysql_num_rows($res);
672 $res = mysql_query("select * from ".$prefix."_ele_sezioni where id_cons='$id_cons'",$dbi);
673 $sezioni=mysql_num_rows($res);
674 if ($numero!=0){
675 echo "<table border=\"0\" align=\"center\"><tr><td>";
676 echo "<h5>"._PREFERENZE." "._CONSI." $descr_cons </h5>";
677 echo "<h5>"._SEZSCRU." $numero "._SU." $sezioni </h5>
678 <h5>I 30 piu' votati</h5>";
679 echo "</td></tr></table>";
680 // tot voti
681 $res = mysql_query("
682 select sum(voti) from ".$prefix."_ele_voti_candidati where id_cons=$id_cons ", $dbi);
683 list($tot) = mysql_fetch_row($res);
684
685 // gruppi o liste per simbolo
686
687 if ($genere==4){
688 $scelta="_ele_lista as t3 on (t1.id_lista=t3.id_lista)";
689 }else{
690 $scelta="_ele_lista as t3 on (t1.id_lista=t3.id_lista)";
691 }
692 $i=0;
693 $res = mysql_query("select t1.id_lista, t1.id_cand, t1.nome , t1.cognome, sum(t2.voti) as somma
694 from ".$prefix."_ele_candidati as t1
695 left join ".$prefix."_ele_voti_candidati as t2 on (t1.id_cand=t2.id_cand)
696 left join ".$prefix.$scelta."
697 where t1.id_cons='$id_cons'
698 group by t2.id_cand
699
700 order by somma desc
701
702 ", $dbi);
703 $n_candi=mysql_num_rows($res);
704 echo "<table><tr><td><table>"; // inizio tabella dati
705 while (list($id_lista,$id_cand,$nome,$cognome,$voti) = mysql_fetch_row($res)){
706 $candidato[$i]=$cognome;
707 if ($tot) $pro[$i]=number_format($voti*100/$tot,2); else $pro[$i]=0;
708 // sviluppo tabella dati
709 $e=$i+1;
710
711 echo "<tr><td>[$e]</td><td><b><img alt=\"$nome $cognome\" src=\"modules.php?name=Elezioni&amp;file=foto&amp;id_lista=$id_lista\" align=\"middle\" width=\"30\"></b></td>
712 <td bgcolor=\"$bgcolor1\"><b>$nome $cognome</b></td>
713 <td bgcolor=\"$bgcolor1\">"._VOTI."</td><td>$voti</td>
714 <td bgcolor=\"$bgcolor1\">%</td><td>$pro[$i]</td></tr>";
715
716 if ($e=='30' || $e==$n_candi){
717
718
719
720 echo "</table></td></tr></table>"; // fine tabella dati
721
722 include("footer.php");
723 exit;
724 }
725
726
727
728 $i++;
729
730
731
732
733 }
734
735 }
736
737}
738
739function flash_torta($gruppos,$pre,$y,$x){
740//if (!defined('FLASH')) die();
741include_once ("class/charts.php");
742// inizio grafico torta flash
743
744
745
746 $chart[ 'chart_data' ] = array ($gruppos, $pre);
747 //$chart[ 'chart_data' ] = array ( array ("","Ciao", "Bella"), array ( "",40, 60));
748 $chart[ 'chart_grid_h' ] = array ( 'thickness'=>0 );
749 $chart[ 'chart_pref' ] = array ( 'rotation_x'=>60 );
750 $chart[ 'chart_rect' ] = array ( 'x'=>$x, 'y'=>$y, 'width'=>350, 'height'=>200, 'positive_alpha'=>0 );
751 $chart[ 'chart_transition' ] = array ( 'type'=>"spin", 'delay'=>.5, 'duration'=>.75, 'order'=>"category" );
752 $chart[ 'chart_type' ] = "3d pie";
753 $chart[ 'chart_value' ] = array ( 'color'=>"000000", 'alpha'=>150, 'font'=>"arial", 'bold'=>true, 'size'=>10, 'position'=>"inside", 'prefix'=>"", 'suffix'=>"", 'decimals'=>2, 'separator'=>"", 'as_percentage'=>true );
754
755 $chart[ 'draw' ] = array ( array ( 'type'=>"text", 'color'=>"000000", 'alpha'=>4, 'size'=>40, 'x'=>50, 'y'=>260, 'width'=>500, 'height'=>50, 'text'=>"56789012345678901234", 'h_align'=>"center", 'v_align'=>"middle" )) ;
756
757 $chart[ 'legend_label' ] = array ( 'layout'=>"horizontal", 'bullet'=>"circle", 'font'=>"arial", 'bold'=>true, 'size'=>10, 'color'=>"000000", 'alpha'=>85 );
758 $chart[ 'legend_rect' ] = array ( 'x'=>0, 'y'=>45, 'width'=>50, 'height'=>210, 'margin'=>10, 'fill_color'=>"00ff00", 'fill_alpha'=>30, 'line_color'=>"000000", 'line_alpha'=>0, 'line_thickness'=>0 );
759 $chart[ 'legend_transition' ] = array ( 'type'=>"dissolve", 'delay'=>0, 'duration'=>4 );
760
761 $chart[ 'series_color' ] = array ( "00ff88", "ffaa00","44aaff", "aa00ff" );
762 $chart[ 'series_explode' ] = array ( 25, 75, 0, 0 );
763 $fileout="";
764/////////////////////////////// MODIFICHE PER TOGLIERE FILETEMP
765// $fileout=SendChartData ( $chart );
766 $xml=SendChartData ( $chart );
767 $max=isset($_SESSION['max']) ? $_SESSION['max']:0;
768 $max++;
769 $cur="xml$max";
770 $_SESSION[$cur]=$xml;
771 $_SESSION['max']=$max;
772 $fileout="modules.php?file=graf&pos=$cur";
773///////////////////////////////
774 echo InsertChart ( "class/charts.swf", "class/charts_library","$fileout" );
775
776 // Fine Grafico torta flash
777 echo "<noembed>Elemento non supportato!<br/>Grafico a torta</noembed>";
778
779
780}
781
782
783
784
785
786
787
788?>
789
790
Note: See TracBrowser for help on using the repository browser.