var ddVertMenuOpenContainer = null;
var ddVertMenuOpenMenus = null;
var ddVertMenuActiveItem = null;
var ddVertMenuHideTimer = null;
var ddVertMenuOffsetTop = 12;
var ddVertMenuOffsetLeft = -12;

function ddVertMenuStartTimeout(hideTimeout) {
	ddVertMenuHideTimer = setTimeout("ddVertMenuHideMenus()", hideTimeout);
}

function ddVertMenuHideMenus() {
	ddVertMenuResetTimeout();
	if (ddVertMenuOpenContainer) {
		var c = document.getElementById(ddVertMenuOpenContainer);
		c.style.visibility = "inherit";
		ddVertMenuOpenContainer = null;
	}
	if (ddVertMenuOpenMenus) {
		for (var i in ddVertMenuOpenMenus) {
			var m = document.getElementById(ddVertMenuOpenMenus[i]);
			m.style.visibility = "hidden";
		}
		ddVertMenuOpenMenus = null;
	}
	ddVertMenuItemOut();
}

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

function ddVertMenuItemOver(actuator) {
	ddVertMenuItemOut();
	ddVertMenuHideMenus();
	if (actuator) {
		ddVertMenuActiveItem = actuator;
		ddVertMenuActiveItem.className = "ddVertMenuItemHover";
	}
}

function ddVertMenuItemOut() {
	if (ddVertMenuActiveItem) ddVertMenuActiveItem.className = "ddVertMenuItem";
}

function ddVertMenuFolderOver(id) {
	var actuator = document.getElementById(id);
	if (actuator) actuator.className = "ddVertMenuFolderItemHover";
	
}

function ddVertMenuFolderOut(id) {
	var actuator = document.getElementById(id);
	if (actuator) actuator.className = "ddVertMenuFolderItem";
}

function ddVertMenuFolderItemOver(menuName, actuator, subMenuSuffix) {
	ddVertMenuResetTimeout();
	ddVertMenuHideSubmenus(menuName);
	
	if (actuator) actuator.className = "ddVertMenuFolderItemHover";
	if (subMenuSuffix) {
		var subMenuName = "" + menuName + "_" + subMenuSuffix;
		ddVertMenuShowSubMenu(subMenuName, actuator);
	}
}

function ddVertMenuFolderItemOut(actuator) {
	ddVertMenuStartTimeout(1000);
	
	if (actuator) actuator.className = "ddVertMenuFolderItem";
}

function ddVertMenuShowSubMenu(subMenuName, actuator) {
	ddVertMenuResetTimeout();
	var e = document.getElementById(subMenuName);
	e.style.left = actuator.offsetWidth + ddVertMenuOffsetLeft;
	e.style.top = actuator.offsetTop + ddVertMenuOffsetTop;
	e.style.zIndex = e.parentNode.style.zIndex + 1;
	e.style.visibility = "inherit";

	if (!ddVertMenuOpenMenus) ddVertMenuOpenMenus = new Array;
	ddVertMenuOpenMenus[ddVertMenuOpenMenus.length] = "" + subMenuName;
}

function ddVertMenuResetTimeout() {
	if (ddVertMenuHideTimer) clearTimeout(ddVertMenuHideTimer);
	ddVertMenuHideTimer = null;
}

function ddVertMenuShowMenu(containName, menuName, actuator) {
	ddVertMenuItemOver(actuator);
	ddVertMenuResetTimeout();
	ddVertMenuShowMenuContainer(containName);
	ddVertMenuShowSubMenu(menuName, actuator);
}

function ddVertMenuShowMenuContainer(containName) {
	var c = document.getElementById(containName);
	c.style.visibility = "inherit";

	ddVertMenuOpenContainer = "" + containName;
}

function ddVertMenuFolderItemClick(actuator) {}