var menuTop = 45;
var menuLeft = 400;

var domSMenu = null;
var oldDomSMenu = null;
var t = 0;
var lDelay = 10;
var lCount = 0;
var pause = 100;

var domLevel1 = null;
var domLevel2 = null;
var domLevel3 = null;

var kill_cmd = 1;
var chosen_one = 0;



//--------------------------------------------------------------------------------------------
function handle_mouseover() {
	kill_cmd = 0;
}

function handle_mouseout() {
	// get random number to consider as this calls ID
	my_id = Math.floor(Math.random() * 100);
	
	// i want the floor open for fire
	kill_cmd = 1;
	
	// i want to declare myself the chosen one
	chosen_one = my_id;
	
	// setup the execution
	setTimeout( 'close_all_menus('+my_id+')', 1000 );
	
}



//--------------------------------------------------------------------------------------------
function close_all_menus( call_id ) {

	if( kill_cmd == 1 && call_id == chosen_one ) {
		if( domLevel1 != null ) { domLevel1.visibility = 'hidden'; }
		if( domLevel2 != null ) { domLevel2.visibility = 'hidden'; }
		if( domLevel3 != null ) { domLevel3.visibility = 'hidden'; }
	}

}


//--------------------------------------------------------------------------------------------
function showMenu( level1, level2, level3 ) {
	
	if( level1 == null && level2 == null && level3 == null ) {
		close_all_menus();
		return false;
	}		
	
	if( domLevel1 != null ) {
		if( level2 == null ) {
			domLevel1.visibility = 'hidden';
		}
		if( domLevel2 != null ) {
			if( level3 == null ) {
				domLevel2.visibility = 'hidden';
			}
			if( domLevel3 != null ) {
				domLevel3.visibility = 'hidden';
			}
		}
	}
	if( level2 == null ) {
		objectID = 'menu' + level1;
		domLevel2 = null;
	} else {
		if( level3 == null ) {
			objectID = 'menu' + level1 + '--' + level2;
			domLevel3 = null;
		} else {
			objectID = 'menu' + level1 + '--' + level2 + '--' + level3;
		}
	}
	var domStyle = findDOM( objectID, 1 );
	domStyle.visibility = 'visible';
	if( level2 == null ) {
		domLevel1 = domStyle;
	} else {
		if( level3 == null ) {
			domLevel2 = domStyle;
		} else {
			domLevel3 = domStyle;
		}
	}
}


//--------------------------------------------------------------------------------------------
function popMenu( menuNum ) {

	if( isDHTML ) {
		t = 2;
		if( oldDomSMenu ) {
			oldDomSMenu.visibility = 'hidden';
			oldDomSMenu.zIndex = '0';
			t = 2;
			lCount = 0;
		}
		var idMenu = 'menuHead';
		var domMenu = findDOM( idMenu, 0 );
		var idMenuOpt = 'menuHead' + menuNum;
		var domMenuOpt = findDOM( idMenuOpt, 0 );
		
		var idSMenu = 'menu' + menuNum;
		var domSMenu = findDOM( idSMenu, 1 );
	
		if( isID || isALL ) {
			var menuLeft = (domMenu.offsetLeft) + (domMenuOpt.offsetLeft) - 4;
			var menuTop = (domMenu.offsetTop) + (domMenu.offsetHeight) + 1;
		}
		if( isLayers ) {
			var menuLeft = document.layers[idMenu].layers[idMenuOpt].pageX - 5;
			var menuTop = domMenu.pageY + domMenu.clip.height - 5;
		}
		if( oldDomSMenu != domSMenu ) {
			domSMenu.left = menuLeft;
			domSMenu.top = menuTop;
			domSMenu.visibility = 'visible';
			domSMenu.zIndex = '100';
			oldDomSMenu = domSMenu;
		} else {
			oldDomSMenu = null;
		}
	} else {
		return null;
	}
}



//--------------------------------------------------------------------------------------------	
function delayHide() {

	if( (oldDomSMenu) && (t == 0) ) {
		oldDomSMenu.visibility = 'hidden';
		oldDomSMenu.zIndex = '0';
		oldDomSMenu = null;
		lCount = 0;
		return false;
	}
	if( t == 2 ) { 
		lCount = 0; 
		return false; 
	}
	if( t == 1 ) {
		lCount = lCount + 1;
		if( lDelay <= lCount ) { t = 0; }
		if( lDelay >= lCount) { setTimeout('delayHide(' + t + ')', pause); }
	}
}