Changeset 383 for trunk/admin/modules


Ignore:
Timestamp:
Nov 15, 2022, 4:26:53 PM (2 years ago)
Author:
roby
Message:
  • Admin:
  • aggiornamento del campo num_gruppo nella tabella ele_lista
  • modifica della funzione di aggiornamento
  • Client
  • Aggiunta la funzione di calcolo dell'assegnazione dei seggi secondo la legge regionale siciliana (da completare, non gestisce tutti i casi particolari)
Location:
trunk/admin/modules/Elezioni
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/admin/modules/Elezioni/aggiornadb.php

    r379 r383  
    33#imposta il charset su utf8, qualsiasi altro valore per cambiarlo in latin1;
    44$newcs='utf8';
    5 
    6 @require_once("config.php");
     5/*
     6@require_once("..\..\config.php");
    77        try{
    88                $dbi = new PDO("mysql:host=$dbhost", $dbuname, $dbpass, array(PDO::ATTR_EMULATE_PREPARES => false, PDO::ATTR_ERRMODE=>PDO::ERRMODE_EXCEPTION));
     
    1414            die( $sql . "<br>" . $e->getMessage());
    1515        }
    16 
     16*/
    1717
    1818###############
     
    4747        return $ret;
    4848}
     49
    4950function aggiorna_index($tab,$ind,$dbi,$sql2,$num){
    5051        $ret=0;
     
    173174{
    174175        $sql="ALTER TABLE `".$prefix."_ele_lista` ADD `num_gruppo` INT(2) UNSIGNED NOT NULL AFTER `id_gruppo`";
    175         $ret=aggiorna($sql,$dbi,'',$num);
    176 }else echo "<br><span style=\"color: green;\">- La tabella ".$prefix."_ele_lista non richiede questo aggiornamento</span><br>";
    177 
     176        $sql2="update `".$prefix."_ele_lista` as t1 set t1.num_gruppo=(select t2.num_gruppo from `".$prefix."_ele_gruppo` as t2 where t2.id_gruppo=t1.id_gruppo) where t1.num_gruppo=0";
     177        $ret=aggiorna($sql,$dbi,$sql2,$num);
     178}else{
     179        $sql="update `".$prefix."_ele_lista` as t1 set t1.num_gruppo=(select t2.num_gruppo from `".$prefix."_ele_gruppo` as t2 where t2.id_gruppo=t1.id_gruppo) where t1.num_gruppo=0";
     180        $ret=aggiorna($sql,$dbi,'',$num);
     181echo "<br><span style=\"color: green;\">- La tabella ".$prefix."_ele_lista non richiede questo aggiornamento</span><br>";
     182}
    178183if(!controllo($prefix.'_ele_lista','num_circ',++$num))
    179184{
  • trunk/admin/modules/Elezioni/aggiornamento.php

    r382 r383  
    5959        ele();
    6060        echo "<hr><br><h2 style=\"text-align:center;\">Revisione installata: $myrev<br>Revisione disponibile: $newrev</h2><br><hr>";
     61#####   
     62        echo "<style>
     63        body
     64        {
     65         width:100%;
     66         margin:0 auto;
     67         padding:0px;
     68         font-family:helvetica;
     69         background-color:#A9D0F5;
     70        }
     71        #wrapper
     72        {
     73         text-align:center;
     74         margin:0 auto;
     75         padding:0px;
     76         width:995px;
     77        }
     78        #wrapper h1
     79        {
     80         margin-top:100px;
     81         font-size:40px;
     82        }
     83        #wrapper h1 p
     84        {
     85         font-size:17px;
     86        }
     87        #wrapper #feed_div
     88        {
     89         background-color:white;
     90         width:550px;
     91         height:320px;
     92         overflow-y:scroll;
     93         margin-left:220px;
     94         margin-top:20px;
     95         text-align:left;
     96         border:1px solid silver;
     97         padding:10px;
     98        }
     99        #wrapper #feed_div h2
     100        {
     101         font-size:17px;
     102        }
     103        #wrapper #feed_div .title a
     104        {
     105         text-decoration:none;
     106         color:#0080FF;
     107        }
     108        </style>";
     109        echo "<div id=\"wrapper\">";
     110        echo "<br><br><p>Log delle modifiche (massimo 100 righe)</p>";
     111        echo "<div id=\"feed_div\">";
     112        $rss = simplexml_load_file("$host/ele3/log?format=rss&mode=stop_on_copy&rev=$newrev&stop_rev=$myrev&format=rss&max=100&verbose=on#");
     113        #$rss = simplexml_load_file("$host/ele3/log?action=follow_copy&mode=stop_on_copy&rev=$newrev&stop_rev=$myrev&limit=100&verbose=on#");
     114
     115        echo '<h2>'. $rss->channel->title . '</h2>';   
     116        foreach ($rss->channel->item as $item)
     117        {
     118         echo '<p class="title"><a href="'. $item->link .'">' . $item->title . "</a></p>";
     119        #$str=preg_replace("--", "<br>--", $item->description );
     120        $str=preg_replace('/\s\--/','<br>--',$item->description);
     121        #$str=preg_replace("[^A-Za-z0-9\-]", "<br>", $item->description );
     122        # $str=preg_replace('/\s\`echo "\040"`/','<br>--',$item->description);
     123        # $str=htmlentities($item->description);
     124         echo "<p class='desc'>" . $str . "</p>";
     125        }
     126        echo "</div>";
     127        echo "</div>"; 
     128#####   
    61129        $file = file("$host/ele3/log/?format=changelog&limit=100&mode=stop_on_copy&rev=$newrev&stop_rev=$myrev&verbose=off");   
    62130#       echo "<br>Procedo con l'aggiornamento? ";
     
    64132        echo "<input type=\"hidden\" name=\"id_cons_gen\" value=\"$id_cons_gen\"><input type=\"hidden\" name=\"procedi\" value=\"1\">";
    65133        echo "<br><table align=\"center\"><tr><td><h3>Procedo con l'aggiornamento?</h3></td><td><input type=\"submit\" name=\"vai\" value=\""._OK."\"></td></tr></table></form>";
    66         echo "<br><br><p>Log delle modifiche (massimo 100 righe)</p>";
    67         echo "<br><textarea name=\"log\" rows=\"15\" cols=\"150\">";
     134/*      echo "<br><textarea name=\"log\" rows=\"15\" cols=\"150\">";
    68135        foreach ($file as $line_num => $line) echo "$line";
    69136
    70137        echo "</textarea>";
    71         ############à
     138        ############à */
    72139        $filename = "$host/ele3/changeset?format=zip&new=$newrev&new_path=%2F&old=$myrev&old_path=%2F";
    73140
     
    86153                mkdir($path, 0777, true);
    87154        }
    88         $newfile=$path."aggiornamento".$newrev;
     155/*      $newfile=$path."aggiornamento".$newrev;
    89156        copy($filename,$newfile);
    90157        $za->open($newfile);
     
    95162                print_r( $stat['name'] . PHP_EOL );
    96163        }
    97                 ############
    98                 include("footer.php");die();
    99         }
    100         $admin =  '../admin';
    101         $client = '../client';
     164        */      ############
     165        include("footer.php");die();
     166}
     167$admin =  '../admin';
     168$client = '../client';
    102169#       $path = "/tmp/files";
    103         $backup = "./backup".$myrev;
    104         $path = "./files/";
    105         $righe='';
     170$backup = "./backup".$myrev;
     171$path = "./files/";
     172$righe='';
    106173/*      if(file_exists($path)) {
    107                 $i=1;
    108                 $ispath=$path;
    109                 while(file_exists($ispath))
    110                         $ispath=$path.$i++;
    111                 $path.=--$i.'/';
    112         }else $path.='/';
    113                 if (!is_dir($path)) {
    114                         if(false===rename($path,$path."_da_".$myrev."_a_".$newrev)) {
    115                                 $errmex="E' presente un file di nome $path nella cartella admin, va cancellato per poter aggiornare";
    116                                 Header("Location: admin.php?op=aggiorna&id_cons_gen=$id_cons_gen&errmex=$errmex"); exit;
    117                         }
    118                         $righe.= "<br>La cartella $path non Ú presente, procedo con la creazione";
    119                         mkdir($path, 0777, true);
    120                 }
    121                 else
    122                         $righe.= "<br>La cartella $path Ú già presente, procedo con l'aggiornamento";
    123         }else{
    124         $righe.= "<br>Creo la cartella $path";
    125         mkdir($path, 0777, true);*/
    126         $trunk=$path.'trunk';
    127         $trunkadm=$trunk.'/admin';
    128         $trunkcli=$trunk.'/client';
    129         #       }
    130         #       if(!file_exists($trunk)) if (false === mkdir($trunk)) { die("Impossibile creare la cartella trunk, il programma viene interrotto");}
    131         #       if(!copy($file,$trunkadm)){ $righe.= "<br>Errore durante la copia del pacchetto di aggiornamento<br>";}         
    132         // Nome del file zip : https://trac.eleonline.it/ele3/changeset?format=zip&new=377&new_path=%2F&old=360&old_path=%2F
    133         # https://trac.eleonline.it/ele3/browser/trunk?format=zip&rev=377
    134        
    135         $filename = "$host/ele3/changeset?format=zip&new=$newrev&new_path=%2F&old=$myrev&old_path=%2F";
    136         $newfile=$path."aggiornamento".$newrev;
    137         if(!copy($filename,$newfile)){
    138                 $errmex="Errore durante la copia del pacchetto $newfile - aggiornamento interrotto";
    139                 Header("Location: admin.php?op=aggiorna&id_cons_gen=$id_cons_gen&errmex=$errmex"); exit;
    140         }
    141         $zip = new ZipArchive;
    142         $res = $zip->open($newfile);
     174        $i=1;
     175        $ispath=$path;
     176        while(file_exists($ispath))
     177                $ispath=$path.$i++;
     178        $path.=--$i.'/';
     179}else $path.='/';
     180        if (!is_dir($path)) {
     181                if(false===rename($path,$path."_da_".$myrev."_a_".$newrev)) {
     182                        $errmex="E' presente un file di nome $path nella cartella admin, va cancellato per poter aggiornare";
     183                        Header("Location: admin.php?op=aggiorna&id_cons_gen=$id_cons_gen&errmex=$errmex"); exit;
     184                }
     185                $righe.= "<br>La cartella $path non Ú presente, procedo con la creazione";
     186                mkdir($path, 0777, true);
     187        }
     188        else
     189                $righe.= "<br>La cartella $path Ú già presente, procedo con l'aggiornamento";
     190}else{
     191$righe.= "<br>Creo la cartella $path";
     192mkdir($path, 0777, true);*/
     193$trunk=$path.'trunk';
     194$trunkadm=$trunk.'/admin';
     195$trunkcli=$trunk.'/client';
     196#       }
     197#       if(!file_exists($trunk)) if (false === mkdir($trunk)) { die("Impossibile creare la cartella trunk, il programma viene interrotto");}
     198#       if(!copy($file,$trunkadm)){ $righe.= "<br>Errore durante la copia del pacchetto di aggiornamento<br>";}         
     199// Nome del file zip : https://trac.eleonline.it/ele3/changeset?format=zip&new=377&new_path=%2F&old=360&old_path=%2F
     200# https://trac.eleonline.it/ele3/browser/trunk?format=zip&rev=377
     201
     202$filename = "$host/ele3/changeset?format=zip&new=$newrev&new_path=%2F&old=$myrev&old_path=%2F";
     203$newfile=$path."aggiornamento".$newrev;
     204if(!copy($filename,$newfile)){
     205        $errmex="Errore durante la copia del pacchetto $newfile - aggiornamento interrotto";
     206        Header("Location: admin.php?op=aggiorna&id_cons_gen=$id_cons_gen&errmex=$errmex"); exit;
     207}
     208$zip = new ZipArchive;
     209$res = $zip->open($newfile);
    143210############
    144211#$za = new ZipArchive();
     
    216283}
    217284$righedb='';
    218 if(file_exists('./files/trunk/admin/modules/Elezioni/aggiornadb.php')) {
     285if(file_exists("$trunkadm/modules/Elezioni/aggiornadb.php")) {
    219286        $righe.= "<br><br><b>Aggiornamento del database</b>";
    220287        ob_start();
     
    225292$righe.=$righedb;
    226293$righe.= "<br><br><b>Operazioni di aggiornamento concluse.</b>";
    227 $dir = "./files/";
    228 if(file_exists($dir)){
    229     $di = new RecursiveDirectoryIterator($dir, FilesystemIterator::SKIP_DOTS);
     294#$dir = "./files/";
     295if(file_exists($path)){
     296    $di = new RecursiveDirectoryIterator($path, FilesystemIterator::SKIP_DOTS);
    230297    $ri = new RecursiveIteratorIterator($di, RecursiveIteratorIterator::CHILD_FIRST);
    231298    foreach ( $ri as $file ) {
  • trunk/admin/modules/Elezioni/ele_lista.php

    r360 r383  
    217217
    218218function lista($ok, $do,$id_lista, $num_lista, $id_gruppo,$id_circ, $descr_lista, $simbolo,$stemma) {
    219 global $param,$bgcolor1, $bgcolor2, $prefix, $dbi, $descr_cons, $id_cons,$simbolo2,$tipo_cons,$min,$genere,$id_cons_gen;
    220 $aid=$_SESSION['aid'];
    221 $perms=ChiSei($id_cons_gen);
    222 if (!$id_gruppo) $id_gruppo=0;
    223 if ($perms >16) {
    224         if ($do == "delete") {
    225                 if ($ok !="1") {
    226                         ele();
    227                         echo "<center><br><br>"._DOMCANCELLA." "._LISTA." $descr_lista ?<br>";
    228                         echo "[ <a href=\"admin.php?op=lista&amp;id_cons_gen=$id_cons_gen&amp;min=$min&amp;id_circ=$id_circ\">"._NO."</a> ] - [<a href=\"admin.php?op=lista&amp;do=delete&amp;id_lista=$id_lista&amp;id_gruppo=$id_gruppo&amp;id_circ=$id_circ&amp;ok=1&amp;min=$min&amp;id_cons_gen=$id_cons_gen\">"._YES."</a> ]";exit;
    229                 }else{
    230                         $sql="delete from ".$prefix."_ele_lista where id_lista='$id_lista'";
    231                         $result = $dbi->prepare("$sql");
    232                         $result->execute();                                             
    233                         Header("Location: admin.php?op=lista&id_circ=$id_circ&id_cons_gen=$id_cons_gen&min=$min");
    234                 }
    235         }elseif ($do == "add") {
    236                 if ($descr_lista and ($id_gruppo or ($genere!=3 and $genere!=5))) {
     219        global $param,$bgcolor1, $bgcolor2, $prefix, $dbi, $descr_cons, $id_cons,$simbolo2,$tipo_cons,$min,$genere,$id_cons_gen;
     220        $aid=$_SESSION['aid'];
     221        $perms=ChiSei($id_cons_gen);
     222        if (!$id_gruppo) $id_gruppo=0;
     223        $sql="select num_gruppo from ".$prefix."_ele_gruppo where id_gruppo='$id_gruppo'";
     224        $result1 = $dbi->prepare("$sql");
     225        $result1->execute();                                           
     226        list($num_gruppo)=$result1->fetch(PDO::FETCH_NUM);
     227        if ($perms >16) {
     228                if ($do == "delete") {
     229                        if ($ok !="1") {
     230                                ele();
     231                                echo "<center><br><br>"._DOMCANCELLA." "._LISTA." $descr_lista ?<br>";
     232                                echo "[ <a href=\"admin.php?op=lista&amp;id_cons_gen=$id_cons_gen&amp;min=$min&amp;id_circ=$id_circ\">"._NO."</a> ] - [<a href=\"admin.php?op=lista&amp;do=delete&amp;id_lista=$id_lista&amp;id_gruppo=$id_gruppo&amp;id_circ=$id_circ&amp;ok=1&amp;min=$min&amp;id_cons_gen=$id_cons_gen\">"._YES."</a> ]";exit;
     233                        }else{
     234                                $sql="delete from ".$prefix."_ele_lista where id_lista='$id_lista'";
     235                                $result = $dbi->prepare("$sql");
     236                                $result->execute();                                             
     237                                Header("Location: admin.php?op=lista&id_circ=$id_circ&id_cons_gen=$id_cons_gen&min=$min");
     238                        }
     239                }elseif ($do == "add") {
     240                        if ($descr_lista and ($id_gruppo or ($genere!=3 and $genere!=5))) {
     241                                $stemmablob='';
     242                                $stemmanome='';
     243                                $STEMM=$_FILES['stemma'];
     244                                $filestemma=$STEMM['tmp_name'];
     245                                $nomestemma=$STEMM['name'];
     246                                $sqlset='';
     247                                if ($filestemma){
     248                                        $fdstemma = fopen ("$filestemma", "rb");
     249                                        $stemmacontents = fread ($fdstemma, filesize ("$filestemma"));
     250                                        fclose ($fdstemma);
     251                                        $stemmablob=addslashes($stemmacontents);
     252                                        $stemmanome=addslashes($nomestemma);
     253                                }
     254                                $sql="insert into ".$prefix."_ele_lista (id_cons,num_lista,id_gruppo,num_gruppo,id_circ,descrizione,simbolo,stemma) values ('$id_cons','$num_lista','$id_gruppo','$num_gruppo','$id_circ','$descr_lista','$stemmanome','$stemmablob')";
     255                                $result = $dbi->prepare("$sql");
     256                                $result->execute();                                             
     257                                Header("Location: admin.php?op=lista&id_circ=$id_circ&min=$min&id_cons_gen=$id_cons_gen");
     258                        } else {
     259                                $mex="";
     260                                if (!$id_gruppo) $mex.="- Devi collegare la lista ad un gruppo! -";
     261                                if (!$descr_lista) $mex.="- Devi inserire il nome della lista! -";
     262                                Header("Location: admin.php?op=lista&id_circ=$id_circ&min=$min&id_cons_gen=$id_cons_gen&descr_lista=$descr_lista&id_gruppo=$id_gruppo&mex=$mex");
     263                        }
     264                }elseif ($do == "update") {
    237265                        $stemmablob='';
    238266                        $stemmanome='';
     
    242270                        $sqlset='';
    243271                        if ($filestemma){
    244                                 $fdstemma = fopen ("$filestemma", "rb");
    245                                 $stemmacontents = fread ($fdstemma, filesize ("$filestemma"));
    246                                 fclose ($fdstemma);
    247                                 $stemmablob=addslashes($stemmacontents);
    248                                 $stemmanome=addslashes($nomestemma);
    249                         }
    250                         $sql="insert into ".$prefix."_ele_lista (id_cons,num_lista,id_gruppo,id_circ,descrizione,simbolo,stemma) values ('$id_cons','$num_lista','$id_gruppo','$id_circ','$descr_lista','$stemmanome','$stemmablob')";
     272                        $fdstemma = fopen ("$filestemma", "rb");
     273                        $stemmacontents = fread ($fdstemma, filesize ("$filestemma"));
     274                        fclose ($fdstemma);
     275                        $stemmablob=addslashes($stemmacontents);
     276                        $stemmanome=($nomestemma);
     277                        $cond=", simbolo='$stemmanome', stemma='$stemmablob'";
     278                        } else {$cond='';}
     279                        $sql="update  ".$prefix."_ele_lista set  num_lista='$num_lista' , id_gruppo='$id_gruppo',num_gruppo='$num_gruppo',descrizione='$descr_lista' $cond  where id_lista='$id_lista'";
     280        #die("TEST: $sql");             
    251281                        $result = $dbi->prepare("$sql");
    252282                        $result->execute();                                             
    253283                        Header("Location: admin.php?op=lista&id_circ=$id_circ&min=$min&id_cons_gen=$id_cons_gen");
    254                 } else {
    255                         $mex="";
    256                         if (!$id_gruppo) $mex.="- Devi collegare la lista ad un gruppo! -";
    257                         if (!$descr_lista) $mex.="- Devi inserire il nome della lista! -";
    258                         Header("Location: admin.php?op=lista&id_circ=$id_circ&min=$min&id_cons_gen=$id_cons_gen&descr_lista=$descr_lista&id_gruppo=$id_gruppo&mex=$mex");
    259                 }
    260         }elseif ($do == "update") {
    261                 $stemmablob='';
    262                 $stemmanome='';
    263                 $STEMM=$_FILES['stemma'];
    264                 $filestemma=$STEMM['tmp_name'];
    265                 $nomestemma=$STEMM['name'];
    266                 $sqlset='';
    267                 if ($filestemma){
    268                 $fdstemma = fopen ("$filestemma", "rb");
    269                 $stemmacontents = fread ($fdstemma, filesize ("$filestemma"));
    270                 fclose ($fdstemma);
    271                 $stemmablob=addslashes($stemmacontents);
    272                 $stemmanome=($nomestemma);
    273                 $cond=", simbolo='$stemmanome', stemma='$stemmablob'";
    274                 } else {$cond='';}
    275                 $sql="update  ".$prefix."_ele_lista set  num_lista='$num_lista' , id_gruppo='$id_gruppo',descrizione='$descr_lista' $cond  where id_lista='$id_lista'";
    276 #die("TEST: $sql");             
    277                 $result = $dbi->prepare("$sql");
    278                 $result->execute();                                             
    279                 Header("Location: admin.php?op=lista&id_circ=$id_circ&min=$min&id_cons_gen=$id_cons_gen");
    280         }
    281 
    282 
    283 }
     284                }
     285
     286
     287        }
    284288}
    285289
  • trunk/admin/modules/Elezioni/restore.php

    r362 r383  
    103103                                        #       if(!$res_del->rowCount()) die ("delete $tbs where id_cons=$idcns--- errore di cancellazione");
    104104                                        }else $valori.= ",'".addslashes(base64_decode($val))."'";
    105                                         if($tab=='soraldo_ele_cons_comune') $valori.=",'0'";
     105#                                       else $valori.= ",''"; if($key!=9 and $tab!='soraldo_ele_gruppo')
     106#                                       if($tab=='soraldo_ele_cons_comune') $valori.=",'0'";
    106107                                $sql="insert into $tab values($valori)";
    107108                        try {                           
Note: See TracChangeset for help on using the changeset viewer.