function validazioneSpam(nomeform)
{
//imposto la variabile che segnaler l'errore
var error=0;
//imposto la variabile per controllare il code antispam
var CheckCodiceEntered = document.forms['FormPrenota'].elements['CodiceAntispam'].value;
var CheckLanguage = document.forms['FormPrenota'].elements['Invia'].value;


//prendo il contenuto HTML compreso nel mio form
var form_html=document.FormPrenota.innerHTML;
//controllo che il browser supporti questo tipo di funzione
if(document.getElementsByTagName)
{
	//predispongo un array con tutti i possibili elementi che conterr il form
	var tipo_dati=new Array('input','textarea','select');
	for(j=0; j < tipo_dati.length; j++)
	{
		var x=document.getElementsByTagName(tipo_dati[j]);
		for(i=0; i < x.length; i++)
		{
			var campo=x.item(i).name;
			//controllo che il nome del campo sia impostato
			if(campo!='')
			{
			//istruzione uguale per entrambi i browser
			var valore=x.item(i).value;
			if(navigator.appName.indexOf("Netscape")>=0)
			{
				var test=x.item(i).attributes;
				for(var a=test.length-1; a>=0; a--)
				{
					switch(test[a].name)
					{
						case "obbligatorio":
						var obbligatorio=test[a].value;
						break;
						case "msg_errore":
						var msg=test[a].value;
						break;
						case "dato":
						var tipo_dato=test[a].value;
						break;
						case "regex":
						var regex=test[a].value;
						break;
					}
				}
			}
			else
			{
			var obbligatorio=x.item(i).obbligatorio;
			var msg=x.item(i).msg_errore;
			var tipo_dato=x.item(i).dato;
			var regex=x.item(i).regex;
			} if(obbligatorio==1 && valore=='')
				{
				alert(campo + ' -> ' + msg);
				error=1;
				}
			if(obbligatorio==1 && valore!='' && regex=='')
				{
					if(tipo_dato=='int' && isNaN(valore))
						{
							alert(campo + ' -> ' +msg);
							error=1;
						}
					if(tipo_dato=='char' && !isNaN(valore))
						{
							alert(campo + ' -> ' +msg);
							error=1;
						}
				} if(obbligatorio==1 && valore!='' && regex!='')
					{
					//prendo il pattern passato dal mio elemento HTML
					var pattern=new RegExp(regex);
					var result=valore.search(pattern);
					if(result!=0)	
						{
							alert(campo + ' -> ' +msg);
							error=1;
						}
					}
				}//campo
			}//for i
		}//for j

//	if (CheckCodice != 552021)
//	 {
//		alert(' codice antispam errato ');
//		error=1;
//	 }
	}
	else
	{
	alert('Il tuo browser non supporta questo tipo di funzione');
	return false;
	}
	if ((CheckCodiceEntered != '')) 
	{
		if ((CheckCodiceEntered != 042329 && CheckLanguage =='Invia'))
		 {	 	
		 	alert('Codice antispam non corretto! ');
		 	document.Info.CodiceAntispam.focus();
		  	error=1;  
		 }
		 if ((CheckCodiceEntered != 042329 && CheckLanguage =='Send'))
		 {	 	
		 	alert('Wrong antispam code! ');
		 	document.Info.CodiceAntispam.focus();
		  	error=1;  
		 }
		  if ((CheckCodiceEntered != 042329 && CheckLanguage =='Ubersenden'))
		 {	 	
		 	alert('Antispam code ist falsch! ');
		 	document.Info.CodiceAntispam.focus();
		  	error=1;  
		 }
	}
	//Se tutto  andato a buon fine invia il form
	if(error==0)
	{
	document.forms[nomeform].submit();
	}
}//END
