function verifForm(form)
  {
  	var messaggio="";
  	
  	if(form.figure.value == "Non definito") 
  		{
	  		alert('Inserisci la figura professionale!'); 
  			form.figure.focus();
  			return false; 
  		}
  				
  	if (!form.accetto.checked)
  		{
	  		messaggio="Consentire il trattamento dei dati è necessario per inviare il modulo";
  		}
  	
  	if (messaggio	!="")
  	{
  		alert(messaggio);
  		return false;
  	}
	 
	 //controlla che la e-mail non sia vuota
   if (form.email.value == "")
   {
   		alert("Indirizzo E-mail non valido!\n (Inserisci un indirizzo nella forma utente@dominio.it)");
   		form.email.focus();
      return false;
   }

	 
	 // controllo della presenza del carattere '@'
   var index     = form.email.value.indexOf('@', 0);
   var address   = "";
   var ok = true;   

   if (index == -1)
   {
      ok = false;
   }
   else
   {
      var size = form.email.value.length;
      address = form.email.value.substring(size + 1, index + 1);
      userid =  form.email.value.substring(0, index);

     	
      // controlla: l'unicità del carattere "@";
      // - la presenza del "." nella parte DX dell'indirizzo;
      // - l'assenza di spazi e
      // - che la stringa non sia del tipo userid@.address o userid.@address
      if ((address.indexOf('@') != -1) || (userid.indexOf('@') != -1) ||
          (address.indexOf('.') == -1) || (!nospace(form.email.value)) ||
          (form.email.charAt(index - 1) == '.') || (form.email.charAt(index + 1) == '.'))
      		{
        		ok = false;
      		}    
     }
	
     	if (ok == false)
   	  	  {
     				alert("Indirizzo E-mail non valido!\n (Inserisci un indirizzo nella forma utente@dominio.it)");
     				form.email.focus();
     				return false;
	   		  }
   					 
   	}
  

function numberOK(num)
{
   var i = 0;
   var letter;

   while (i < num.length)
   {
      letter = num.charAt(i);

      if ((letter == '0') || (letter == '1') || (letter == '2') ||
          (letter == '3') || (letter == '4') || (letter == '5') ||
          (letter == '6') || (letter == '7') || (letter == '8') ||
          (letter == '9'))
      {
         i++;
      }
      else
      {
         return false;
      }
   }

   return true;
}

function TelNumberOK(data)
{
   var size        = data.length;
   var ReturnValue = true;
   var italiano    = false;
   var index  = 0;
   var prefix = 0;
   var space  = 0;
   var num;

   var CellPrefix = "/333|334|335|336|337|338|339|330" +
      "|360|368|340|347|348|349|320|328|329|380|388|389|392/g";

   if (data == "")
   {
      return true;
   }

   // controlla che il primo carattere sia un + e che
   // ci sia almeno uno spazio
   if ((data.indexOf('+', 0) != 0) || (data.indexOf(' ', 0) == -1))
   {
      ReturnValue = false;
   }
   else
   {
      // aggiunge uno spazio in fondo alla stringa
      data = data + ' ';
      size++;

      // cerca il primo spazio
      space = data.indexOf(' ', index);

      // fintanto che ci sono degli spazi e non c'è un errore
      while ((space != -1) && (space != '') && (ReturnValue == true))
      {
         // legge il numero
         num = data.substring(index + 1, space);

         if ((num == '') || !numberOK(num))
         {
            ReturnValue = false;
         }
         else
         {
            // controlla se il primo prefisso è italiano
            if ((prefix == 0) && (num == 39))
               italiano = true;

            // se è un numero per l'italia il secondo prefisso
            // deve iniziare con uno zero solo se non è un numero di cellulare
            if ((prefix == 1) && (italiano == true) && (num.charAt(0) == 0))
            {
               // controlla che non sia un numero di cellulare
               if (num.match(CellPrefix))
               {
                  ReturnValue = false;
               }
            }

            index = space;
            space = data.indexOf(' ', index + 1);
            prefix ++;
         }
      }
   }

   if ((ReturnValue == true) && (prefix == 3))
   {
      return true;
   }
   else
   {
      alert ("Numero non valido!\n (Inserisci un numero del tipo +39 06 315000)");
      return false;
   }
}
