var mmOpenContainer = null;
var mmOpenMenus = null;
var mmHideMenuTimer = null; 

function MM_menuStartTimeout(hideTimeout) {
	mmHideMenuTimer = setTimeout("MM_menuHideMenus()", hideTimeout);	
}

function MM_menuHideMenus() {
	MM_menuResetTimeout();
	if(mmOpenContainer) {
		var c = document.getElementById(mmOpenContainer);
		c.style.visibility = "inherit";
		mmOpenContainer = null;
	}
	if( mmOpenMenus ) {
		for(var i in mmOpenMenus) {
			var m = document.getElementById(mmOpenMenus[i]);
			m.style.visibility = "hidden";			
		}
		mmOpenMenus = null;
	}
}

function MM_menuHideSubmenus(menuName) {
	if( mmOpenMenus ) {
		var h = false;
		var c = 0;
		for(var i in mmOpenMenus) {
			if( h ) {
				var m = document.getElementById(mmOpenMenus[i]);
				m.style.visibility = "hidden";
			} else if( mmOpenMenus[i] == menuName ) {
				h = true;
			} else {
				c++;
			}
		}
		mmOpenMenus.length = c+1;
	}
}

function MM_menuOverMenuItem(menuName, subMenuSuffix) {
	MM_menuResetTimeout();
	MM_menuHideSubmenus(menuName);
	if( subMenuSuffix ) {
		var subMenuName = "" + menuName + "_" + subMenuSuffix;
		MM_menuShowSubMenu(subMenuName);
	}
}

function MM_menuShowSubMenu(subMenuName) {
	MM_menuResetTimeout();
	var e = document.getElementById(subMenuName);
	e.style.visibility = "inherit";
	if( !mmOpenMenus ) {
		mmOpenMenus = new Array;
	}
	mmOpenMenus[mmOpenMenus.length] = "" + subMenuName;
}

function MM_menuResetTimeout() {
	if (mmHideMenuTimer) clearTimeout(mmHideMenuTimer);
	mmHideMenuTimer = null;
}

function MM_menuShowMenu(containName, menuName, xOffset, yOffset, triggerName) {
	MM_menuHideMenus();
	MM_menuResetTimeout();
	MM_menuShowMenuContainer(containName, xOffset, yOffset, triggerName);
	MM_menuShowSubMenu(menuName);
}

function MM_menuShowMenuContainer(containName, x, y, triggerName) {	
	var c = document.getElementById(containName);
	var s = c.style;
	s.visibility = "inherit";
	
	mmOpenContainer = "" + containName;
}



/** for sub menu **/
var mm2OpenContainer = null;
var mm2OpenMenus = null;
var mm2HideMenuTimer = null; 

function MM2_menuStartTimeout(hideTimeout2) {
	mm2HideMenuTimer = setTimeout("MM2_menuHideMenus()", hideTimeout2);	
}

function MM2_menuHideMenus() {
	MM2_menuResetTimeout();
	if(mm2OpenContainer) {
		var c = document.getElementById(mm2OpenContainer);
		c.style.visibility = "inherit";
		mm2OpenContainer = null;
	}
	if( mm2OpenMenus ) {
		for(var i in mm2OpenMenus) {
			var m = document.getElementById(mm2OpenMenus[i]);
			m.style.visibility = "hidden";			
		}
		mm2OpenMenus = null;
	}
}

function MM2_menuHideSubmenus(menuName2) {
	if( mm2OpenMenus ) {
		var h = false;
		var c = 0;
		for(var i in mm2OpenMenus) {
			if( h ) {
				var m = document.getElementById(mm2OpenMenus[i]);
				m.style.visibility = "hidden";
			} else if( mm2OpenMenus[i] == menuNam2e ) {
				h = true;
			} else {
				c++;
			}
		}
		mm2OpenMenus.length = c+1;
	}
}

function MM2_menuOverMenuItem(menuName2, subMenuSuffix2) {
	MM2_menuResetTimeout();
	MM2_menuHideSubmenus(menuName2);
	if( subMenuSuffix2 ) {
		var subMenuName2 = "" + menuName2 + "_" + subMenuSuffix2;
		MM2_menuShowSubMenu(subMenuName2);
	}
}

function MM2_menuShowSubMenu(subMenuName2) {
	MM_menuResetTimeout();
	var e = document.getElementById(subMenuName2);
	e.style.visibility = "inherit";
	if( !mm2OpenMenus ) {
		mm2OpenMenus = new Array;
	}
	mm2OpenMenus[mm2OpenMenus.length] = "" + subMenuName2;
}

function MM2_menuResetTimeout() {
	if (mm2HideMenuTimer) clearTimeout(mm2HideMenuTimer);
	mm2HideMenuTimer = null;
}

function MM2_menuShowMenu(containName2, menuName2, xOffset2, yOffset2, triggerName2) {
	MM2_menuHideMenus();
	MM2_menuResetTimeout();
	MM2_menuShowMenuContainer(containName2, xOffset2, yOffset2, triggerName2);
	MM2_menuShowSubMenu(menuName2);
}

function MM2_menuShowMenuContainer(containName2, x2, y2, triggerName2) {	
	var c = document.getElementById(containName2);
	var s = c.style;
	s.visibility = "inherit";
	
	mm2OpenContainer = "" + containName2;
}
