﻿// These utilities are used for DropDown Menu
// Currently, we have 7 actions in Menu
// 			
                                                      var objNavMenu = null;
			var prevObjNavMenu = null;
			var prevObjDropMenu = null;
			var numDropMenu = 8; // 3;
			////// link styles
			var bgLinkColor = '#cccccc';
			var bgLinkHover = '#ffffff';
			var bgLinkActive = '#000000';
			var linkColor = '#000000';
			var linkHover = '#000000';
			var linkActive = '#ffffff';
			
			var isIE = null;
			if (navigator.appName.indexOf('Microsoft Internet Explorer') != -1) isIE=1;

			function hideDropMenu() {
				document.onclick = null;
				if (prevObjDropMenu) {
					prevObjDropMenu.style.visibility = 'hidden';
					prevObjDropMenu = null;
					prevObjNavMenu.style.color = linkColor;
					prevObjNavMenu.style.backgroundColor = bgLinkColor;
				}
				objNavMenu = null;
			}

			function initDropMenu () {
				document.onclick = hideDropMenu;
				for (var i=1;  i<=numDropMenu;  i++) {
					var menuName = 'dropMenu' + i;
					var navName = 'navMenu' + i;
					var objDropMenu = document.getElementById(menuName);
					objNavMenu = document.getElementById(navName);
                                                                                          if (objDropMenu)
					        objDropMenu.style.visibility = 'hidden';
                                                                                          if (objNavMenu) {
					        objNavMenu.onmouseover =  menuHover;
					        objNavMenu.onmouseout = menuOut;
					        objNavMenu.onclick = showDropMenu;
                                                                                          }
				}
				objNavMenu = null;
                                                                        return;
			}

			function  menuHover() {
				document.onclick = null;
				var hoverObjNavMenu = document.getElementById(this.id);
				if (hoverObjNavMenu != objNavMenu) {
					  hoverObjNavMenu.style.color = linkHover;
					  hoverObjNavMenu.style.backgroundColor = bgLinkHover;
				}		
			}
			
			function menuOut () {
				document.onclick = hideDropMenu;
				var outObjNavMenu = document.getElementById(this.id);
				if (outObjNavMenu != objNavMenu) {
					outObjNavMenu.style.color = linkColor;
					outObjNavMenu.style.backgroundColor = bgLinkColor;
				}
			}
			
			function showDropMenu() {
				var menuName = 'drop' + this.id.substring(3,this.id.length);
				var objDropMenu = document.getElementById(menuName);
				if (prevObjDropMenu == objDropMenu) {
					hideDropMenu();
					return;
				}
				if (prevObjDropMenu != null) hideDropMenu;
				objNavMenu = document.getElementById(this.id);
				if ((prevObjNavMenu != objNavMenu ) || (prevObjDropMenu == null)) {
					objNavMenu.style.color = linkActive;
					objNavMenu.style.backgroundColor = bgLinkActive;
				}
				
				if (objDropMenu) {
					var xPos = objNavMenu.offsetParent.offsetLeft + objNavMenu.offsetLeft;
					var yPos = objNavMenu.offsetParent.offsetTop + objNavMenu.offsetParent.offsetHeight;
					if (isIE) {
						yPos -= 1;
						xPos -= 8;
					}
					objDropMenu.style.left = xPos + 'px';
					objDropMenu.style.top = yPos + 'px';
					objDropMenu.style.visibility = 'visible';
					prevObjDropMenu = objDropMenu;
					prevObjNavMenu = objNavMenu;
				}
			}
			