var timeoutIN;
var timeoutOUT;
var navigating = false;
function fadeOutMenu(divID, time) {
	  if (navigating == false) {
		  var speed = Math.round(time / 100);
		  var frame = 0;
		  timeoutOUT = new Array(100);
		  timeoutOUT[100] = setTimeout("document.getElementById('"+divID+"').style.display = 'none';", time);
		  for(fade = 99; fade > 0; fade--) {
		    	timeoutOUT[fade] = setTimeout("setOpacity('"+divID+"', "+fade+")", (speed * frame));
		  	frame++;
		  }
	}
}
function fadeInMenu(divID, time) {
	  var speed = Math.round(time / 100);
	  var frame = 0;
          var initialOpacity = 0;
	  setOpacity(divID, initialOpacity);
	  document.getElementById(divID).style.display = 'block';
	  timeoutIN = new Array(100);
	  for(fade = initialOpacity; fade < 100; fade++) {
	    timeoutIN[fade] = setTimeout("setOpacity('"+divID+"', "+fade+")", (speed * frame));
	    frame++;
	  }
}
function bloccaNavigating() {
  navigating = true;
}
function sbloccaNavigating() {
  navigating = false;
}
function tryFadeOutMenu(divID, time) {
  if ((navigating == false) && (document.getElementById(divID).style.display == 'block')) {
    setTimeout("fadeOutMenu('"+divID+"', "+time+")", 50);
  }
}
function tryFadeInMenu(divID, time) {
  if ((navigating == false) && (document.getElementById(divID).style.display == 'none')) {
    setTimeout("fadeInMenu('"+divID+"', "+time+")", 50);
  }
}
function fadeOut(divID, time) {
  var speed = Math.round(time / 100);
  var frame = 0;
  setTimeout("document.getElementById('"+divID+"').style.display = 'none';", time);
  for(fade = 100; fade > 0; fade--) { 
    setTimeout("setOpacity('"+divID+"', "+fade+")", (speed * frame));
    frame++;
  }
}
function fadeOutWaiting(divID, time) {
  var speed = Math.round(time / 100);
  var frame = 0;
  setTimeout("document.getElementById('"+divID+"').style.display = 'none';", time);
  for(fade = 100; fade > 0; fade--) { 
    setTimeout("setOpacity('"+divID+"', "+fade+")", (speed * frame));
    frame++;
  }
}

function fadeIn(divID, time) {
  var speed = Math.round(time / 100);
  var frame = 0;
  setOpacity(divID, 0);
  document.getElementById(divID).style.display = 'block';
  document.getElementById(divID).style.visibility = 'visible';
  for(fade = 0; fade < 100; fade++) { 
    setTimeout("setOpacity('"+divID+"', "+fade+")", (speed * frame));
    frame++;
  }
}

function fadeInWaiting(divID, time) {
  var t=setTimeout("fadeIn('"+divID+"', "+time+")",time);
}

function makeVisible(divID) {
  document.getElementById(divID).style.display = 'block';
  document.getElementById(divID).style.visibility = 'visible';
}
function makeInvisible(divID) {
  for (fade = 0; fade < 100; fade++)
  {
	if(timeoutIN != null) {
    clearTimeout(timeoutIN[fade]);
	}
	if(timeoutOUT != null) {
    clearTimeout(timeoutOUT[fade]);
	}
  }
}
function hideElement(divID) {
  document.getElementById(divID).style.display = 'none';
}
function fadeInLogo(divID, time) {
  var speed = Math.round(time / 100);
  var frame = 0;
  setOpacity(divID, 0);
  document.getElementById(divID).style.display = 'block';
  document.getElementById(divID).style.visibility = 'visible';
  for(fade = 0; fade < 100; fade++) { 
    setTimeout("setOpacity('"+divID+"', "+fade+")", (speed * frame)+600);
    frame++;
  }
}
function setOpacity(id, opacity) {
  var element = document.getElementById(id);
  if(document.all)
    element.style.filter = "alpha(opacity=" + opacity + ")";
  else
    element.style.opacity = opacity / 100;
}
function getOpacity(id) {
  var element = document.getElementById(id);
  return element.style.opacity;
}

