// ============================================================================
// Menu code
// ============================================================================

// Global menu state
var lastMenu = 0;
var lastNr = 0;
var lastSubmi = 0;

// Item in a sub-menu
function SubMenuItem( text, link ) {
	this.text = text;
	this.link = link;
}

// Completely clear sub-menu area
function clearSubMenu( ) {
	for ( i = 0; i < 6; i++ ) {
		document.getElementById("submi_" + (i + 1)).innerHTML = "";
	}
	if ( lastSubmi != 0 ) {
		document.getElementById("submi_" + lastSubmi).className = "nav2";
	}
}

// Shows the passed sub-menu
// (insert sub-menu items into sub-menu area)
function showSubMenu( menu, nr ) {
	if ( lastMenu != 0 ) {
		clearSubMenu( );
	}
	if ( lastMenu != menu ) {
		document.getElementById("blink_" + nr).className = "blink_sel";
	}
	for ( i = 0; i < menu.length; i++ ) {
		pos = 6 - menu.length + 1 + i;
		document.getElementById("submi_" + pos).innerHTML = "<a "
			+ "href='" + menu[i].link + "' "
			+ "onMouseOver=\"selectSubmi(" + pos + ", 'true')\" "
			+ "onMouseOut=\"selectSubmi(" + pos + ", 'false')\" "
			+ "onClick=\"openSubmi(" + pos + ")\""
			+ ">" + menu[i].text + "</a>";
	}
	if ( ( menu == lastMenu ) && ( lastSubmi != 0 ) ) {
		document.getElementById("submi_" + lastSubmi).className = "nav2_on";
	}
}

// Permanently opens the passed sub-menu
function openSubMenu( menu, nr ) {
	if ( lastMenu == menu ) return;
	if ( lastMenu != 0 ) {
		document.getElementById("blink_" + lastNr).className = "blink_off";
	}
	document.getElementById("blink_" + nr).className = "blink_on";
	lastMenu = menu;
	lastNr = nr;
	lastSubmi = 0;
	openSubmi( 1 );
}

// Hides the currently visible sub-menu and 
// restore the last active sub-menu
function hideSubMenu( nr ) {
	if ( lastNr != nr ) {
		document.getElementById("blink_" + nr).className = "blink_off";
	}
	if ( lastMenu != 0 ) {
		showSubMenu( lastMenu, lastNr );
	} else {
		clearSubMenu( );
	}
	if ( lastSubmi != 0 ) {
		document.getElementById("submi_" + lastSubmi).className = "nav2_on";
	}
}

// Put passed sub-menu item into 'selected' state
function selectSubmi( nr, selected ) {
	if ( nr == lastSubmi ) return;
	node = document.getElementById("submi_" + nr);
	if ( selected == "true" ) {
		node.className = "nav2_sel";
	} else if ( nr != lastSubmi ) {
		node.className = "nav2";
	}
}

// Put passed sub-menu item into 'opened' state
function openSubmi( nr ) {
	if ( lastSubmi == nr ) return;
	if ( lastSubmi != 0 ) {
		document.getElementById("submi_" + lastSubmi).className = "nav2";
	}
	document.getElementById("submi_" + nr).className = "nav2_on";
	lastSubmi = nr;
}

// Reset global menu and sub-menu state
function resetMenu( ) {
	if ( lastMenu != 0 ) {
		clearSubMenu( );
		document.getElementById("blink_" + lastNr).className = "blink_off";
		lastMenu = 0;
		lastNr = 0;
		lastSubmi = 0;
	}
}

// ===== EOF ==================================================================


