// JavaScript Document
//Javascript Simple Submenu
//Michael Swanson, Communications, August 2006
//
//Close Sub-menu when 'X' is clicked
function closeLeftMenu(leftElemID){
	//Hide submenu
	if(leftElemID){ 
		document.getElementById(leftElemID).style.display = 'none'; 
		//Remove highlighting from any 'open' menus
		showLeftMenu();
	}	
}
//Close any open/highlighted menu elements, then highlight/show selected element
function showLeftMenu(leftElemID){
	//Start timer
	left_gbl_elemID = leftElemID;
	left_InitializeTimer();
	
	//Get links within submenu, assign mouseover event (timer reset)
	if (leftElemID){
		var myMenu = document.getElementById(leftElemID);
		//alert('title_left_'+leftElemID);
		var myButton = document.getElementById('title_'+leftElemID);
		myButton.onmouseout = function () { left_InitializeTimer(1); };
		// myMenu.onmouseover = alert(leftElemID);
		var myMenuLinks = myMenu.getElementsByTagName("A");
		for (var i=0;i<myMenuLinks.length;i++) {
			//Reset timer on mouseover of each link
			myMenuLinks[i].onmouseover = function () { left_InitializeTimer(1000); };
			myMenuLinks[i].onmouseout = function () { left_InitializeTimer(1); };
			// window.status = myMenu;
		}
	}

	//Loop through, hide all menus (and un-highlight parents) that are currently popped out
	var hideIndex = 1;
	while(document.getElementById('left_submenu'+hideIndex)){
		//Hide all 'open' submenus
		hideElement = document.getElementById('left_submenu'+hideIndex);
		if(hideElement.style.display == 'block') hideElement.style.display = 'none';
		//Remove highlighting from any 'open' menus
		unhighlightParent = document.getElementById('title_left_submenu'+hideIndex);
		unhighlightParent.className = 'nav_title';
		hideIndex = hideIndex+1;	
	}
	//If element is selected, highlight menu and open submenu
	if(leftElemID){	
		//Pop-out menu that mouse has just run over
		leftSelectedElem = document.getElementById(leftElemID);
		leftSelectedElem.style.display = 'block';
		//Keep parent menu item hilighted
		leftHighlightParent = document.getElementById('title_'+leftElemID);
		leftHighlightParent.className = 'nav_title_selected';
	}	
}

/* ========================= TIMER FUNCTIONS ======================= */
var leftSecs
var leftTimerID = null
var leftTimerRunning = false
var leftDelay = 1000

function left_InitializeTimer(time){
    // Set the length of the timer, in seconds
	if(time) {
		leftSecs = time;
	} else {
    	leftSecs = 1000;		
	}
    left_StopTheClock()
    left_StartTheTimer()
}

function left_StopTheClock(){
    if(leftTimerRunning)
        clearTimeout(leftTimerID)
    leftTimerRunning = false
}

function left_StartTheTimer(){
    if (leftSecs==0){
        left_StopTheClock()
        // Here's where you put something useful that's
        // supposed to happen after the allotted time.
        closeLeftMenu(left_gbl_elemID);
    } else {
        // self.status = leftSecs
        leftSecs = leftSecs - 1
        leftTimerRunning = true
        leftTimerID = self.setTimeout("left_StartTheTimer()", leftDelay)
    }
}