function validaData (campoForm, nomeCampo, nomeForm, check_obbligatorio) {
// Questa funzione controlla un po' di cose sulle date;
// i campi devono essere 3: uno per il giorno, mese e anno
// I campi devono avere questo name: 
// 	- gg_nomecompo per il giorno
// 	- mm_nomecompo per il mese
// 	- aaaa_nomecompo per l'anno
// 
// Vengono controllate le seguenti cose:
// 	- che tutti i campi siano compilati
//	- che tutti i campi contengano numeri e non lettere
//	- che l'anno sia compilato con 4 numeri
//	- che il giorno sia un  numero compreso tra 1 e 31
//	- che il mese sia un numero compreso tra 1 e 12
//	- che l'anno sia un numero maggiore di 1900

	giornoCampoForm = eval("document." + nomeForm + ".Giorno" + campoForm + ".value")
	meseCampoForm = eval("document." + nomeForm + ".Mese" + campoForm + ".value")
	annoCampoForm = eval("document." + nomeForm + ".Anno" + campoForm + ".value")
	
	if ( 
		 (
	  	  (giornoCampoForm != '') ||
		  (meseCampoForm != '') ||
		  (annoCampoForm != '')
	     ) ||
	     (check_obbligatorio)
	   )
	{
		if (
		  	(giornoCampoForm == '') ||
			(meseCampoForm == '') ||
			(annoCampoForm == '')
		   ) {
			invia = false;
			messaggioErrore = messaggioErrore + "\n- inserire il campo \'" + nomeCampo + "\' correttamente;";
		}
		if ( 
			(isNaN(giornoCampoForm)) ||
			(isNaN(meseCampoForm)) ||
			(isNaN(annoCampoForm)) 
		   ) {
			invia = false;
			messaggioErrore = messaggioErrore + "\n- il campo \'" + nomeCampo + "\' non puņ contenere caratteri ma solo numeri;";
		}
		if ( 
			(annoCampoForm != '') &&
			(annoCampoForm.length < 4) 
		   ) {
			invia = false;
			messaggioErrore = messaggioErrore + "\n- l\'anno nel campo \'" + nomeCampo + "\' deve contenere 4 numeri;";
		}
		if ( (giornoCampoForm != '') &&
			 ( ((Number(giornoCampoForm)) < 1) ||
			   ((Number(giornoCampoForm)) > 31) 
			  )
			) {
			invia = false;
			messaggioErrore = messaggioErrore + "\n- il giorno nel campo \'" + nomeCampo + "\' deve essere compreso tra \'1\' e \'31\';";
		}
		if ( (meseCampoForm != '') &&
			 ( ((Number(meseCampoForm)) < 1) ||
			   ((Number(meseCampoForm)) > 12) 
			  )
			) {
			invia = false;
			messaggioErrore = messaggioErrore + "\n- il mese nel campo \'" + nomeCampo + "\' deve essere compreso tra \'1\' e \'12\';";
		}
		if ( (annoCampoForm != '') &&
			 (Number(annoCampoForm)) < 1900 ) {
			invia = false;
			messaggioErrore = messaggioErrore + "\n- l\'anno nel campo \'" + nomeCampo + "\' non puņ essere minore del \'1900\';";
		}
	}
}

function validaObbligatori (campoForm, nomeCampo, nomeForm) {
// Questa funzione valuta semplicemente se il campo č stato compilato.
	campo = eval("document." + nomeForm + "." + campoForm + ".value")
	if ( campo == '' ) {
		invia = false;
		messaggioErrore = messaggioErrore = messaggioErrore + "\n- inserire il campo \'" + nomeCampo + "\';";
	}
}


function validaValuta (campoForm, nomeCampo, nomeForm, check_obbligatorio) {
// Questa funzione valida le valute nel formato 12200.89 con i campi interi e decimali separati.
// nome campo parte INTERA: "nomecampo_integer"
// nome campo parte DECIMALE: "nomecampo_decimal"
// La funzione controlla che: 
// 	- entrambi i campi se compilati siano numeri e non lettere
//	- che non possa esserci il dato dei centesimi senza che non sia compilata la parte decimale

	parte_intera = eval("document." + nomeForm + "." + campoForm + "_integer.value")
	parte_decimale = eval("document." + nomeForm + "." + campoForm + "_decimal.value")
	
	if ( 
		 (
	  	  (parte_intera != '') ||
		  (parte_decimale != '')
	     ) ||
	     (check_obbligatorio)
	   )
	{
		if (check_obbligatorio) 
		{
			if ((parte_intera == '') && (parte_decimale == ''))
			{
				invia = false;
				messaggioErrore = messaggioErrore + "\n- inserire il campo \'" + nomeCampo + "\';";
			}
		}
		
		if ( 
			(	
				(parte_intera != '') &&
			 	(isNaN(parte_intera)) 
			) ||
			(
				(parte_decimale != '') &&
			 	(isNaN(parte_decimale)) 
			) 
		   ) {
			invia = false;
			messaggioErrore = messaggioErrore + "\n- il campo \'" + nomeCampo + "\' non puņ contenere caratteri ma solo numeri;";
		}
		
		if ( (parte_intera == '') && (parte_decimale != '') ) {
			invia = false;
			messaggioErrore = messaggioErrore + "\n- i centesimi del campo \'" + nomeCampo + "\' non possono essere inseriti se non insieme alla parte intera;";
		}
	}
}

function validaEmail (campoForm, nomeCampo, nomeForm) 
{
// Questa funzione valida un campo email in modo che sia del tipo: username@dominio.provider.
  erroreEmail = false;
  var emailCampoForm = eval("document." + nomeForm + "." + campoForm + ".value")

  var index = emailCampoForm.indexOf("@");
  if (index > 0)
  {
    var pindex = emailCampoForm.indexOf(".",index);
    if (!((pindex > index+1) && (emailCampoForm.length > pindex+1)))
	{
		erroreEmail = true;
	} 
  }
  else 
  {
  	erroreEmail = true;
  }
  
  if ((emailCampoForm != '') && (erroreEmail)) {
	invia = false;
	messaggioErrore = messaggioErrore + "\n- il campo \'" + nomeCampo + "\' non sembra essere valido;";
  }
}

function validaNumero (campoForm, nomeCampo, nomeForm) 
{
	var campo = eval("document." + nomeForm + "." + campoForm + ".value")
  
	if (isNaN(campo)) {
		invia = false;
		messaggioErrore = messaggioErrore + "\n- il campo \'" + nomeCampo + "\' non puņ contenere caratteri ma solo numeri;";
	}
}



