/* Form validation */

 function txtMin(name,caption,min){
	valid=true;
	obj=document.getElementsByName(name)[0];
	if (obj.value!="" && obj.value.length<min){
		if (lang=="ita"){
			alert("Inserire almeno "+min+" caratteri nel campo '"+caption+"'.");
		}
		else{
			alert("Please enter at least "+min+" characters in the '"+caption+"' field.");
		}
		valid=false;
	}
	
	return valid;
 }







 function txtObligatory(name,caption){
	valid=true;
	obj=document.getElementsByName(name)[0];
	if (obj.value==""){
		if (lang=="ita"){
			alert("Il campo '"+caption+"' è obbligatorio.");
		}
		else{
			alert("Please enter a value for the '"+caption+"' field.");
		}
		valid=false;
	}
	
	return valid;
 }



 function txtValidation(name,caption,type){
	valid=true;
	obj=document.getElementsByName(name)[0];
	txtValue=obj.value;
	if (obj.value=="") return true;
	
	switch(type){
		case "mail":
			
			atpos=txtValue.indexOf("@");
			atpos2=txtValue.indexOf("@",atpos+1);
			
		
			if (atpos<1 || atpos==txtValue.length-1 || atpos2!=-1){
				valid=false;

			}
			else{

				dotpos=txtValue.lastIndexOf(".");
				dotpos2=dotpos - atpos;
				finale = txtValue.length - dotpos - 1;
				
				if ((dotpos==-1 || dotpos<atpos || dotpos==txtValue.length-1)||(dotpos2<1)||(finale<2)) {
					valid=false;
				}
				else{
					var validc="0123456789.@-_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
					for (var i=0;i<txtValue.length;i++){
						valid=false;
						for (var j=0;j<validc.length;j++){
							if (validc.charAt(j)==txtValue.charAt(i)) valid=true;
						}
					}	
				}
			}						
			break;
			
			
			
			
			
		case "clever": /* Controllo di un dato finto */

			for (var i=0; i<=1; i++) {
				confronta = i + 1;
				confronta_dopo = confronta + 1;
		
				prima = txtValue.substring(i, confronta);
				dopo = txtValue.substring(confronta, confronta_dopo);
				
				if (prima==dopo) {
					valid = false;
				} else {
					valid = true;
					break;
				} 
			}
			
			// Non ci può essere più di un blank
			spacepos=txtValue.indexOf("  ");
			
			if (spacepos>-1) {
				valid = false;
			}
			
			
			
			
			
			
				
			break;
			
			
		
		
	
	
	
			case "antispam": /* controllo se l'indirizzo http può essere considerato spam */
			
				if (txtValue != "http://") {
					piece = txtValue.split(".");
					piece = piece[0].split("//");
					pieceCont = piece[1];
					
					if (!isNaN(pieceCont)) {
						valid = false;
						
					} else {
						valid = true;
						
					}
				}	
				
			break;
		
			
			
					
			
			
	case "??":
			break;
	}
	
	
	
	if (!valid){
		if (lang=="ita"){
			alert("Il campo '"+caption+"' non è valido. (Dati inesatti o doppio spazio o indirizzo http spam)");
		}
		else{
			
			alert("The '"+caption+"' field is not valid. Please, control.");
			
		}
	}
	
	return valid;
 }
 
 
 
 
 
 
 
 
 
 function txtVChars(type){
	evt=window.event;
	
	switch(type){
		case "letnum":
			if ((evt.keyCode<48 || evt.keyCode>57) && (evt.keyCode<65 || evt.keyCode>90) && (evt.keyCode<96 || evt.keyCode>105) && evt.keyCode!=8 && evt.keyCode!=9 && evt.keyCode!=32 && evt.keyCode!=46) evt.returnValue=false;
//			alert(evt.keyCode);			
			break;
			
		case "num":
			if ((evt.keyCode<48 || evt.keyCode>57) && (evt.keyCode<96 || evt.keyCode>105) && evt.keyCode!=8 && evt.keyCode!=9 && evt.keyCode!=16) evt.returnValue=false;
			break;
			
		case "let":
			if ((evt.keyCode<65 || evt.keyCode>90) && (evt.keyCode<1 || evt.keyCode>32) && evt.keyCode!=219 && evt.keyCode!=186 && evt.keyCode!=191 && evt.keyCode!=222 && evt.keyCode!=192 && evt.keyCode!=221 ) evt.returnValue=false;
//			alert(evt.keyCode);
			break;
			
		case "tel":
			if ((evt.keyCode<48 || evt.keyCode>57) && (evt.keyCode<96 || evt.keyCode>105) && evt.keyCode!=8 && evt.keyCode!=9 && evt.keyCode!=32 && evt.keyCode!=111 && evt.keyCode!=187 && evt.keyCode!=189 && evt.keyCode!=16 && evt.keyCode!=107 && evt.keyCode!=109) evt.returnValue=false;
//				alert(evt.keyCode);
			break;
			
	}
 }
