// Modulo per la dichiarazione delle strutture generali
//
	
	
	function ControllaCampoStringaLAt(CodCampo,DescCampo,Lungmin,Lungmax)
	{
	  if (Lungmin > 0)
	  {
		if (CodCampo.value == "")
		{
		  alert("Fai click sulla mappa per geolocalizzare la problematica.");
		  CodCampo.focus();
		  return (false);
		}
	  }
	  if (CodCampo.value.length < Lungmin)
	  {
		alert("Fai click sulla mappa per geolocalizzare la problematica.");
		CodCampo.focus();
	    return (false);
	  }
	  if (CodCampo.value.length > Lungmax)
	  {
	   alert("Fai click sulla mappa per geolocalizzare la problematica.");
		CodCampo.focus();
	    return (false);
	  }
	  return (true);
	}
	
	
	
	
	
	// Funzione per il controllo delle stringhe nelle pagine
	function ControllaCampoStringa(CodCampo,DescCampo,Lungmin,Lungmax)
	{
	  if (Lungmin > 0)
	  {
		if (CodCampo.value == "")
		{
		  alert("Inserire un valore per il campo '" + DescCampo + "'.");
			CodCampo.focus();
		  return (false);
		}
	  }
	  if (CodCampo.value.length < Lungmin)
	  {
	    alert("Inserire almeno " + Lungmin + " caratteri per il campo '" + DescCampo + "'.");
		CodCampo.focus();
	    return (false);
	  }
	  if (CodCampo.value.length > Lungmax)
	  {
	    alert("Inserire al massimo " + Lungmax + " caratteri per il campo '" + DescCampo + "'.");
		CodCampo.focus();
	    return (false);
	  }
	  return (true);
	}
	
	// Funzione per il controllo dei campi interi nelle pagine
	function ControllaCampoNumero(CodCampo,DescCampo,decPoints,valmin,valmax)
	{
		var checkOK = "0123456789-,";
		var allValid = true;
		var decPoints = 0;
		var allNum = "";

		if (CodCampo.value == "")
		{
		  alert("Inserire un valore per il campo '" + DescCampo + "'.");
		  CodCampo.focus();
		  return (false);
		}
		  
		for (i = 0;  i < CodCampo.value.length;  i++)
		{
		  ch = CodCampo.value.charAt(i);
		  for (j = 0;  j < checkOK.length;  j++)
		    if (ch == checkOK.charAt(j))
		      break;
		  if (j == checkOK.length)
		  {
		    allValid = false;
		    break;
		  }
		  if (ch == ",")
		  {
		    allNum += ".";
		    decPoints++;
		  }
		  else
		    allNum += ch;
		}
		if (!allValid)
		{
			alert("Inserire solo cifre per il campo '" + DescCampo + "'.");
			CodCampo.focus();
			return (false);
		}
		if (decPoints > 1)
		{
			alert("Inserire un numero valido per il campo '" + DescCampo + "'.");
			CodCampo.focus();
			return (false);
		}
		if (CodCampo.value > valmax)
		{
			alert("Inserire un numero non superiore a " + valmax + " per il campo '" + DescCampo + "'.");
			CodCampo.focus();
			return (false);
		}
		if (CodCampo.value <= valmin)
		{
			alert("Inserire un numero non inferiore a " + valmin + " per il campo '" + DescCampo + "'.");
			CodCampo.focus();
			return (false);
		}
		
		return (true);
	}

	    function check_Data(st)
	      {
		       var dt = new Date(); // Establishes a specific date for the object.
		   	dt.setDate(st.substr(0, 2 ));
		   	dt.setMonth(st.substr(3, 2 )-1);
		   	dt.setYear(st.substr(6, 4 ));
		   	y = dt.getYear();
		   	if( y < 1900)
		   		y = y + 1900;
              if(st.length > 10)
              {
                return false;
	          }
	          else if(st.charAt(2) != '/' || st.charAt(5) != '/' )
	          {
              	return false;
              }
	          else if(dt.getDate() != st.substr(0, 2 ))
	          {
              	return false;
              }
	          else if((dt.getMonth()+1)!=st.substr(3, 2 ))
	          {
              	return false;
              }
	          else if(y!=st.substr(6, 4 ) || st.substr(6, 4 )<1900)
	          {
              	return false;
              }
		      return true;
	      }

	 function ControllaData(CodCampo,DescCampo)
	 {
	  if(!(check_Data(CodCampo.value)))
	  {
	  
			alert("Il campo '" + DescCampo + "' non e' nel formato corretto o la data inserita non e' valida");
			
			return (false);
	  }
	  return (true);
	 }

	function ControllaEmail(CodCampo,DescCampo,Lungmin,Lungmax) {
	  if (Lungmin > 0)
	  {
		if (CodCampo.value == "")
		{
		  alert("Inserire un valore per il campo '" + DescCampo + "'.");
			CodCampo.focus();
		  return (false);
		}
	  }
	  if ((CodCampo.value.indexOf("@") == -1) |
		(CodCampo.value.indexOf(".") == -1) | (CodCampo.value.length < 7))
	  {
			alert("Il campo '" + DescCampo + "' non e' nel formato corretto")
			CodCampo.focus();
			return (false);
	  }
	  if (CodCampo.value.length < Lungmin)
	  {
	    alert("Inserire almeno " + Lungmin + " caratteri per il campo '" + DescCampo + "'.");
		CodCampo.focus();
	    return (false);
	  }
	  if (CodCampo.value.length > Lungmax)
	  {
	    alert("Inserire al massimo " + Lungmax + " caratteri per il campo '" + DescCampo + "'.");
		CodCampo.focus();
	    return (false);
	  }
		
	  return (true);			
	}


	// Funzione per il controllo delle stringhe nelle pagine
	function ConfermaCancellazione()
	{
		return (confirm("Eliminare l'elemento selezionato ?"));
	}

function CambioPwd(pwdold,pwdnew,pwdconf) 
 {
		if (pwdold == "")
		{
		  alert("Inserire la vecchia password.");
		  return (false);
		}
		if (pwdnew == "")
		{
		  alert("Inserire la nuova password.");
		  return (false);
          }
		   else
		  {
			     if (pwdnew.length < 8)
						{
						  alert("La password deve essere di almeno 8 caratteri.");
						  return (false);
						}
		  }	
		if (pwdconf == "")
			{
			  alert("Reinserire la password per conferma.");
			  return (false);
			}
		
		 if (pwdconf != pwdnew)
			{
			  alert("Nuova password e conferma non corrispondenti: reinserire.");
			  return (false);
			}
	 
		return (true);			
}

		function ControllaDatiCliente(theForm)
		{
		var EliminaRecord = false;
		  theForm.CancRecord.value = EliminaRecord; // salvo l'informazione sulla canc record		

 if (EliminaRecord == false) {
  	         	  
		  if (!ControllaCampoStringa(theForm.USR,"Nome Utente (8 - 20 caratteri)",8,20))
		    return (false);
		  // CONTROLLO CHE USERNAME SCELTO NON SIA GIA' IN USO	
		  CodCampo  = theForm.USR;			  
          var righe=0;
		  righe=theForm.indiceusernames.value;    								  
		  for (var i=0;i<righe;i++) { 
			
			  if(usernames[i] == CodCampo.value){
				   alert("Lo Username che si sta tentando di inserire \xE8 gi\xE0 in uso...");		  
				   return (false); 
					  }  
				} 			  
		  // CONTROLLO CHE USERNAME SCELTO NON SIA GIA' IN USO

		  if (!ControllaCampoStringa(theForm.TIPOSOCIO,"Tipologia Socio",1,250))
		    return (false);				
		  if (!ControllaCampoStringa(theForm.COGNOME,"Cognome",1,50))
		    return (false);
		  if (!ControllaCampoStringa(theForm.NOME,"Nome",1,50))
		    return (false);      
   
		  if (theForm.GG.value!='' && theForm.MM.value!='' && theForm.AAAA.value!=''){	
		     theForm.DATANAS.value=theForm.GG.value + '/' + theForm.MM.value + '/' + theForm.AAAA.value;
		      }
		  if (theForm.DATANAS.value!=''){			
		  //alert(theForm.DATANAS.value);
				  if (!ControllaData(theForm.DATANAS,"Data Nascita"))
					return (false);			
			      }				  
		  if (!ControllaCampoStringa(theForm.INDIRIZZO,"Indirizzo",1,100))
		    return (false);					  
		  if (!ControllaCampoStringa(theForm.COMUNE,"Citta\'",1,100))
		    return (false);			
			if (!ControllaCampoStringa(theForm.CAP,"C.A.P.",1,100))
		    return (false);
		  if (!ControllaCampoStringa(theForm.STATO,"Stato",1,100))
		    return (false);									        
		  if (!ControllaCampoStringa(theForm.PROV,"Provincia",1,3))
		    return (false);		          
		  //if (!ControllaCampoStringa(theForm.TELEFONO,"Telefono",1,15))
		  //  return (false);					
		  if (!ControllaEmail(theForm.EMAIL,"E-Mail",1,100))
		    return (false);
		  //if (!ControllaCampoStringa(theForm.GRUPPO,"Richiede appartenenza a gruppo",1,150))
		  //  return (false);	
				
		  if (theForm.accettazione[1].checked == true)
		  {alert("Devi cliccare su accetto per accettare le clausole sulla privacy");
		  return (false);  }	
				
         document.all.TELEFONO.value = document.all.PREFTELEFONO.value + '/' + document.all.NUMTELEFONO.value; 
         document.all.CELLULARE.value = document.all.PREFCELL.value + '/' + document.all.NUMCELL.value; 		

         elaboraindirizzo(geocoder,document.all.COMUNE.value+ ' ' +document.all.CAP.value,1,1);

          //SALVA SU RUBRICA (PER ORA DISABILITO) 
		  //  MM_openBrWindow('/ita/salvainrubrica.asp?cognome=' + document.all.COGNOME.value + '&amp;nome=' + document.all.NOME.value + '&amp;prefcell=' + document.all.PREFCELL.value + '&amp;numcell=' + document.all.NUMCELL.value + '&amp;email=' + document.all.EMAIL.value + '&amp;datanas=' + document.all.DATANAS.value + '&amp;sesso=' + document.all.SESSO.value + '&amp;note=' + document.all.NOTE.value + '&amp;comune=' + document.all.COMUNE.value + '&amp;indirizzo=' + document.all.INDIRIZZO.value,'salva_rubrica','toolbar=no,location=no,status=no,menubar=no,scrollbars=no,resizable=no,width=500,height=50,top=3000,left=3000');							   
          //SALVA SU RUBRICA (PER ORA DISABILITO) 

}

		  // se esiste il codice posso provare a cancellare
		  if (EliminaRecord)
			return (ConfermaCancellazione());
		  return (true);
		}
		
		function MM_openBrWindow(theURL,winName,features) { //v2.0
		  window.open(theURL,winName,features);	
		}

function ControllaForm(theForm)
{        

 if(document.getElementById("CosaCerco").value.length < 4) 
 {
 	alert("Attenzione : il testo da ricercare deve essere almeno di 4 caratteri");
	return(false);
 }

  if(document.getElementById("CosaCerco").value == "Ricerca nel sito ...") 	
  {
  	alert("Attenzione : Inserire un parametro di ricerca...");
	return(false);
  }
  return(true);
 
}


