<!--//
	function contr(obj, blReturnValue) {
		var ERRORE = ""
		
		for (key=0;key<obj.length;key++) {
			if (obj[key].name.toUpperCase().indexOf("OBL") >= 0 && !Disabled(obj[key])) ERRORE += isCompulsory(obj[key]);//campo obbligatorio
			if (obj[key].name.toUpperCase().indexOf("EML") >= 0 && obj[key].value != "") ERRORE += isEmail(obj[key]);//campo email
			if (obj[key].name.toUpperCase().indexOf("DTE") >= 0 && obj[key].value != "") ERRORE += isData(obj[key]);//campo data
			if (obj[key].name.toUpperCase().indexOf("NMB") >= 0 && obj[key].value != "") ERRORE += isNumber(obj[key]);//campo numerico intero positivo
			if (obj[key].name.toUpperCase().indexOf("CCP") >= 0 && obj[key].value != "") ERRORE += isCap(obj[key]);//campo CAP
			if (obj[key].name.toUpperCase().indexOf("TCL") >= 0 && obj[key].value != "") ERRORE += isCell(obj[key]);//campo cellulare
			if (obj[key].name.toUpperCase().indexOf("LNG") >= 0 && obj[key].value != "") ERRORE += isSignedDouble(obj[key]);//campo numerico decimale positivo/negativo
			if (obj[key].name.toUpperCase().indexOf("UID") >= 0 && obj[key].value != "") ERRORE += isUserID(obj[key]);//campo userID
			if (obj[key].name.toUpperCase().indexOf("PWD") >= 0 && obj[key].value != "") ERRORE += isPassword(obj[key]);//campo password
		}
		
		if (blReturnValue == false){
			if (ERRORE == "") return true;
		
			alert("ATTENZIONE!\n" + ERRORE + "\n\nControlla i campi del modulo.");
			return false;
		}
		else{
			return ERRORE;
		}
		
	}
	function Disabled(obj){
		var z = obj.disabled;
		
		if(z==true || z==false){
			return obj.disabled;
		}
		else{//Netscape 4 non ha la proprietà disabled
			obj.disabled = false;
			return obj.disabled;
		}
	}
	
	function trimstr(str){
		while (str != (tmpstr=str.replace(/ +/,""))){
			str = tmpstr;
		}
		return str;
	}
	
	function FieldName(obj){
		var x = obj.name;
		x = x.replace("OBL", "");
		x = x.replace("NMB", "");
		x = x.replace("DTE", "");
		x = x.replace("CRC", "");
		x = x.replace("HDN", "");
		x = x.replace("EML", "");
		x = x.replace("CCP", "");
		x = x.replace("LNG", "");
		x = x.replace("UID", "");
		x = x.replace("PWD", "");
		x = x.charAt(0).toUpperCase() + x.substring(1, x.length);
		return x;
	}
		
	function isCompulsory(obj){
		nomecampo=FieldName(obj).replace("_"," ");
		//if ((obj.type=="text"||obj.type=="textarea"||obj.type=="password") && obj.value=='') return "\n''"+FieldName(obj)+"'' è un campo obbligatorio.\n";
		if ((obj.type=="text"||obj.type=="textarea"||obj.type=="password") && obj.value=='') return "\n''"+nomecampo+"'' è un campo obbligatorio.\n";
		
		if (obj.type.toLowerCase().indexOf("select")>=0 && obj.selectedIndex==0) return "\n Nel menu ''"+nomecampo+"'' è obbligatorio selezionare qualcosa.\n";
		//if (obj.type.toLowerCase().indexOf("select")>=0 && obj.selectedIndex==0) return "\n Nel menu ''"+FieldName(obj)+"'' è obbligatorio selezionare qualcosa.\n";
		return "";
	}
	
	function isData(obj){
		nomecampo=FieldName(obj).replace("_"," ");
		var val = trimstr(obj.value);
		var e = 0;
		obj.value=val;
		var re = new RegExp("^([0-9]{1,2})\/([0-9]{1,2})\/([0-9]{4})$");
		var x = re.exec(val);
		
		if(x!=null){
			var dd = parseInt(RegExp.$1.replace("0", ""));
			var mm = parseInt(RegExp.$2);
			var yy = parseInt(RegExp.$3);
			var bis = 0;
			var maxg = 31;
			
			if((yy < 1753) || (yy > 10000))
				return "\n L\'anno nel campo ''" + nomecampo + "'' deve essere compreso tra 1753 e 9999.\n";
			
			if((mm < 0) || (mm > 12))
				return "\n Il mese nel campo ''" + nomecampo + "'' non è valido.\n";
			
			if(yy % 4 == 0)
				bis++;
			
			switch(mm){
				case 2 :
					maxg = 28 + bis;
					break;
				case 4 :
				case 6 :
				case 9 :
				case 11 :
					maxg--;
					break;
				default:
					break;
			}
			if((dd < 1) || (dd > maxg))
				return "\n il giorno nel campo ''" + nomecampo + "'' non è valido.\n";
			
			return "";
		}
		return "\n La data nel campo ''" + nomecampo + "'' non è valido.\n";
	}
	
	function isNumber(obj){
		nomecampo=FieldName(obj).replace("_"," ");
		var val = trimstr(obj.value);
		obj.value=val;
		if (val=="") return "";
		if (val.match(/^[0-9]*$/)==null && val!="") return "\n Il Numero nel campo ''"+nomecampo+"'' non è corretto.\n";
		return "";
	}

	function isSignedDouble(obj){
		nomecampo=FieldName(obj).replace("_"," ");
		var val = trimstr(obj.value);
		obj.value=val;
		if (val=="") return "";
		if (val.match(/^[-]{0,1}[0-9]*[,]{0,1}[0-9]*$/)==null && val!="") return "\n Il Numero nel campo ''"+nomecampo+"'' non è corretto.\n";
		return "";
	}
	
	function isEmail(obj) {
		nomecampo=FieldName(obj).replace("_"," ");
		var email = obj.value;	
		if ((tmpint = email.indexOf ('@',0)) == -1)
			return "\n La chiocciola (@) non è stata inserita nel campo ''" + nomecampo + "''.\n";
		if (tmpint==0)
			return "\n L'indirizzo e-mail non può iniziare con la chiocciola (@).\n";
		if ((tmpint2 = email.indexOf ('.',tmpint)) == -1) 
			return "\n Nel campo ''" + nomecampo + "'' è obbligatorio inserire un punto dopo la chiocciola (@).\n";
		if (tmpint2-tmpint==1)
			return "\n La sequenza dei simboli '@.' non può appartenere all'indirizzo e-mail.\n";
		if (tmpint2 == email.length-1)
			return "\n L'indirizzo e-mail del campo ''" + nomecampo + "'' non può finire con il simbolo '.'\n";		
		return "";
	}
	
	function isCap(obj){
		nomecampo=FieldName(obj).replace("_"," ");
		var cap = trimstr(obj.value);
		obj.value = cap;
		if(cap.match(/^[0-9]{5}$/) == null) return "\n Inserire un codice valido nel campo ''" + nomecampo + "''.\n"
		return "";
	}
	
	function isCell(obj){
		nomecampo=FieldName(obj).replace("_"," ");
		var val = trimstr(obj.value);
		obj.value=val;
		if (val=="") return "";
		if (val.match(/^[1-9]{1}[0-9]*$/)==null && val!="") return "\n Il Numero nel campo ''" + nomecampo + "'' non è corretto.\n";
		return "";
	}
	
	function isUserID(obj) {
		nomecampo=FieldName(obj).replace("_"," ");
		var strUID = obj.value;	
		if (strUID.indexOf(" ") >= 0)
			return "\n Il campo ''" + nomecampo + "'' non può contenere spazi.\n";
		return "";
	}
	
	function isPassword(obj) {
		nomecampo=FieldName(obj).replace("_"," ");
		var strPW = obj.value;	
		if (strPW.indexOf(" ") >= 0)
			return "\n Il campo ''" + nomecampo + "'' non può contenere spazi.\n";
		return "";
	}
	
//-->
