Index: trunk/client/modules/Elezioni/consiglieri.php
===================================================================
--- trunk/client/modules/Elezioni/consiglieri.php	(revision 382)
+++ trunk/client/modules/Elezioni/consiglieri.php	(revision 383)
@@ -24,8 +24,8 @@
 $result->execute();
 list($id_conf,$fascia) = $result->fetch(PDO::FETCH_NUM);
-$sql = "SELECT limite,consin,infpremio,supsbarramento,suppremio,listinfsbar,listinfconta,listsupconta,supminpremio,infminpremio from ".$prefix."_ele_conf where id_conf='$id_conf'";
+$sql = "SELECT limite,consin,infpremio,supsbarramento,suppremio,listinfsbar,listinfconta,listsupconta,supminpremio,infminpremio,inffisso from ".$prefix."_ele_conf where id_conf='$id_conf'";
 $res = $dbi->prepare("$sql");
 $res->execute();
-list($limite,$consin,$infpremio,$supsbarramento,$suppremio,$listinfsbar,$listinfconta,$listsupconta,$supminpremio,$infminpremio) = $res->fetch(PDO::FETCH_NUM);
+list($limite,$consin,$infpremio,$supsbarramento,$suppremio,$listinfsbar,$listinfconta,$listsupconta,$supminpremio,$infminpremio,$inffisso) = $res->fetch(PDO::FETCH_NUM);
 $numcons=0;
 echo "<table><tr><td align=\"center\">"._PROIEZCONS."</td></tr></table>";
@@ -33,5 +33,5 @@
 
 function consiglio(){
-global $param,$id_cons_gen, $dbi, $prefix, $id_comune, $gruppo, $numgruppo, $listecol, $id_comune, $limite,$numcons,$id_conf,$fascia,$id_cons;
+global $param,$id_cons_gen, $dbi, $prefix, $id_comune, $gruppo, $numgruppo, $listecol, $id_comune, $limite,$numcons,$id_conf,$fascia,$id_cons,$validi;
 $collegate= array();
 $collperd= array();
@@ -54,9 +54,9 @@
 
 	list($capoluogo) = $result->fetch(PDO::FETCH_NUM);
-	$sql = "select fascia_capoluogo from ".$prefix."_ele_conf where id_conf='$conf'";
+	$sql = "select inffisso,fascia_capoluogo from ".$prefix."_ele_conf where id_conf='$conf'";
 $result = $dbi->prepare("$sql");
 $result->execute();
 
-	list($fascia2) = $result->fetch(PDO::FETCH_NUM);
+	list($inffisso,$fascia2) = $result->fetch(PDO::FETCH_NUM);
 	if($fascia<$fascia2 and $capoluogo) $fascia=$fascia2;
 
@@ -122,6 +122,10 @@
 			$numgruppo=$num_gruppo1;
 	}
-	if ($fascia<=$limite and $numgruppo) consmin($fascia,$numgruppo);
-	elseif ($gruppo>0) conssup($fascia,$gruppo,$collegate,$collperd,$primoturno);
+	if ($fascia<=$limite and $numgruppo) {
+		if($inffisso)
+			consmin4($fascia,$numgruppo);
+		else
+			consmin($fascia,$numgruppo);
+	}elseif ($gruppo>0) conssup($fascia,$gruppo,$collegate,$collperd,$primoturno);
 	elseif ($numgruppo>0){
 		$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'].")";
@@ -204,6 +208,172 @@
 }
 
+function consmin4($fascia,$grp) {
+global $id_cons, $prefix,$dbi,$num_candlst,$PNE,$CSEC,$validi,$consin,$numcons,$inffisso;
+global $infpremio,$fisso,$sincons, $votol;
+if (!isset($fisso)) $fisso=0; #se fisso=1 il premio di maggioranza Ãš fisso
+if (isset($votol)) {$votolista=$votol; $fisso=$votol;} #se votolista=1 c'e' voto di lista
+if (!isset($sincons)) $sincons=0; #se sincons=1 il sindaco eletto occupa un posto di consigliere
+$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";
+$res = $dbi->prepare("$sql");
+$res->execute();
+$numgruppi=$res->rowCount();
+$PNE=_PRIMONON;
+$CSEC=_SINDCONS;
+$sorteggio=0;
+$sindel=0;
+$num_candlst=array();
+$listagruppo=array();
+#funzione di calcolo per comuni fino a 15.000 abitanti (piÃ¹ esattamente fino al valore di $limite)
+$grpcond='';
+if($grp) $grpcond="and t1.num_gruppo='$grp'";
+if ($sincons) $numcons--;
+#$numcons--;
+#carica numero di liste e voti, i voti sono quelli del gruppo se non c'e' voto di lista
+$seggimag=array();
+##########
+#	$sql = "SELECT t1.descrizione,t1.num_gruppo,t2.id_lista,t2.num_lista,t2.descrizione,sum(t3.voti) as voti from ".$prefix."_ele_gruppo as t1, ".$prefix."_ele_lista as t2, ".$prefix."_ele_voti_gruppo as t3 where t1.id_cons='$id_cons' and t1.id_gruppo=t2.id_gruppo and t1.id_gruppo=t3.id_gruppo group by t1.descrizione, t1.num_gruppo,t2.num_lista,t2.descrizione order by voti desc limit 0,2";
+
+ ################
+	#seleziona il sindaco (gruppo con piÃ¹ voti) e lista collegata
+	$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";
+	$res_per = $dbi->prepare("$sql");
+	$res_per->execute();
+	$votig=0;
+	$gruppo=array();
+	$conselcsne=array();
+	$lisvin=0;
+	$gruvin=0;
+	while(list($descr,$num_gruppo,$voti)= $res_per->fetch(PDO::FETCH_NUM))
+	{
+		$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";
+		$res_lis = $dbi->prepare("$sql");
+		$res_lis->execute();
+		list($id_lista1,$num_lista,$descr_lista,$votil)= $res_lis->fetch(PDO::FETCH_NUM);
+		
+		$desgruppi[$num_gruppo]=$descr;
+		$listagruppo[$num_lista]=$num_gruppo;
+		if($voti>=$votig and (!$grp or $grp==$num_gruppo)) 
+		{
+			if(!$lisvin ) {$lisvin=$num_lista; $gruvin=$num_gruppo;}
+			$votig=$voti;
+			if ($grp)
+				$votig++;
+			$gruppo[$num_gruppo]=array($descr,$num_gruppo,$id_lista1,$num_lista,$descr_lista,$voti);
+		}else{
+			if($voti>=$validi/5) {$sindel=1;$conselcsne[]=array("$CSEC","","",$descr,"","");}
+		}
+	}
+	#seleziona la lista (o liste) con piÃ¹ voti
+	$sql = "SELECT t1.descrizione, t2.id_lista,t2.num_lista, 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.descrizione order by voti desc";
+	$res_per = $dbi->prepare("$sql");
+	$res_per->execute();
+	$seggi=array();
+	$idlst= array();
+	$desliste=array();
+	$lists=array();
+#	$votimax=0;
+	$contalst=0;
+	$mag=intval($validi/2)+1;
+	$lim5=intval($validi/20);
+	$varmag=0;
+	$prevoti=0;
+	$lav=0;
+	while(list($descr_lista,$id_lista2,$num_lista,$voti)= $res_per->fetch(PDO::FETCH_NUM)){
+		if($voti<$prevoti) 
+			if($num_lista!=$lisvin)
+			{
+				if($lav) break;
+				else continue;
+			}
+		if($voti<=$lim5) break;
+		if($voti>=$mag) {
+			$desliste[$num_lista]=$num_lista.") ".$descr_lista;
+			$quozienti[$num_lista]=$voti;
+			$lists[$num_lista]=$voti;
+			$idlst[$num_lista]=$id_lista2; 
+			if($num_lista===$lisvin) {
+				$seggi[$num_lista]=number_format($numcons/3*2);
+				$varmag=1;
+				continue;
+			}else{
+				$seggimin[$num_lista]=number_format($numcons*0.6,0);
+				$seggi[$lisvin]=number_format($numcons*0.4,0);
+				$prevoti=$voti;
+				$varmag=1;
+				continue;
+			}
+		}else{
+			if($num_lista!=$lisvin) $contalst++;
+			$quozienti[$num_lista]=$voti;
+			$desliste[$num_lista]=$num_lista.") ".$descr_lista;
+			$lists[$num_lista]=$voti;
+			$idlst[$num_lista]=$id_lista2;
+				if($num_lista==$lisvin and !$varmag)
+					$seggi[$num_lista]=number_format($numcons/3*2);
+				elseif($num_lista!=$lisvin)
+					$seggimin[$num_lista]=number_format($numcons/3);
+		}
+		if($num_lista!=$lisvin) $prevoti=$voti;
+		else $lav=1;
+	}
+	if(!isset($seggi[$lisvin])) $seggi[$lisvin]=number_format($numcons/3*2,0);
+$consel=array();
+$conselmin=array();
+$consel[]=array(_LISTA,_VOTI,_SEGGI,_CANDIDATO,_CIFRAELE,_QUOZIENTI);
+foreach ($idlst as $lista=>$id_lista){
+    $sql = "SELECT concat(substring(concat('0',t1.num_cand),-2),') ',t1.cognome,' ',substring(t1.nome from 1 for 1),'.') as descr,sum(t2.voti) as voti from ".$prefix."_ele_candidati as t1, ".$prefix."_ele_voti_candidati as t2 where t1.id_lista='$id_lista' and t1.id_cand=t2.id_cand GROUP BY descr order by voti desc,descr";
+	$res_can = $dbi->prepare("$sql");
+	$res_can->execute();
+    $num_candlst[$lista]=$res_can->rowCount();
+    $pos=0;
+    while(list($cand,$pre)=$res_can->fetch(PDO::FETCH_NUM)){
+    	if(!isset($lists[$lista])) $lists[$lista]=0;
+    	$cifra[$lista][$pos]=$lists[$lista]+$pre;
+    	$arvin[$lista][$pos++]=$cand; 
+    }	    
+}
+	if(isset($mex)) 
+    echo "$mex";
+	foreach ($seggi as $lista=>$val){
+      	for ($z=0;$z<$val;$z++){
+			if ($z) $consel[]=array("","","",$arvin[$lista][($z)],$cifra[$lista][($z)],number_format($quozienti[$lista]/($z+1),2,',','.'));
+			else $consel[]=array($desliste[$lista],$lists[$lista],$val,$arvin[$lista][($z)],$cifra[$lista][($z)],number_format($quozienti[$lista]/($z+1),2,',','.'));
+		}
+	}
+    if($arvin[$lista][($z)]) $consel[]=array($desliste[$lista],"$PNE","",$arvin[$lista][($z)],$cifra[$lista][($z)],number_format($quozienti[$lista]/($z+1),2,',','.')); 
+	$assegnato=0;
+	$sorteggio=0;
+    foreach ($seggimin as $lista=>$val){ 
+    	if ($consin and $val>0 and $sindel){
+    		$val--;
+    	}
+		$val=number_format($val/$contalst);
+		if($val%$contalst) $sorteggio=1;
+      for ($z=0;$z<$val;$z++){
+        	if ($z) $conselmin[]=array("","","",$arvin[$lista][($z)],$cifra[$lista][($z)],number_format($quozienti[$lista]/($z+1),2,',','.'));
+        	else $conselmin[]=array($desliste[$lista],$lists[$lista],$val,$arvin[$lista][($z)],$cifra[$lista][($z)],number_format($quozienti[$lista]/($z+1),2,',','.'));
+		}
+		if($arvin[$lista][($z)]) $conselmin[]=array($desliste[$lista],"$PNE","",$arvin[$lista][($z)],$cifra[$lista][($z)],number_format($quozienti[$lista]/($z+1),2,',','.'));
+    }
+	foreach($conselcsne as $key=>$val) 
+	{
+		$consel[]=array($val[0],$val[3]);
+	}
+	foreach($conselmin as $key=>$val) 
+	{
+		$consel[]=array($val[0],$val[1],$val[2],$val[3],$val[4],$val[5]);
+	}
+        
+    
+#   echo "<br> lisvin: $lisvin"; 
+    echo "<table summary=\"Tabella dei consiglieri eletti\" class=\"table-docs\" cellspacing=\"0\" cellpadding=\"2\" border=\"1\" rules=\"all\">";
+    echo "<tr class=\"bggray\"><td scope=\"row\">";
+    echo _SINDACO.": ".$desgruppi[$listagruppo[$lisvin]]."</td></tr></table>";
+    stampalista($consel);
+}
+#####################
+
 function consmin($fascia,$grp) {
-global $id_cons, $prefix,$dbi,$num_candlst,$quozienti,$PNE,$CSEC,$consin,$numcons;
+global $id_cons, $prefix,$dbi,$num_candlst,$quozienti,$PNE,$CSEC,$consin,$numcons,$inffisso;
 global $infpremio,$fisso,$sincons, $votol;
 if (!isset($fisso)) $fisso=0; #se fisso=1 il premio di maggioranza Ãš fisso
@@ -228,5 +398,7 @@
 $consel[]=array(_LISTA,_VOTI,_SEGGI,_CANDIDATO,_CIFRAELE,_QUOZIENTI);
 #carica numero di liste e voti, i voti sono quelli del gruppo se non c'e' voto di lista
-if($votolista=='0')
+if($inffisso=='1')
+	$sql = "SELECT sum(validi+contestati) from ".$prefix."_ele_sezioni where id_cons='$id_cons'";
+elseif($votolista=='0')
 	$sql = "SELECT sum(validi) from ".$prefix."_ele_sezioni where id_cons='$id_cons'";
 else
@@ -234,30 +406,26 @@
 $res_val = $dbi->prepare("$sql");
 $res_val->execute();
-
 list($validi) = $res_val->fetch(PDO::FETCH_NUM);
-#se votolista==1, Ãš abilitato il voto di lista ed Ãš quello su cui si calcola l'assegnazione dei seggi 
+#se votolista==1, Ãš abilitato il voto di lista ed Ãš quello su cui si calcola l'assegnazione dei seggi
 if ($fisso==1){
-	#seleziona il sindaco
-$sql = "SELECT t1.descrizione,t1.num_gruppo,t2.id_lista,t2.num_lista,t2.descrizione,sum(t3.voti) as voti from ".$prefix."_ele_gruppo as t1, ".$prefix."_ele_lista as t2, ".$prefix."_ele_voti_gruppo as t3 where t1.id_cons='$id_cons' and t1.id_gruppo=t2.id_gruppo and t1.id_gruppo=t3.id_gruppo group by t1.descrizione, t1.num_gruppo,t2.num_lista,t2.descrizione order by voti desc limit 0,1";
-$res_per = $dbi->prepare("$sql");
-$res_per->execute();
-
+	#seleziona il sindaco (gruppo con piÃ¹ voti) e lista collegata
+	$sql = "SELECT t1.descrizione,t1.num_gruppo,t2.id_lista,t2.num_lista,t2.descrizione,sum(t3.voti) as voti from ".$prefix."_ele_gruppo as t1, ".$prefix."_ele_lista as t2, ".$prefix."_ele_voti_gruppo as t3 where t1.id_cons='$id_cons' and t1.id_gruppo=t2.id_gruppo and t1.id_gruppo=t3.id_gruppo group by t1.descrizione, t1.num_gruppo,t2.num_lista,t2.descrizione order by voti desc limit 0,1";
+	$res_per = $dbi->prepare("$sql");
+	$res_per->execute();
 	list($descr,$num_gruppo,$id_lista1,$num_lista,$descr_lista,$voti)= $res_per->fetch(PDO::FETCH_NUM);
-$sql = "SELECT t2.id_lista, sum(t2.voti) as voti from ".$prefix."_ele_voti_lista as t2 where t2.id_cons='$id_cons' and t2.id_lista!='$id_lista1' group by t2.id_lista order by voti desc limit 0,1";
-$res_per = $dbi->prepare("$sql");
-$res_per->execute();
-
+	#seleziona la lista di minoranza con piÃ¹ voti
+	$sql = "SELECT t2.id_lista, sum(t2.voti) as voti from ".$prefix."_ele_voti_lista as t2 where t2.id_cons='$id_cons' and t2.id_lista!='$id_lista1' group by t2.id_lista order by voti desc limit 0,1";
+	$res_per = $dbi->prepare("$sql");
+	$res_per->execute();
 	list($id_lista2,$voti)= $res_per->fetch(PDO::FETCH_NUM);
       #e la lista di minoranza
 	$ordine= $id_lista1>$id_lista2 ? "desc":"";
-$sql = "SELECT t1.descrizione,t1.num_gruppo,t2.id_lista,t2.num_lista,t2.descrizione,sum(t3.voti) as voti from ".$prefix."_ele_gruppo as t1, ".$prefix."_ele_lista as t2, ".$prefix."_ele_voti_lista as t3 where (t2.id_lista='$id_lista1' or t2.id_lista='$id_lista2') and t1.id_gruppo=t2.id_gruppo and t2.id_lista=t3.id_lista group by t1.descrizione,t1.num_gruppo,t2.num_lista,t2.descrizione order by t2.id_lista $ordine";
-$res_per = $dbi->prepare("$sql");
-$res_per->execute();
-
-	}else{
-$sql = "SELECT t1.descrizione,t1.num_gruppo,t2.id_lista,t2.num_lista,t2.descrizione,sum(t3.voti) as voti from ".$prefix."_ele_gruppo as t1, ".$prefix."_ele_lista as t2, ".$prefix."_ele_voti_gruppo as t3 where t1.id_cons='$id_cons' and t1.id_gruppo=t2.id_gruppo and t1.id_gruppo=t3.id_gruppo group by t1.descrizione,t1.num_gruppo,t2.id_lista,t2.num_lista,t2.descrizione order by voti desc";
-$res_per = $dbi->prepare("$sql");
-$res_per->execute();
-
+	$sql = "SELECT t1.descrizione,t1.num_gruppo,t2.id_lista,t2.num_lista,t2.descrizione,sum(t3.voti) as voti from ".$prefix."_ele_gruppo as t1, ".$prefix."_ele_lista as t2, ".$prefix."_ele_voti_lista as t3 where (t2.id_lista='$id_lista1' or t2.id_lista='$id_lista2') and t1.id_gruppo=t2.id_gruppo and t2.id_lista=t3.id_lista group by t1.descrizione,t1.num_gruppo,t2.num_lista,t2.descrizione order by t2.id_lista $ordine";
+	$res_per = $dbi->prepare("$sql");
+	$res_per->execute();
+}else{
+	$sql = "SELECT t1.descrizione,t1.num_gruppo,t2.id_lista,t2.num_lista,t2.descrizione,sum(t3.voti) as voti from ".$prefix."_ele_gruppo as t1, ".$prefix."_ele_lista as t2, ".$prefix."_ele_voti_gruppo as t3 where t1.id_cons='$id_cons' and t1.id_gruppo=t2.id_gruppo and t1.id_gruppo=t3.id_gruppo group by t1.descrizione,t1.num_gruppo,t2.id_lista,t2.num_lista,t2.descrizione order by voti desc";
+	$res_per = $dbi->prepare("$sql");
+	$res_per->execute();
 }  
 $groups=array();
@@ -281,32 +449,30 @@
     $x++;
     }#controllo del premio di maggioranza
-//    if ($gruppo[$listagruppo[$lisvin]]>($validi*2/3))
+	//    if ($gruppo[$listagruppo[$lisvin]]>($validi*2/3))
 	if($numgruppi==1) $fisso=1;
-    if ($gruppo[$listagruppo[$lisvin]]>($validi*$infpremio/100) and $fisso==1) 
-    {
-$seggimag[$lisvin]=number_format($numcons*($gruppo[$listagruppo[$lisvin]]*100/$validi)/100);
-##echo "<br> seggimag:".$seggimag[$lisvin];
-$num_cons=number_format($numcons-$seggimag[$lisvin]);
-#    	$num_cons=$numcons;
-    } else {   
+	if ($gruppo[$listagruppo[$lisvin]]>($validi*$infpremio/100) and $fisso==1) 
+	{
+		$seggimag[$lisvin]=number_format($numcons*($gruppo[$listagruppo[$lisvin]]*100/$validi)/100);
+		##echo "<br> seggimag:".$seggimag[$lisvin];
+		$num_cons=number_format($numcons-$seggimag[$lisvin]);
+		#    	$num_cons=$numcons;
+	} else {   
 //    	$seggimag[$lisvin]=number_format($numcons*2/3);
 //    	$num_cons=number_format($numcons/3);
-    	$seggimag[$lisvin]=number_format($numcons*$infpremio/100);
-    	$num_cons=number_format($numcons-$seggimag[$lisvin]);
-    }
+		$seggimag[$lisvin]=number_format($numcons*$infpremio/100);
+		$num_cons=number_format($numcons-$seggimag[$lisvin]);
+	}
     foreach ($listagruppo as $lista=>$val){
-    $id_lista=$idlst[$lista];
-    $sql = "SELECT concat(substring(concat('0',t1.num_cand),-2),') ',t1.cognome,' ',substring(t1.nome from 1 for 1),'.') as descr,sum(t2.voti) as voti from ".$prefix."_ele_candidati as t1, ".$prefix."_ele_voti_candidati as t2 where t1.id_lista='$id_lista' and t1.id_cand=t2.id_cand GROUP BY descr order by voti desc,descr";
-$res_can = $dbi->prepare("$sql");
-$res_can->execute();
-
-    
-    $num_candlst[$lista]=$res_can->rowCount();
-    $pos=0;
-    while(list($cand,$pre)=$res_can->fetch(PDO::FETCH_NUM)){
-    	if(!isset($lists[$lista])) $lists[$lista]=0;
-    	$cifra[$lista][$pos]=$lists[$lista]+$pre;
-    	$arvin[$lista][$pos++]=$cand;
-    }	    
+		$id_lista=$idlst[$lista];
+		$sql = "SELECT concat(substring(concat('0',t1.num_cand),-2),') ',t1.cognome,' ',substring(t1.nome from 1 for 1),'.') as descr,sum(t2.voti) as voti from ".$prefix."_ele_candidati as t1, ".$prefix."_ele_voti_candidati as t2 where t1.id_lista='$id_lista' and t1.id_cand=t2.id_cand GROUP BY descr order by voti desc,descr";
+		$res_can = $dbi->prepare("$sql");
+		$res_can->execute();
+		$num_candlst[$lista]=$res_can->rowCount();
+		$pos=0;
+		while(list($cand,$pre)=$res_can->fetch(PDO::FETCH_NUM)){
+			if(!isset($lists[$lista])) $lists[$lista]=0;
+			$cifra[$lista][$pos]=$lists[$lista]+$pre;
+			$arvin[$lista][$pos++]=$cand;
+		}	    
     }
     if ($num_candlst[$lisvin]<$seggimag[$lisvin]) {
@@ -324,9 +490,11 @@
     		if($arvin[$lista][($z)]) $consel[]=array($desliste[$lista],"$PNE","",$arvin[$lista][($z)],$cifra[$lista][($z)],number_format($quozienti[$lista][$z],2));
     $seggimin=array();
+	$assegnato=0;
     $seggimin=calcoloseggi($listemin,$num_cons,1);
     foreach ($seggimin as $lista=>$val){
-    	if ($consin and $val>0){
+    	if ($consin and $val>0 and (!$assegnato or !$inffisso)){
     		$conselcsne[]=array("$CSEC","","",$desgruppi[$listagruppo[$lista]],"","");
     		$val--;
+			$assegnato=1;
     	}
       for ($z=0;$z<$val;$z++){
@@ -450,4 +618,5 @@
 				}
 			}
+			$z=0;
 			foreach ($riga as $cella) {
 			 if ($e==1){ 
@@ -455,8 +624,11 @@
 			}else{ 
 				$t="<td scope=\"row\"";$f="</td>";	
-			}					
+			}
+			if($z==0 or $z==3)
 				echo "$t $i align=\"left\">$cella $f";
-					$i='';
-				
+			else
+				echo "$t $i align=\"right\">$cella $f";
+			$i='';
+			$z++;	
 			}
 			if ($y) $y=0;
Index: trunk/client/versione.php
===================================================================
--- trunk/client/versione.php	(revision 382)
+++ trunk/client/versione.php	(revision 383)
@@ -1,7 +1,7 @@
 <?php
 
-$versione = "3.0 rev 382";
+$versione = "3.0 rev 383";
 $version_number = $versione;
-$datarel = "28 ottobre 2022";
+$datarel = "15 novembre 2022";
 $version = "Eleonline $version_number (<i>Data Release: $datarel</i>)";
 
