Ignore:
Timestamp:
May 21, 2023, 1:46:40 AM (12 months ago)
Author:
roby
Message:

-- ADMIN

  • Inserito il controllo per la gestione del caso di sezione con zero votanti

-- CLIENT

  • Inserito il controllo della dimensione del logo
  • Ulteriori modifiche all'assegnazione dei seggi secondo la legge siciliana
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/client/modules/Elezioni/consiglieri.php

    r393 r394  
    9696                $res_lis = $dbi->prepare("$sql");
    9797                $res_lis->execute();
    98                 if($res_lis->rowCount()==1)
     98                if($res_lis->rowCount()==1 or $inffisso)
    9999                {
    100100                        list($num_gruppo1,$voti1)= $res_lis->fetch(PDO::FETCH_NUM);
     
    110110                        if($votanti<($elettori/2) || $voti1<($votanti/2))
    111111                        {
    112                                 include(ele.php);
    113                                 echo "<div>Non Ú possibile assegnare i seggi, la consultazione Ú nulla</div>";
    114                                 include(footer.php);
     112                                echo "<div style=\"text-align:center;\"><br><br>Il numero di votanti Ú inferiore al 50%, non Ú possibile assegnare i seggi. <br>La consultazione Ú nulla</div>";
     113                                include("footer.php");
    115114                                die();
    116                         }
     115                        } 
    117116                }else{
    118117                        list($num_gruppo1,$voti1)= $res_lis->fetch(PDO::FETCH_NUM);
     
    121120                if ($voti1>$voti2)
    122121                        $numgruppo=$num_gruppo1;
     122                else
     123                        $numgruppo=$num_gruppo2;
    123124        }
    124125        if ($fascia<=$limite and $numgruppo) {
     
    127128                else
    128129                        consmin($fascia,$numgruppo);
    129         }elseif ($gruppo>0) conssup($fascia,$gruppo,$collegate,$collperd,$primoturno);
     130        }
     131        elseif ($gruppo>0) conssup($fascia,$gruppo,$collegate,$collperd,$primoturno);
    130132        elseif ($numgruppo>0){
    131133                $sqllis = "SELECT t1.id_lista,t1.num_lista,t1.descrizione,t1.id_gruppo from ".$prefix."_ele_lista as t1, ".$prefix."_ele_gruppo as t2 where t1.id_cons='$id_cons' and t1.id_gruppo=t2.id_gruppo and t2.num_gruppo not in (".$_SESSION['ballo1'].",".$_SESSION['ballo2'].")";
     
    186188                echo "<input type=\"hidden\" name=\"id_comune\" value=\"$id_comune\"/>";
    187189                $sql = "SELECT t1.id_gruppo,t1.num_gruppo,t1.descrizione, sum(t2.voti) as pref FROM ".$prefix."_ele_gruppo as t1, ".$prefix."_ele_voti_gruppo as t2 where t1.id_gruppo=t2.id_gruppo and t1.id_cons='$id_cons' group by t1.id_gruppo,t1.num_gruppo,t1.descrizione order by pref desc limit 0,2";
    188 $res = $dbi->prepare("$sql");
    189 $res->execute();
     190                $res = $dbi->prepare("$sql");
     191                $res->execute();
    190192
    191193                while(list($id_gruppo,$num_gruppo, $descr_gruppo,$pref) = $res->fetch(PDO::FETCH_NUM)) {
     
    214216if (isset($votol)) {$votolista=$votol; $fisso=$votol;} #se votolista=1 c'e' voto di lista
    215217if (!isset($sincons)) $sincons=0; #se sincons=1 il sindaco eletto occupa un posto di consigliere
    216 $sql="SELECT t1.num_gruppo,sum(t2.voti) as voti from ".$prefix."_ele_gruppo as t1,  ".$prefix."_ele_voti_gruppo as t2 where t1.id_cons='$id_cons' and t1.id_gruppo=t2.id_gruppo group by t1.num_gruppo order by voti desc limit 0,2";
     218####################### DA TOGLIERE
     219$sql="SELECT t1.num_gruppo,sum(t2.voti) as voti from ".$prefix."_ele_gruppo as t1,  ".$prefix."_ele_voti_gruppo as t2 where t1.id_cons='$id_cons' and t1.id_gruppo=t2.id_gruppo group by t1.num_gruppo order by voti desc";
     220#$sql="SELECT t1.num_gruppo,sum(t2.voti) as voti from ".$prefix."_ele_gruppo as t1,  ".$prefix."_ele_voti_gruppo as t2 where t1.id_cons='$id_cons' and t1.id_gruppo=t2.id_gruppo group by t1.num_gruppo order by voti desc limit 0,2";
    217221$res = $dbi->prepare("$sql");
    218222$res->execute();
    219223$numgruppi=$res->rowCount();
     224#######################
     225
     226
    220227$sql = "SELECT sum(validi_lista+contestati_lista) from ".$prefix."_ele_sezioni where id_cons='$id_cons'";
    221228$res = $dbi->prepare("$sql");
     
    240247 ################
    241248        #seleziona il sindaco (gruppo con più voti) e lista collegata
    242         $sql = "SELECT t1.descrizione,t1.num_gruppo,sum(t3.voti) as voti from ".$prefix."_ele_gruppo as t1, ".$prefix."_ele_voti_gruppo as t3 where t1.id_cons='$id_cons' and t1.id_gruppo=t3.id_gruppo group by t1.descrizione, t1.num_gruppo order by voti desc limit 0,2";
     249#       $sql = "SELECT t1.descrizione,t1.num_gruppo,sum(t3.voti) as voti from ".$prefix."_ele_gruppo as t1, ".$prefix."_ele_voti_gruppo as t3 where t1.id_cons='$id_cons' and t1.id_gruppo=t3.id_gruppo group by t1.descrizione, t1.num_gruppo order by voti desc limit 0,2";
     250        $sql = "SELECT t1.descrizione,t1.num_gruppo,sum(t3.voti) as voti from ".$prefix."_ele_gruppo as t1, ".$prefix."_ele_voti_gruppo as t3 where t1.id_cons='$id_cons' and t1.id_gruppo=t3.id_gruppo group by t1.descrizione, t1.num_gruppo order by voti desc";
    243251        $res_per = $dbi->prepare("$sql");
    244252        $res_per->execute();
    245253        $votig=0;
    246         $gruppo=array();
    247254        $conselcsne=array();
     255        $desgruppi=array();
     256        $arlismag=array();
     257        $arlismin=array();
    248258        $lisvin=0;
    249259        $gruvin=0;
     260        $grumin=0;
     261        $votigrumin=0;
     262        #Il controllo va spostato nella funzione consiglio() -- riferimento riga 124
    250263        while(list($descr,$num_gruppo,$voti)= $res_per->fetch(PDO::FETCH_NUM))
    251264        {
    252                 $sql = "SELECT t2.id_lista,t2.num_lista,t2.descrizione,sum(t3.voti) from ".$prefix."_ele_lista as t2, ".$prefix."_ele_voti_lista as t3 where t2.id_cons='$id_cons' and t2.id_lista=t3.id_lista and t2.num_gruppo=$num_gruppo group by t2.id_lista,t2.num_lista,t2.descrizione order by voti desc limit 0,1";
     265#               $sql = "SELECT t2.id_lista,t2.num_lista,t2.descrizione,sum(t3.voti) from ".$prefix."_ele_lista as t2, ".$prefix."_ele_voti_lista as t3 where t2.id_cons='$id_cons' and t2.id_lista=t3.id_lista and t2.num_gruppo=$num_gruppo group by t2.id_lista,t2.num_lista,t2.descrizione order by voti desc limit 0,1";
     266                $desgruppi[$num_gruppo]=$descr;
     267                if($voti>=($votig-1)) # and (!$grp or $grp==$num_gruppo)
     268                {
     269                        if($grp and $grp!=$num_gruppo)
     270                        { #confronta i voti delle liste collegate ai candidati con stesso numero di voti e assegna il seggio a quello le cui liste hanno più voti
     271                                $sql = "SELECT t2.num_gruppo,sum(t3.voti) from ".$prefix."_ele_lista as t2, ".$prefix."_ele_voti_lista as t3 where t2.id_cons='$id_cons' and t2.id_lista=t3.id_lista and (t2.num_gruppo=$num_gruppo or t2.num_gruppo=$grp) group by t2.num_gruppo order by voti desc";
     272                                $res_lis = $dbi->prepare("$sql");
     273                                $res_lis->execute();
     274                                $votillrif=0;
     275                                while(list($num_grp,$votill)= $res_lis->fetch(PDO::FETCH_NUM))
     276                                {
     277                                        if($votill>$votillrif)
     278                                        {
     279                                                $gruvin=$num_grp;
     280                                                $votig=$voti+1;
     281                                                $votillrif=$votill;
     282                                                $grp=$num_grp;
     283                                        }       
     284                                        if($grp!=$num_grp)
     285                                        {
     286                                                $sindel=1;
     287                                                $votigrumin=$voti;
     288                                                $conselcsne[0]=array("$CSEC","","",$desgruppi[$num_grp],"","");
     289                                                $grumin=$num_grp;
     290                                        }
     291
     292                                }
     293                        }else{
     294                                $gruvin=$num_gruppo;
     295                                $votig=$voti;
     296                                if ($grp)
     297                                        $votig++;
     298                                $votigrumin=$voti;
     299                        }
     300                }
     301                elseif($votigrumin and $voti==$votigrumin)
     302                { #confronta i voti delle liste collegate ai candidati con stesso numero di voti e assegna il seggio a quello le cui liste hanno più voti
     303                        $sql = "SELECT t2.num_gruppo,sum(t3.voti) from ".$prefix."_ele_lista as t2, ".$prefix."_ele_voti_lista as t3 where t2.id_cons='$id_cons' and t2.id_lista=t3.id_lista group by t2.num_gruppo order by voti desc";
     304                        $res_lis = $dbi->prepare("$sql");
     305                        $res_lis->execute();
     306                        $votillrif=0;
     307                        while(list($num_grpmin,$votill)= $res_lis->fetch(PDO::FETCH_NUM))
     308                                if($voti>=$validi/5 and $votill>$votillrif) {$sindel=1; $votigrumin=$voti; $conselcsne[0]=array("$CSEC","","",$descr,"",""); $grumin=$num_gruppo;}
     309                }else{
     310                        if($voti>=$validi/5 and !$sindel) {$sindel=1; $conselcsne[0]=array("$CSEC","","",$descr,"",""); }                       
     311                        $votigrumin=$voti;
     312                        $grumin=$num_gruppo;
     313                }
     314                if(!isset($conselcsne[0][0])) $conselcsne[0]=array("<br><b>Consiglieri di minoranza</b>","","","","","");
     315#######
     316
     317        }
     318#####
     319        $sql = "SELECT t1.descrizione,t1.num_gruppo,sum(t3.voti) as voti from ".$prefix."_ele_gruppo as t1, ".$prefix."_ele_voti_gruppo as t3 where t1.id_cons='$id_cons' and t1.id_gruppo=t3.id_gruppo and t1.num_gruppo=$grp or t1.num_gruppo=$grumin group by t1.descrizione, t1.num_gruppo order by voti desc";
     320        $res_per = $dbi->prepare("$sql");
     321        $res_per->execute();
     322        while(list($descr,$num_gruppo,$voti)= $res_per->fetch(PDO::FETCH_NUM))
     323        {
     324                $sql = "SELECT t2.id_lista,t2.num_lista,t2.descrizione,sum(t3.voti) from ".$prefix."_ele_lista as t2, ".$prefix."_ele_voti_lista as t3 where t2.id_cons='$id_cons' and t2.id_lista=t3.id_lista and t2.num_gruppo=$num_gruppo group by t2.id_lista,t2.num_lista,t2.descrizione order by voti desc";
    253325                $res_lis = $dbi->prepare("$sql");
    254326                $res_lis->execute();
    255                 list($id_lista1,$num_lista,$descr_lista,$votil)= $res_lis->fetch(PDO::FETCH_NUM);
    256                
    257                 $desgruppi[$num_gruppo]=$descr;
    258                 $listagruppo[$num_lista]=$num_gruppo;
    259                 if($voti>=$votig and (!$grp or $grp==$num_gruppo))
     327                while(list($id_lista1,$num_lista,$descr_lista,$votil)= $res_lis->fetch(PDO::FETCH_NUM))
    260328                {
    261                         if(!$lisvin ) {$lisvin=$num_lista; $gruvin=$num_gruppo;}
    262                         $votig=$voti;
    263                         if ($grp)
    264                                 $votig++;
    265                         $gruppo[$num_gruppo]=array($descr,$num_gruppo,$id_lista1,$num_lista,$descr_lista,$voti);
    266                 }else{
    267                         if($voti>=$validi/5) {$sindel=1;$conselcsne[]=array("$CSEC","","",$descr,"","");}
    268                 }
    269         }
     329                        $listagruppo[$num_lista]=$num_gruppo;
     330                        if($grp==$num_gruppo)
     331                        {
     332                                $arlismag[$num_gruppo][]=$num_lista;
     333                                if(!$lisvin ) {$lisvin=$num_lista; }
     334                        }else{
     335                                $arlismin[$num_gruppo][]=$num_lista;
     336                        }
     337                }
     338        }
     339#####   
    270340        #seleziona la lista (o liste) con più voti
    271         $sql = "SELECT t1.descrizione, t2.id_lista,t2.num_lista, t1.num_gruppo, sum(t2.voti) as voti from ".$prefix."_ele_voti_lista as t2 left join ".$prefix."_ele_lista as t1 on t1.id_lista=t2.id_lista where t2.id_cons='$id_cons' group by t2.id_lista,t2.num_lista,t1.num_gruppo, t1.descrizione order by voti desc";
     341        $sql = "SELECT t1.descrizione, t2.id_lista,t2.num_lista, t1.num_gruppo, sum(t2.voti) as voti from ".$prefix."_ele_voti_lista as t2 left join ".$prefix."_ele_lista as t1 on t1.id_lista=t2.id_lista where t2.id_cons='$id_cons' and (t1.num_gruppo=$grp or t1.num_gruppo=$grumin) group by t2.id_lista,t2.num_lista,t1.num_gruppo, t1.descrizione order by voti desc";
    272342        $res_per = $dbi->prepare("$sql");
    273343        $res_per->execute();
     
    346416                        else $consel[]=array($desliste[$lista],$lists[$lista],$val,$arvin[$lista][($z)],$cifra[$lista][($z)],number_format($quozienti[$lista]/($z+1),2,',','.'));
    347417                }
    348         }
     418        } 
    349419    if($arvin[$lista][($z)]) $consel[]=array($desliste[$lista],"$PNE","",$arvin[$lista][($z)],$cifra[$lista][($z)],number_format($quozienti[$lista]/($z+1),2,',','.'));
    350420        $assegnato=0;
Note: See TracChangeset for help on using the changeset viewer.