<!--
// LINK srl - Mariarosaria Manco, Emanuele Nicoletti - Roma 2000/2001
// funzioni di verifica dei dati inseriti sul lato client

function controlla_av(f)
{
 var numtot = 0; //conterrą il numero dei campi con valore <> ""
 var gen = new Array(); //posizioni dei campi generali ricavati dalla function for_av	
 var cum = new Array(); //posizioni dei campi cumulativi ricavati dalla function for_av
 var spe = new Array(); //posizioni dei campi specifici ricavati dalla function for_av
 var ok = false;
 var rad = "";
 var pos = 0;
 var txt = "";
 var val, ele, vecchio,i,k;
 gen = for_av('campo_g',4,f);
 cum = for_av('campo_c',2,f); 		
 spe = for_av('campo_s',3,f);
 var gen_lung = gen.length; //lunghezza di gen
 var cum_lung = cum.length; //lunghezza di cum
 var spe_lung = spe.length; //lunghezza di spe
 numtot = gen_lung + cum_lung + spe_lung;

 if (numtot == 0)
 {
    alert(warning001);
    f.campo_g1.focus();
    return false	
 }
 else if (numtot == 1)
 {
    if (gen_lung != 0)
    {
       rad = 'radio_g';
       pos = gen[0];
       txt = 'campo_g'
    }
    else if (cum_lung != 0)
    {
       rad = 'radio_c';
       pos = cum[0];
       txt = 'campo_c'
    }
    else if (spe_lung != 0)
    {
       rad = 'radio_s';
       pos = spe[0];
       txt = 'campo_s'
    }	  	
    val = eval('f.' + rad + pos + '.length');
    for (i=0; i < val; i++)
    {       
       	if (eval('f.'+ rad + pos + '['+ i +']').checked)
       	{
       	    ok = true;
       	    break
       	}
    }
    if (!ok)
    {  
       alert(warning002);
       eval('f.'+ txt + pos).focus();
       return false
    }
 }
 else if (numtot > 1)
 {
	 ok = false;
	 if (gen_lung != 0)
         {
   	    vecchio = 0;
   	    for (i=0; i<gen_lung; i++)
   	    {
   	        if (gen[i] > 0)
 		{
 		   if (vecchio > 0)
 		   {
 		      val = eval('f.andor_g'+ vecchio + '.length');
 		      for (k=0; k<val; k++)
     		      {    
       		    	   if (eval('f.andor_g'+ vecchio + '['+ k +']').checked)
       			   {
       	  		      ok = true;
       	 		      break
       			   }
     		      }
	  	      if (!ok)
	  	      {
	  	   	 alert(warning006);
	  	   	 eval('f.campo_g' + vecchio).focus();
	  	   	 return false 
	  	      }
	  	      ok = false
 		   } 				  	
 		   vecchio = gen[i];	  	
 		   if (eval('f.campo_g' + vecchio + '.value') != "")
 		   {
 		      val = eval('f.radio_g' + vecchio + '.length')	
 		      for (k = 0; k < val; k++)
     		      {       
       		          if (eval('f.radio_g' + vecchio + '['+ k +']').checked)
       		          {
       	  		     ok = true;
       	 		     break
       		          }
     		      }  
	  	      if (!ok)
                      {
	  	         alert(warning002); 
	  	         eval('f.campo_g' + vecchio).focus();
	  	         return false
	  	      }
	  	      ok = false
 		   }	  	   		
 		}  	  	  	  
   	    }	
         }
	 if (cum_lung != 0)
   	 {	
   	    vecchio = 0;
   	    for (i=0 ; i<cum_lung ; i++)
   	    {
   	        if (cum[i] > 0)
 		{
 		   if (vecchio > 0)
 		   {
 		      val = eval('f.andor_c'+ vecchio + '.length');
 		      for (k=0; k<val; k++)
     		      {    	    
       		    	  if (eval('f.andor_c'+ vecchio + '['+ k +']').checked)
       			  {
       	  		     ok = true;
       	 		     break
       			  }
     		      }
	  	      if (!ok)
	  	      {
	  	   	 eval('f.campo_c' + vecchio).focus();
	  	   	 return false
	  	      }
	  	      ok = false
 		   } 				  	
 		   vecchio = cum[i];  	
 		   if (eval('f.campo_c' + vecchio + '.value') != "")
 		   {	
 		      val = eval('f.radio_c' + vecchio + '.length')
 		      for (k=0; k<val; k++)
     		      {        
       		    	  if (eval('f.radio_c' + vecchio + '['+ k +']').checked)
       			  {
       	  		     ok = true;
       	 		     break
       			  }
     		      }	
	  	      if (!ok)
	  	      {
	  	   	 alert(warning002);
	  	   	 eval('f.campo_c' + vecchio).focus();	  	   			    
	  	   	 return false
	  	      }
	  	      ok = false
 		   }
 		}  	  	  	  
   	    }   	  	  	
   	 }	  	
   	 if (spe_lung != 0)
   	 {
   	    vecchio = 0;
   	    for (i=0 ; i < spe_lung ; i++)
   	    {
   	  	if (spe[i] > 0)
                {
                   if (vecchio > 0)
                   {
 		      val = eval('f.andor_s'+ vecchio + '.length');
 		      for (k=0; k < val; k++)
     		      {    	    
       		    	  if (eval('f.andor_s'+ vecchio + '['+ k +']').checked)
       			  {
       	  		     ok = true;
       	 		     break
       			  }
     		      }
	  	      if (!ok)
	  	      {
	  	         alert(warning006);
	  	         eval('f.campo_s' + vecchio).focus();	  	   				    
	  	         return false
	  	      }
	  	      ok = false
                   } 				  	
                   vecchio = spe[i];	  	
 		   if (eval('f.campo_s' + vecchio + '.value') != "")
 		   {
 		      val = eval('f.radio_s' + vecchio + '.length')
 		      for (k=0; k < val; k++)
     		      {    	    
       		    	  if (eval('f.radio_s' + vecchio + '['+ k +']').checked)
       			  {
       	  		     ok = true;
       	 		     break
       			  }
     		      }
     		      if (!ok)
	  	      {
	  	   	 alert(warning002);
	  	   	 eval('f.campo_s'+ vecchio).focus();	   			    
	  	   	 return false
	  	      }
	  	      ok = false
 		   }
                }  	  	  	  
   	    }

        }
        ok=false;
        if ((gen_lung != 0) && ((cum_lung != 0) || (spe_lung != 0)))
	{
	    for (i=0; i<2; i++)
     	    {        
       		if (f.andor1[i].checked)
       		{
       	  	   ok = true;
       	 	   break
       		}
	    }
	    if (!ok)
	    {
	  	alert(warning006);
	  	f.andor1[0].focus();
	  	return false	
	    }
	 }
	 ok=false;
	 if ((cum_lung != 0) && (spe_lung != 0))
	 {
	    for (i=0; i<2; i++)
	    {          
       		if (f.andor2[i].checked)
       		{
       	  	   ok = true;
       	 	   break
       		}
	    }
	    if (!ok)
            {
	       alert(warning006);
	       f.andor2[0].focus();
	       return false
            }
	 }	  	
 }		
 return true
}


function for_av(nome,numero,f)
{
  var num = 0; //VAR LOCALE conterrą il numero dei campi con valore <> ""
  var vet = new Array(); //PARTE DALL'ELEMENTO 0 conterrą i numeri dei campi con elementi <> "
  var j = 0; //sarą l'indice del vettore vet
  var a = ""; //variabile d'appoggio per la costruzione delle stringhe 
  var i;
  for (i = 1; i <= numero; i++)
  {
      a = 'f.' + nome + i +'.value.length';
      b = eval(a) - 0; //serve a convertirlo in intero
      if (b > 0)
      {
	  vet[j] = i;
	  j++
      }    	    
 }		
 return(vet)
}


function controlla(f)
{
  var ok1 = false;
  var ok2 = false;
  var i;
  	
  if (f.campo_g1.value.length != 0)
  {  
     for (i=0; i<f.tipo.length; i++)
     {        
       if (f.tipo[i].checked)
       {
       	  ok1 = true
       	  break
       }
     }
     if (!ok1)
     {
       alert (warning002);
       return false
     }
  }
  
  if (f.enti.value.length != 0)
  {  
     for (i=0; i<f.tipo1.length; i++)
     {        
       if (f.tipo1[i].checked)
       {
       	  ok2 = true
       	  break
       }
     }
     if (!ok2)
     {
       alert (warning002);
       return false
     }
  }
  
  if (ok1 && ok2)
  {
    ok1 = false;
    
    for (i=0; i<f.andor.length; i++)
    {        	
       if (f.andor[i].checked)
       {
       	  ok1 = true
       	  break
       }
    }
    if (!ok1)
    {
       alert (warning006);
       return false
    }
  }

  if (!ok1 && !ok2)
  {
  	alert(warning001);
  	return false
  }
  
  return true
}

function seldoc(f)
{
 var i;	
 if (f.scelte.length > 0)
 {
    for (i=0; i < f.scelte.length; i++)
    {        
        if (f.scelte[i].checked)
           return true
    }
 }
 else
 {
   if (f.scelte.checked)
      return true
 }
 alert (warning003);
 return false
}

function continua(f,dove)
{
 var i;	
 var ok;
 ok = false;
 if (f.scelte.length > 0)
 {
 for (i=0; i < f.scelte.length; i++)
 {        
     if (f.scelte[i].checked)
     {
        if (confirm(warning005))
        {
          ok = true
        }
        break
     }
     if (i == (f.scelte.length-1))
     {
     	ok = true
     } 
 }
 }
 else
 {
   if (f.scelte.checked)
   {
     if (confirm(warning005))
        {
          ok = true
        }    
   }
   else
   {
   	ok = true
   }
 }
 if (ok)
 {
   self.location.href=dove
 }
}
		
function maxdoc(f)
{
  var i;
  var j=0;
  for (i=0; i < document.scegli_doc.scelte.length; i++)
  {        
     if (document.scegli_doc.scelte[i].checked)
       j++
     if (j > 3)
     {
        alert(warning004);
        f.checked = false
        break
     }
  }
}

//-->   
