var ricerca;
var NomeDelForm;
var NomeDelCampo;
var id_commessa;
var messaggioForm;
var AreaProfessionale;
var FiguraProfessionale;
var CategoriaProfessionale;
var Valore2;
var Valore3;

function Trim(stringa) {
   reTrim=/\s+$|^\s+/g;
   return stringa.replace(reTrim,"");
}

function validaCampo(Form,Campo,TipoCampo){
	var testo = document.getElementById(Campo);
	var Campoerrore = "err_"+Campo
	if (eval("document."+Form+"."+Campo+".value") == "") {
		flagvalidita = false
		document.getElementById(Campoerrore).innerHTML = "campo obbligatorio";
	} else {
		if (TipoCampo == 0) {
			document.getElementById(Campoerrore).innerHTML = "";
		}
		if (TipoCampo == 1) { // codice fiscale
			var re = /^[A-Z]{6}\d{2}[A-Z]\d{2}[A-Z]\d{3}[A-Z]$/;
			var Codice=eval("Trim(document."+Form+"."+Campo+".value.toUpperCase())");
			if (re.test(Codice) == false) {
				flagvalidita = false
				document.getElementById(Campoerrore).innerHTML = "codice fiscale non corretto";
			} else {
				document.getElementById(Campoerrore).innerHTML = "";
			}
		}
		if (TipoCampo == 2) { // solo testo
			var re = /^[a-zA-Z\s]*$/;
			var Codice=eval("Trim(document."+Form+"."+Campo+".value.toUpperCase())");
			if (re.test(Codice) == false) {
				flagvalidita = false
				document.getElementById(Campoerrore).innerHTML = "valore non corretto (sono consentite solo lettere)";
			} else {
				document.getElementById(Campoerrore).innerHTML = "";
			}
		}
		if (TipoCampo == 3) { // email
		var re = /^([0-9a-zA-Z]+[-._+&])*[0-9a-zA-Z]+@([-0-9a-zA-Z]+[.])+[a-zA-Z]{2,6}$/;
			var Codice=eval("Trim(document."+Form+"."+Campo+".value.toUpperCase())");
			if (re.test(Codice) == false) {
				flagvalidita = false
				document.getElementById(Campoerrore).innerHTML = "e-mail non corretta";
			} else {
				document.getElementById(Campoerrore).innerHTML = "";
			}
		}
		if (TipoCampo == 4) { // numerico
			if (eval("isNaN(document."+Form+"."+Campo+".value)")) {
				flagvalidita = false
				document.getElementById(Campoerrore).innerHTML = "valore non corretto (il valore deve essere numerico)";
			} else {
				document.getElementById(Campoerrore).innerHTML = "";
			}
		}
		if (TipoCampo == 5) { // sito web
			var re = /^[a-zA-Z0-9\-\.]+\.(com|org|net|mil|edu|eu|it|info|COM|ORG|NET|MIL|EDU|EU|IT|INFO)$/;
			var Codice=eval("Trim(document."+Form+"."+Campo+".value.toUpperCase())");
			if (re.test(Codice) == false) {
				flagvalidita = false
				document.getElementById(Campoerrore).innerHTML = "e-mail non corretta";
			} else {
				document.getElementById(Campoerrore).innerHTML = "";
			}
		}		
		if (TipoCampo == 7) { // file audio
			var punto1 = eval("document."+Form+"."+Campo+".value.lastIndexOf('.')");
			var punto2 = eval("document."+Form+"."+Campo+".value.length");
			var estensione = eval("document."+Form+"."+Campo+".value.substring(punto1 + 1,punto2)");
			if ((estensione != "ra") && (estensione != "wma") && (estensione != "mp3")) {
				flagvalidita = false
				document.getElementById(Campoerrore).innerHTML = "file non corretto (solo ra, wma e mp3)";
			} else {
				document.getElementById(Campoerrore).innerHTML = "";
			}
		}
		if (TipoCampo == 6) { // file video
			var punto1 = eval("document."+Form+"."+Campo+".value.lastIndexOf('.')");
			var punto2 = eval("document."+Form+"."+Campo+".value.length");
			var estensione = eval("document."+Form+"."+Campo+".value.substring(punto1 + 1,punto2)");
			if ((estensione != "ra") && (estensione != "wmv") && (estensione != "flv")) {
				flagvalidita = false
				document.getElementById(Campoerrore).innerHTML = "file non corretto (solo ra, wmv e flv)";
			} else {
				document.getElementById(Campoerrore).innerHTML = "";
			}
		}			
	}
}

function QueryCombo(NomeForm,NomeCampoDa,NomeCampoA,NomeFunzione) 
{
	NomeDelForm = NomeForm;
	NomeDelCampo = NomeCampoA;
	var valorecampo = eval("document."+NomeForm+"."+NomeCampoDa+".options[document."+NomeForm+"."+NomeCampoDa+".selectedIndex].value");
	// per l'oggetto nativo XMLHttpRequest
	if (valorecampo != "") {
		if (window.XMLHttpRequest) {
			ricerca = new XMLHttpRequest();
			ricerca.onreadystatechange = RiceviQueryCombo;
			ricerca.open("GET", NomeFunzione+".asp?reg="+valorecampo,true);
			NomeDelForm.send;
			NomeDelCampo.send;
			ricerca.send(null);
			// per IE 
		} else if (window.ActiveXObject) {
			ricerca = new ActiveXObject("Microsoft.XMLHTTP");
			if (ricerca) {
				ricerca.onreadystatechange = RiceviQueryCombo;
				ricerca.open("GET", NomeFunzione+".asp?reg="+valorecampo,true);
				NomeDelForm.send;
				NomeDelCampo.send;
				ricerca.send();
			}
		}
	} else {
		eval("document."+NomeDelForm+"."+NomeDelCampo+".options.length=0");
		eval("document."+NomeDelForm+"."+NomeDelCampo).options[eval("document."+NomeDelForm+"."+NomeDelCampo+".options.length")]= new Option("[seleziona]", "");
		eval("document."+NomeDelForm+"."+NomeDelCampo+".disabled=true");
	}	
}

function RiceviQueryCombo() { 
var strRes; 
var arrValori; 
if (ricerca.readyState == 1) { 
	eval("document."+NomeDelForm+"."+NomeDelCampo+".options.length=0"); 
	eval("document."+NomeDelForm+"."+NomeDelCampo).options[eval("document."+NomeDelForm+"."+NomeDelCampo+".options.length")]= new Option("caricamento", "");
}

if (ricerca.readyState == 4) { 
strRes=ricerca.responseText;
strValori = strRes.slice(0,strRes.search("@@@@@"));
strCodici = strRes.slice(strRes.search("@@@@@") + 5,strRes.length);
arrValori=strValori.split("|");
arrValori2 = strCodici.split("|");
eval("document."+NomeDelForm+"."+NomeDelCampo+".options.length=0"); 
	for(i=0;i<arrValori.length;i++)
	{	
	eval("document."+NomeDelForm+"."+NomeDelCampo).options[eval("document."+NomeDelForm+"."+NomeDelCampo+".options.length")]= new Option(arrValori[i].split("|"), arrValori2[i].split("|"));
	}
		if (Valore2 != "") { 
			eval("document."+NomeDelForm+"."+NomeDelCampo+".value="+Valore2);
		}
}
		eval("document."+NomeDelForm+"."+NomeDelCampo+".disabled=false");
}