<!--
// controlla l'esattezza sintattica dell'indirizzo e-mail inserito

function checkMail() {
   email = document.form.email.value;
   filtro = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;
   if (filtro.test(email) == false) {
      alert("ATTENZIONE!\nL'indirizzo email inserito non sembra corretto. Prova a verificarlo");
      document.form.email.focus();
      return false;
   } else {
      return true;
   }
}



// controlla l'esattezza sintattica del codice fiscale di una persona fisica

function codiceFISCALE(cfins) {
   var cf = cfins.toUpperCase();
   var cfReg = /^[A-Z]{6}\d{2}[A-Z]\d{2}[A-Z]\d{3}[A-Z]$/;
   if (!cfReg.test(cf))
      return false;
   var set1 = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
   var set2 = "ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ";
   var setpari = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
   var setdisp = "BAKPLCQDREVOSFTGUHMINJWZYX";
   var s = 0;
   for( i = 1; i <= 13; i += 2 )
      s += setpari.indexOf( set2.charAt( set1.indexOf( cf.charAt(i) )));
   for( i = 0; i <= 14; i += 2 )
      s += setdisp.indexOf( set2.charAt( set1.indexOf( cf.charAt(i) )));
   if ( s%26 != cf.charCodeAt(15)-'A'.charCodeAt(0) )
      return false;
   return true;
   }



// controlla l'esattezza sintattica del codice fiscale di una persona giuridica oppure di una partita IVA

function codicePIVA(cfins) {
   var cf = cfins.toUpperCase();
   var cfReg = /^[0-9]{11}$/;
   if (!cfReg.test(cf))
      return false;
}



// controlla il campo del codice fiscale

function CheckForm()
   {
	if (document.form.tipoCodice != null) {
	   for (var i=0; i<document.form.tipoCodice.length; i++) {
	       if (document.form.tipoCodice[i].checked) {
	           var tipoCodiceFiscale = document.form.tipoCodice[i].value;
	           break;
	       } else {
	           var tipoCodiceFiscale = false;
	       }
	   }
   }

	if (document.form.nazione.value != null) {   
	   //if (document.form.codice_fiscale.value.toLowerCase() != 'estero')  {
	   if (document.form.nazione.value == 'italia')  {
		   if (tipoCodiceFiscale == 'cfpf') {

		      var CFok=codiceFISCALE(document.form.codice_fiscale.value);
		      if (CFok==false)
		         {
		         alert("Codice Fiscale errato");
		         return false;
		         } else
		         return true;

		      } else if (tipoCodiceFiscale == 'piva') {

		      var CFok=codicePIVA(document.form.codice_fiscale.value);
		      if (CFok==false)
		         {
		         alert("Partita IVA o Codice fiscale di persona giuridica errato!\nDigitare solamente il numero\nsenza anteporre alcuna dicitura (tipo 'P.IVA', 'P.I.', 'C.F.' e simili).");
		         return false;
		         } else
		         return true;
		      }  else {
		       return false;
		      }
		   }
	 } else {
	 
		      var CFok=codiceFISCALE(document.form.codice_fiscale.value);
		      if (CFok==false)
		         {
		         alert("Codice Fiscale errato");
		         return false;
		         } else
		         return true;

		      }	 
	 }


// maiuscola le lettere del codice fiscale

function toUpperCase(string) {
	string = string.toUpperCase();
	return string;
}


// elimina gli spazi dal Codice fiscale

function removeSpaces(string) {
	var tstring = "";
	string = '' + string;
	splitstring = string.split(" ");
	for(i = 0; i < splitstring.length; i++)
	tstring += splitstring[i];
	return tstring;
}




   //controllo del cap
   function checkCAP() {
   var cap = document.form.cap.value;
   var capReg = /[0-9]{5}/;
   if (!capReg.test(cap)) {
      alert("Il CAP inserito non è valido.");
      return false;
   } else {
       return true;
   }
  }

   //controllo della sigla della provincia
   function checkPROV(provincia) {
   var provincia = document.form.provincia.value;
   provincia = provincia.toUpperCase();
   var provReg = /[A-Z]{2}/;
   if (!provReg.test(provincia)) {
      alert("La sigla della provincia non è valida.");
      return false;
   } else {
       return true;
   }
  }  //-->
