var selectedMenu = '';
var selectedSecondaryMenu='';
var selectedTertiaryMenu='';

var menutimeout = 600;//somthing in seconds/ms what ever.. 300ms

//various timer id's???
var primaryTimer = null;
var secondaryTimer = null;
var tertiaryTimer = null;

function toggleElement(name){
		if (document.getElementById(name).style.display == 'none') {
			document.getElementById(name).style.display = '';
		} else {
			document.getElementById(name).style.display = 'none';
		}
}

function showElement(name){
		document.getElementById(name).style.display='';
}

function hideElement(name) {
		document.getElementById(name).style.display='none';
}

function setClassForElement(newClass, name) {
		document.getElementById( name ).className = newClass;
}

function doSubmenu(name) {

	clearTimers();
	
	if ( selectedMenu !=''){
		hideElement( selectedMenu );
	}
	if (name !=''){
		showElement( name );
	}
	selectedMenu = name;
	doSecondaryMenu('');
	//reset the mm bit here..
	MM_swapImgRestore();
}

//how do we get the name?? does it matter?
function clearSubmenu() {
	//alert('submenu');
	if (primaryTimer == null) {
		primaryTimer = setTimeout( "doSubmenu('')", menutimeout);
	}
}

function doSecondaryMenu( name ){

	//alert(name+' ' + selectedSecondaryMenu);

	clearTimers();
		
	hideElement( 'submenu2' );
	if ( selectedSecondaryMenu !=''){
		setClassForElement( 'submenuitem', selectedSecondaryMenu);
		hideElement( selectedSecondaryMenu + 'Menu');
	}	
	if (name != '') {
		showElement( 'submenu2' );
		showElement( name + 'Menu');
		setClassForElement( 'submenuitemOver', name);
	}
	selectedSecondaryMenu = name;
	doTertiaryMenu('');
}

function clearSecondaryMenu() {
//	alert('secondary clear');
	if (secondaryTimer == null) {
		secondaryTimer = setTimeout( "doSubmenu('')", menutimeout );
	}
}

function doTertiaryMenu( name ) {

	clearTimers();

	hideElement( 'submenu3' );
	if (selectedTertiaryMenu != ''){
		hideElement( selectedTertiaryMenu + 'Menu');
		setClassForElement( 'submenuitem', selectedTertiaryMenu);

	}
	if (name !='') {
		showElement( 'submenu3');
		showElement(  name + 'Menu');
		setClassForElement( 'submenuitemOver', name);
	}
	selectedTertiaryMenu = name;

}

function clearTimers() {
//	clearSecondaryTimer();
	if(primaryTimer != null) {
		clearTimeout( primaryTimer );
		primaryTimer = null;
	}
	if (secondaryTimer != null ) {	
		clearTimeout( secondaryTimer );
		secondaryTimer = null;
	}
	
	if ( tertiaryTimer != null ) {
		clearTimeout( tertiaryTimer );
		tertiaryTimer = null;
	}
}
	
function clearTertiaryMenu(){
//	alert('tertiary clear');
	if ( tertiaryTimer == null ) {
		tertiaryTimer = setTimeout( "doSubmenu('')", menutimeout );
	}
}
