//funzione per il cambio di colore al focus
var highlightcolor="#e2e2e2"
var ns6=document.getElementById&&!document.all
var previous=''
var eventobj

var intended=/INPUT|TEXTAREA|SELECT|OPTION/

function checkel(which){
if (which.style&&intended.test(which.tagName)){
if (ns6&&eventobj.nodeType==3)
eventobj=eventobj.parentNode.parentNode
return true
}
else
return false
}

//**************************************************************************************

function highlight(e){
eventobj=ns6? e.target : event.srcElement
if (previous!=''){
if (checkel(previous))
previous.style.backgroundColor=''
previous=eventobj
if (checkel(eventobj))
eventobj.style.backgroundColor=highlightcolor
}
else{
if (checkel(eventobj))
eventobj.style.backgroundColor=highlightcolor
previous=eventobj
}
}

//**************************************************************************************

//verifca sezione link amico
function controllo_amico(){
if (frm_prod.nome.value==null || frm_prod.nome.value==''){
   alert("Attenzione!! Indicare il nome del mittente");
   frm_prod.nome.focus();
} else if (frm_prod.destinatario.value==null || frm_prod.destinatario.value==''){
   alert("Attenzione!! Indicare il nome del destinatario");
   frm_prod.destinatario.focus();
} else
	if (controllaMail(frm_prod.maildest)){
	 frm_prod.submit();
} 
}

//**************************************************************************************

//Controllo che in un campo di testo vengano messi valori numerici
function controlloNumerico(elemento){
		
		stringa = elemento.value;
		
		for (i=0; i<stringa.length; i++){
	
		if (stringa.charAt(i) != 0 && 
			stringa.charAt(i) != 1 && 
			stringa.charAt(i) != 2 && 
			stringa.charAt(i) != 3 && 
			stringa.charAt(i) != 4 && 
			stringa.charAt(i) != 5 && 
			stringa.charAt(i) != 6 && 
			stringa.charAt(i) != 7 && 
			stringa.charAt(i) != 8 && 
			stringa.charAt(i) != 9){
			
	   		alert("il valore immesso non è un numero!");
	   		elemento.focus();
			elemento.value = ''
	   		return false;
		}
	}
	 return true;
}

//**************************************************************************************

//Controllo la email
function controllaMail(elemento){

  indirizzoMail = elemento.value;

    chiocciolaOk = false;
	puntoOk = false;
    
    for (i=0; i<indirizzoMail.length; i++){
	
	  if (indirizzoMail.charAt(i)=="@"){
	    chiocciolaOk = true; 
	  }
	  
	  if (chiocciolaOk){
	    if (indirizzoMail.charAt(i)=="." && (i+1)<indirizzoMail.length){
	      puntoOk = true; 
	    }
	  }
	}
	
	if (!chiocciolaOk || !puntoOk){
	  alert("Attenzione! L'indirizzo mail non e' stato digitato correttamente.");
	  elemento.focus();
	  return false;
	} else {
	  return true;
	}
}

//**************************************************************************************

//Controllo che in un campo di testo vengano messi valori numerici
function controlloNumerico(elemento){
		
		stringa = elemento.value;
		
		for (i=0; i<stringa.length; i++){
	
		if (stringa.charAt(i) != 0 && 
			stringa.charAt(i) != 1 && 
			stringa.charAt(i) != 2 && 
			stringa.charAt(i) != 3 && 
			stringa.charAt(i) != 4 && 
			stringa.charAt(i) != 5 && 
			stringa.charAt(i) != 6 && 
			stringa.charAt(i) != 7 && 
			stringa.charAt(i) != 8 && 
			stringa.charAt(i) != 9){
			
	   		alert("il valore immesso non è un numero!");
	   		elemento.focus();
			elemento.value = ''
	   		return false;
		}
	}
	 return true;
}

//**************************************************************************************

//Controllo validità dei campi DATA se diversi da vuoto
function controllaData(elemento){
	data = elemento.value;
	
if (data.length == 10){

			if (
			!controllaNumeridata(data.substring(0,2)) ||
			!controllaNumeridata(data.substring(3,5)) ||
			!controllaNumeridata(data.substring(6,10))
			){
			
			alert("La data non e'stata inserita correttamente!");
			elemento.focus();
			return false;
			}

				giorno = data.substring(0,2);
				mese = data.substring(3,5);
				anno = data.substring(6,10);

			if (
			(mese == 2 && giorno > 29) ||	     
			(mese == 2 && giorno == 29 && anno%4 != 0) ||
			(giorno == 31 && (mese == 4 || mese == 6 || mese == 9 || mese == 11)) ||
			data.substring(0,2) > 31 ||
			data.substring(3,5) > 12	   	  
			){
			
			alert("Il giorno " + data + " non esiste!");
			elemento.focus();
			return false;
			}

	} else {
		
	  alert("Inserire la data con il seguente formato: gg/mm/aaaa!");
	  elemento.value="";
	  elemento.focus();
	  return false;
	}
	 return true;
}

//**************************************************************************************

//Controllo dei numeri in una data
function controllaNumeridata(stringa){

	for (i=0; i<stringa.length; i++){
	
		if (stringa.charAt(i) != 0 && 
			stringa.charAt(i) != 1 && 
			stringa.charAt(i) != 2 && 
			stringa.charAt(i) != 3 && 
			stringa.charAt(i) != 4 && 
			stringa.charAt(i) != 5 && 
			stringa.charAt(i) != 6 && 
			stringa.charAt(i) != 7 && 
			stringa.charAt(i) != 8 && 
			stringa.charAt(i) != 9){
			
			return false;		
		}
	}
	return true;
}
