// --------------------------------- //
// FADE FUNCTION - Matt Delaney 2004 //
// --------------------------------- //

function fade_item(which_item, fade_direction, fade_speed) {
  temp_item = document.getElementById(which_item)
  if (temp_item.fade_timer) {clearTimeout(temp_item.fade_timer)};
  if (temp_item.filters) {
    // INTERNET EXPLORER W/ OPACITY ENABLED
	if (fade_direction=="in" && temp_item.filters.item(0).opacity < 100) {
	  temp_item.style.display = "block";
	  temp_item.filters.item(0).opacity = temp_item.filters.item(0).opacity + fade_speed;
	  temp_item.fade_timer = setTimeout("fade_item(\"" + temp_item.id + "\", \"" + fade_direction + "\", " + fade_speed + ")", 10);
	} else if (fade_direction=="out" && temp_item.filters.item(0).opacity > 0) {
	  temp_item.filters.item(0).opacity = temp_item.filters.item(0).opacity - fade_speed;
	  if (temp_item.filters.item(0).opacity == 0) {
	    temp_item.style.display = "none";
	  } else {
  	    temp_item.fade_timer = setTimeout("fade_item(\"" + temp_item.id + "\", \"" + fade_direction + "\", " + fade_speed + ")", 10);
	  }
	}
  } else if (temp_item.style.MozOpacity) {
    // NETSCAPE W/ OPACITY ENABLED
    if (fade_direction=="in" && temp_item.style.MozOpacity < 1) {
	  temp_item.style.display = "block";
	  if (parseInt(temp_item.style.MozOpacity * 100) + fade_speed < 100) {
		temp_item.style.MozOpacity = (parseInt(temp_item.style.MozOpacity * 100) + fade_speed) / 100;
	  } else {
		temp_item.style.MozOpacity = 1;
	  }      
  	  temp_item.fade_timer = setTimeout("fade_item(\"" + temp_item.id + "\", \"" + fade_direction + "\", " + fade_speed + ")", 10);
	} else if (fade_direction=="out" && temp_item.style.MozOpacity > 0) {
	  if ((temp_item.style.MozOpacity * 100) - fade_speed > 0) {
	    temp_item.style.MozOpacity = ((temp_item.style.MozOpacity * 100) - fade_speed) / 100;
		temp_item.fade_timer = setTimeout("fade_item(\"" + temp_item.id + "\", \"" + fade_direction + "\", " + fade_speed + ")", 10);
	  } else {
		temp_item.style.MozOpacity = 0;
	    temp_item.style.display = "none";
	  }
	}
  } else {
    // BROWSER DOES NOT SUPPORT OPACITY
    if (fade_direction=="in") {
	  temp_item.style.display = "block";
	} else {
	  temp_item.style.display = "none";
	}
  }
}