/*
24 ottobre 2002
	inserito controllo per il campo hidden, non puņ eseguire il comando .focus()
25 ottobre 2002
	modificato il case "pF_"
	controllo password uguali con qualsiasi nome del campo della password
	ID password = MpF_
	ID password di verifica  = MpcF_

*/
	var strControllo = "Compilare tutti i campi obbligatori: \'"
	var strControlloEmail = "Inserire un indirizzo e-mail valido nel campo \'"
	var strControlloWWW = "Inserire un indirizzo web valido nel campo \'"
	var strControlloPws = "Inserire una password di almeno 5 caratteri! "
	var strControlloPws2 ="La password e la password di controllo non coincidono, controllare il campo \'"
	var strControlloDate ="La data deve essere maggiore di oggi, controllare il campo \'"
	var strControlloDate2 = "La seconda data deve essere maggiore della prima, controllare il campo \'"
	var strControlloDate3 = "Deve essere inserita una seconda data, controllare il campo \'"
	var strControlloNum = "Inserire un numero valido nel campo \'"
	var strControlloNum1 = "Inserire un numero intero valido nel campo \'"
	var strControlloStr = "Sono accettati solo caratteri alfanumerici nel campo \'"
	var strControlloSel = "Scegliere una voce per il menu a tendina \'"
	var strControlloCap = "Inserire correttamente il CAP (solo 5 caratteri) nel campo \'"
	var strControlloTel = "Inserire correttamente il numero di telefono nel campo \'"



function send(formName) {
	prosegui = false;
	if (formName!='') {
		form = eval("document."+formName)
		if (form) {
			prosegui = true;
			for (i=0;i<form.elements.length;i++) {
				ID = form.elements[i].id;
				if ((ID.substr(0,1) == "M")&&(isEmpty(form.elements[i]))) {
					alert( strControllo + ID.substr(4) + "\'");
					if (form.elements[i].type!='hidden') {
						form.elements[i].focus();
					}
					prosegui = false;
					break;
				}
				switch (ID.substr(1,3)) {
					case "eF_":
						if (!(ctrlEmail(form.elements[i]))) {
							alert(strControlloEmail + ID.substr(4) + "\'");
							form.elements[i].focus();
							prosegui = false;
						}
						break;
					case "uF_":
						if (!(isWWW(form.elements[i]))) {
							alert(strControlloWWW +ID.substr(4) + "\'");
							form.elements[i].focus();
							prosegui = false;
						}
						break;
					case "pF_":
						if (form.elements[i].value.length<5) {
							alert(strControlloPws);
							form.elements[i].focus();
							prosegui = false;
						} else {
							if (form.elements[i].value!=eval("form."+ form.elements[i].name +"2.value")) {
								alert(strControlloPws2 + ID.substr(4) + "\'");
								form.elements[i].focus();
								prosegui = false;
							}
						}
						break;
					case "PF_":
						if (form.elements[i].value!=eval("form."+ form.elements[i].name +"2.value")) {
							alert(strControlloPws2 +ID.substr(4) + "\'");
							form.elements[i].focus();
							prosegui = false;
						}
						break;
					// Controllo data 1 se maggiore di data2 e di oggi (Dati in formato GG/MM/AAAA)
					case "DN_":
						var strData1 = form.dal.value.split("/")
						var Data1 = new Date(strData1[2], (strData1[1] - 1), strData1[0])
						var toDay = new Date();  // Recupera la data odierna.
						if (Data1<toDay) {
							alert(strControlloDate +ID.substr(4) + "\'");
							form.elements[i].focus();
							prosegui = false;
						}else{
							if (!isEmpty(form.al)) {
								strData2 = form.al.value.split("/")
								Data2 = new Date(strData2[2], (strData2[1] - 1), strData2[0])
								if (Data2<=Data1) {
									alert(strControlloDate2 + form.al.id.substr(4) + "\'");
									form.elements[i].focus();
									prosegui = false;
								}
							}
						}
						break;
					// Controllo periodo1 se maggiore di periodo2 (Dati in formato GG/MM/AAAA)
					case "p1_":
						var strData1 = form.data1.value.split("/")
						var Data1 = new Date(strData1[2], (strData1[1] - 1), strData1[0])
						var toDay = new Date();  // Recupera la data odierna.
						if (!isEmpty(form.data2)) {
							strData2 = form.data2.value.split("/")
							Data2 = new Date(strData2[2], (strData2[1] - 1), strData2[0])
							if (Data2<=Data1) {
								alert(strControlloDate2 +form.data2.id.substr(4) + "\'");
								form.elements[i].focus();
								prosegui = false;
							}
						}else{
							if (!isEmpty(form.data1)) {
								alert(strControlloDate3 +form.data2.id.substr(4) + "\'");
								form.elements[i].focus();
								prosegui = false;
							}
						}
						break;
					// Controllo periodo1 se maggiore di periodo2 e di oggi (Dati in formato GG/MM/AAAA)
					case "P1_":
						var strData1 = form.data1.value.split("/")
						var Data1 = new Date(strData1[2], (strData1[1] - 1), strData1[0])
						var toDay = new Date();  // Recupera la data odierna.
						if (Data1<toDay) {
							alert(strControlloDate +ID.substr(4) + "\'");
							form.elements[i].focus();
							prosegui = false;
						}else{
							if (!isEmpty(form.data2)) {
								strData2 = form.data2.value.split("/")
								Data2 = new Date(strData2[2], (strData2[1] - 1), strData2[0])
								if (Data2<=Data1) {
									alert(strControlloDate2 +form.data2.id.substr(4) + "\'");
									form.elements[i].focus();
									prosegui = false;
								}
							}else{
								if (!isEmpty(form.data1)) {
									alert(strControlloDate3 +form.data2.id.substr(4) + "\'");
									form.elements[i].focus();
									prosegui = false;
								}
							}
						}
						break;
					// Controllo periodo1 se maggiore di periodo2 e di oggi (Dati in formato GG/MM/AAAA)
					case "P2_":
						var strData1 = form.data3.value.split("/")
						var Data1 = new Date(strData1[2], (strData1[1] - 1), strData1[0])
						var toDay = new Date();  // Recupera la data odierna.
						if (Data1<toDay) {
							alert(strControlloDate +ID.substr(4) + "\'");
							form.elements[i].focus();
							prosegui = false;
						}else{
							if (!isEmpty(form.data4)) {
								strData2 = form.data4.value.split("/")
								Data2 = new Date(strData2[2], (strData2[1] - 1), strData2[0])
								if (Data2<=Data1) {
									alert(strControlloDate2 +form.data4.id.substr(4) + "\'");
									form.elements[i].focus();
									prosegui = false;
								}
							}else{
								if (!isEmpty(form.data3)) {
									alert(strControlloDate3 +form.data4.id.substr(4) + "\'");
									form.elements[i].focus();
									prosegui = false;
								}
							}
						}
						break;
					case "nF_":
						if (!(isNumber(form.elements[i]))) {
							alert(strControlloNum +ID.substr(4) + "\'");
							form.elements[i].focus();
							prosegui = false;
						}
						break;
					case "iF_":
						if (!(isNumberInt(form.elements[i]))) {
							alert(strControlloNum1 +ID.substr(4) + "\'");
							form.elements[i].focus();
							prosegui = false;
						}
						break;
					case "fN_":
						if (!(isFloatNumber(form.elements[i]))) {
							alert(strControlloNum +ID.substr(4) + "\'");
							form.elements[i].focus();
							prosegui = false;
						}
						break;
					case "sS_":
						if (!(isRightString(form.elements[i].value))) {
							alert(strControlloStr +ID.substr(4) + "\'");
							form.elements[i].focus();
							prosegui = false;
						}
						break;
					case "sO_":
						if (isEmpty(form.elements[i].selectIndex)) {
							alert(strControlloSel +ID.substr(4) + "\'");
							form.elements[i].focus();
							prosegui = false;
						}
						break;
					case "cA_":
						if (form.elements[i].value.length>5) {
							alert(strControlloCap +ID.substr(4) + "\'");
							form.elements[i].focus();
							prosegui = false;
						}
						break;
					case "cT_":
						if (!isTel(form.elements[i])) {
							alert(strControlloTel +ID.substr(4) + "\'");
							form.elements[i].focus();
							prosegui = false;
						}
						break;
				}
				if (!prosegui) {
					return false
					break;
				}
			}
		}
	}
	return prosegui;
}
