/**
 * Simple nav display code
 * @copyright 2006 Toolbox Studios, Inc.
**/
var menutime=200;
var lastn=0;
var fadeInStep=10;
var fadeOutStep=10;
var fadeTime=50;

function showSubnav(menu) {
	var m=1;
	var obj=false;
	do {
		if (obj=document.getElementById('subnav'+m)) {
			if (menu!=m)
				fadeOut(obj);
			else
				fadeIn(obj);
		}
		else
			break;
	} while (m++);
	lastn++;
}
function hideSubnav() {
	lastn++;
	setTimeout("closeSubnav("+lastn+")", menutime);
}
function closeSubnav(tick) {
	 if (tick==lastn)
		 showSubnav(0);
}
function fadeIn(obj) {
	if (obj) {
		if (typeof obj.fade == 'undefined')
			obj.fade = 0;
		obj.step = fadeInStep;
		if (obj.fade == 0)
			doFade(obj.id);
	}
}
function fadeOut(obj) {
	if (obj) {
		if (typeof obj.fade == 'undefined')
			obj.fade = 0;
		obj.step = -fadeOutStep;
		if (obj.fade == 100)
			doFade(obj.id);
	}
}
function doFade(id) {
	var obj = document.getElementById(id);
	if (obj) {
		// add/subtract current step amount
		obj.fade = Math.min(100,Math.max(0,obj.fade + obj.step));
		// set opacity
		setFade(obj,obj.fade);
		// Still more to go - timeout for a bit and keep going
		if (obj.fade<100 && obj.fade>0)
			setTimeout("doFade('" + id + "')",fadeTime);
	}
}
function setFade(obj,value) {
	// if completely faded, don't display
	obj.style.display = (value == 0 ? 'none' : 'block');
	// Set fade amount
	if (typeof obj.style.opacity != 'undefined') { // CSS3
		obj.style.opacity = (value/100) + '';
		return true;
	}
	if (typeof obj.style.filter != 'undefined') { // IE5.5+
		obj.style.filter = 'alpha(opacity=' + value + ')';
		return true;
	}
	if (typeof obj.style.MozOpacity != 'undefined') { // Gecko before CSS3 support
		obj.style.MozOpacity = (value/100) + '';
		return true;
	}
	if (typeof obj.style.KHTMLOpacity != 'undefined') { // Konquerer and Safari
		obj.style.KHTMLOpacity = (value/100) + '';
	}
}