//inizializzo le variabili per il fading
var fadeTimer    = new Array(); //serve per il fading
var inizioH = 0.0; // opacità iniziale
var fadeInterval = 40;  // CAMBIARE QUESTA VARIABILE PER AUMENTARE VELOCITA' DI FADING (minore più veloce) Occhio che se è più lenta se uno si muove su un'altra casella durante l'animazione si potrebbe impallare.
var out="";

function fadeOut(o) {

//questi if servono a stabilire quel'è il div da fadeOuttare
if(document.getElementById('div1').style.display == "list-item")
out='div1';
else
if(document.getElementById('div2').style.display == "list-item")
out='div2';
else
if(document.getElementById('div3').style.display == "list-item")
out='div3';

    if(fadeTimer[out]){
  		delete(fadeTimer[out]);
      	clearInterval(fadeTimer[out]);
	}else{
       inizioH=1.0; 
	}
	//setto gli oggetti ad opacità 1 e sposto in secondo piano l'oggetto da fare vedere così che appare per differenza dal fadeOut
    document.getElementById(out).style.display = "list-item";
    document.getElementById(out).style.opacity = inizioH;
	document.getElementById(o).style.zIndex = "-1000";
	document.getElementById(o).style.display = "list-item";
	document.getElementById(o).style.opacity = inizioH;
	
	//inizia l'animazione
    fadeTimer[out] = setInterval('fadeAnimation("'+out+'",-0.1,"'+o+'");',fadeInterval);

  }

  
function fadeAnimation(o,k,u) {
//incremento/decremento variabile opacità
  inizioH += k;

	 if(inizioH<=1.0){
		if(inizioH>=0.0){
			//se l'opacità è tra 0 e 1 applico la variabile all'oggetto
			document.getElementById(o).style.opacity = inizioH;
	  }else{
		    //se no vuol dire che la variabile è diventata <0 e quindi l'oggetto deve sparire
		    document.getElementById(o).style.display = "none";
			// azzero il timer e le variabili
		    clearInterval(fadeTimer[o]);
			delete(fadeTimer[o]);
			delete(inizioH);
			document.getElementById(u).style.zIndex = "0";
			//gli passo l'elemento da fadeInnare (che è lo stesso passato come ingresso al FadeOut, ha cambiato solo nome)
		    //fadeIn(u);
		  }

  	}else{
		//se no vuol dire che l'opacità è al massimo e quindi la normalizzo a 1 e cancello il fateTimer perchè non mi serve più
		document.getElementById(o).style.opacity = 1.0;
		clearInterval(fadeTimer[o]);
		delete(fadeTimer[o]);
		delete(inizioH);

  }
  }  

function abilita_home(o){
	//questa funzione mi serve per evitare di fare il fading su un div chè è già attivo nella parte sinistra
	switch(o){
		case "div1": 
					if(document.getElementById('div1').style.display != "list-item")
					fadeOut('div1');
		 break;
		 case "div2":  
					if(document.getElementById('div2').style.display != "list-item")
					fadeOut('div2');

		 break;
		case "div3":  
					if(document.getElementById('div3').style.display != "list-item")
					fadeOut('div3');
		 break;

	}
}

