function cambiaimmagine1(obj, img, lan){
	obj.src="images/" + img + "_"+ lan + ".gif";
}
function enterSubmit(form){
	if (CTRL_form(form, 'req')){
		form.submit()
	}
}

function LOADfocus(form){
	j=0;
	while (form.elements[j]!=null){
		if (form.elements[j].type=="text" || form.elements[j].type=="password" || form.elements[j].type=="textarea"){
			form.elements[j].focus();
			break;
		}
		j++;
	}
}

function FirstUPPERCASE(field){
	TXT=field.value;
	if (TXT!="")
	{
		TXT=TXT.substring(0,1).toUpperCase() + TXT.substring(1,TXT.length);		
	}
	field.value=TXT;
};
function AllUPPERCASE(field){
	TXT=field.value;
	if (TXT!="")
	{
		TXT=TXT.toUpperCase();		
	}
	field.value=TXT;
};

function NOquote(text){	//change "char in \" and ' char in \'
	txt=text.value.replace(/"/g,'&#34;');
	txt=txt.replace(/'/g,"&#39;");
	text.value=txt;
}

function DELquote(form){
	j=0;
	while (form.elements[j]!=null){
		if (form.elements[j].type=="text" || form.elements[j].type=="password" || form.elements[j].type=="textarea"){
			if(form.elements[j].value!=""){
				NOquote(form.elements[j]);
			}
		}
		j++;
	}
}

function CTRLdata(form){//change "char in \" and ' char in \'	
	j=0;
	count=1;
	while (form.elements[j]!=null){
		if (form.elements[j].name.substr(0,4)=="data"){			
			X=form.elements[j].value;
			if(X!=""){	
				pos1=X.indexOf("-");
				if (pos1==2){
					pos2=X.substr(pos1+1,X.length-pos1);
					pos2=pos2.indexOf("-");
					if (pos2==2){
						pos3=X.substr(pos1+pos2+1,X.length-pos2);
						pos3=pos3.indexOf("-");
					}else{
						pos3=100;
					}
				}else{
					pos3=100;
				}
				if ((X.length!=10)||(pos3!=0)){			
					form.elements[j].focus();
					alert ("ATTENZIONE!\n Formato errato nel "+count+"° campo data\n la data deve essere immessa con formato: 23-02-1978.");
					return false;	
				}
			}
			count++;
		}
	j++;
	}
	return true;
}

	// this 3 are reassumed in CTRL_form
function CTRL_char(form){		//extract all text fields from form and truncate text by text field size attribute		j=0;
	while (form.elements[j]!=null){
		if (form.elements[j].type=="text" || form.elements[j].type=="password" || form.elements[j].type=="textarea"){
			if(form.elements[j].value.length!=form.elements[j].maxLength){
				form.elements[j].focus();
				alert("ATTENZIONE: Il numero di caratteri inseriti nel campo indicato\n è diverso dal numero richiesto:"+form.elements[j].maxLength);
				return false;
			}
		}
		j++;
	}
	return true;
}	
	
	function CTRL_2pass(form,nchar){   //limit text field value by text field size, verify correc form of mail address and the presence of all requested fields.
		if(form.pass.value.length<nchar){
			alert ("ATTENZIONE!\n La password immessa non rispetta i criteri di lunghezza minima\n Reimmettere una password di almeno "+nchar+" caratteri.");
				return false;	
		}else{
			if (form.pass.value==form.pass1.value){			
				return true;
			}else{
				alert ("ATTENZIONE!\n Le passwords immesse nei 2 campi non coincidono.");
				return false;			
			}		
		}
	}
	
	function LEN_pass(form, minC, MaxC){
		STR=form.pass.value;
		L=STR.length;
		if ((L<minC)||(L>MaxC)){		
			alert("Controllare lunghezza password.\n Deve essere compresa tra "+minC+" caratteri e "+MaxC+" caratteri.");
			form.pass.value="";		
		}
	}
	
	function CTRLmail(form){				//a mail must have only one @ cahr and one or more . char
		j=0;
		OK=true;
		Error="";
		while (form.elements[j]!=null){
			if (form.elements[j].name=="mail"){			
				mail_addr=form.elements[j].value;
				if (mail_addr!=""){		
					if (mail_addr.indexOf("@")!=-1){
						if (mail_addr.indexOf("@")!=mail_addr.lastIndexOf("@")){
							Error=Error+"Il formato dell'indirizzo mail è errato.\n";
							OK=false;
						}
					}else{
						Error=Error+"Ha inserito un indirizzo mail senza @.\n";
							OK=false;
					}
					if (mail_addr.indexOf(".")==-1){
						Error=Error+"Ha inserito un indirizzo mail senza un punto.\n";
						OK=false;
					}	
					form.elements[j].value=form.elements[j].value.toLowerCase();
				}
			}
			j++;
		}
		if (Error!=""){
			alert("ATTENZIONE!\n"+Error);
		}
		return OK;
	}
	
	function reqOK(form, identifier){		/*extract from a form all the field that have id=req%n with %n=progressive number	
											control that value in that fields are !="". If verified return true else false.*/			
		j=0;
		k=0;
		while (form.elements[j]!=null){
			X=form.elements[j];
			idlen=identifier.length;
			
			
			if (X.id.substring(0,idlen)==(identifier)){	//+k
				//k++;
				if (X.value==""){
					alert ("ATTENZIONE!\n Compili tutti i campi richiesti (*).");
					return false;
				}
			}
			j++;
		}
		return true;
	}
// HERE

	function CTRL_form(form, id){   //limit text field value by text field size, verify correc form of mail address and the presence of all requested fields.
		//limit_char(form);
		DELquote(form);
		if (reqOK(form,id)){
			X=form;
			if (CTRLmail(X)){	
				if (CTRLdata(form)){
					if (CTRL_char(form)){					
						return true;
					}
				}
			}
		}
		return false;
	}


