var objNavMenu = null;
var prevObjNavMenu = null;
var prevObjDropMenu = null;

////// link styles
var bgLinkColor = '#F1E1C0';
var bgLinkHover = '#F1E1C0';
var bgLinkActive = '#F1E1C0';
var linkColor = '#000';
var linkHover = '#1962ae';
var linkActive = '#1962ae';
var isIE = null;

    if (navigator.appName.indexOf('Microsoft Internet Explorer') != -1) isIE=1;

function ref(){
var e=document.getElementById("refreshed");
    if(e)
    {
        if(e.value=="no")
        {
            e.value="yes";
        }
        else
        {
            e.value="no";
            location.reload();
        }
    }
}

function initDropMenu () 
{
   ref();
   document.onclick = hideDropMenu;
   var frames = document.getElementsByTagName("iframe");
   for(var i=0; i<frames.length; i++)
   {
     try
     {
        frames[i].document.onclick=hideDropMenu;
     }
     catch(e)
     {
     }
   }
   for (i=1; i<=numDropMenu; i++) 
   {
      navName = 'navMenu' + i;
      objNavMenu = document.getElementById(navName);
      objNavMenu.onmouseover =  showDropMenu;
      objNavMenu.onmouseout = hideDropMenu;  // eatEvent;
      setChildNodesOnMouseOut(objNavMenu, eatEvent);
      menuName = 'dropMenu' + i;
      objDropMenu = document.getElementById(menuName);
      objDropMenu.style.visibility = 'hidden';
   }
   for(var mh=0; mh<menuHeader.length; mh++)
   {
        var mhElement = document.getElementById(menuHeader[mh]);
        mhElement.onmouseout = hideDropMenu;
//        mhElement.parentNode.onmouseout = eatEvent;
   }
   objNavMenu = null;
   return;
}

function setChildNodesOnMouseOut(element, method)
{
   var children = element.childNodes;
   for(var i=0; i< children.length; i++)
   {
      children[i].onmouseout = method;
   }
   
}
function eatEvent(e)
{
   try
   {
      if (e && e.stopPropagation) //if stopPropagation method supported
      {
         e.stopPropagation()
      }
      else
      {
         event.cancelBubble=true
      }  
   }
   catch(whatever)
   {
   }
}

function menuOut(e) 
{

   alert("menuout");
   document.onclick = hideDropMenu;
   document.frames[0].document.onclick=hideDropMenu;
   if(document.frames[1]!=null)
   {
      document.frames[1].document.onclick=hideDropMenu;
   }   
   outObjNavMenu = document.getElementById(this.id);
   if (outObjNavMenu != objNavMenu) 
   {
      outObjNavMenu.style.color = linkColor;
      outObjNavMenu.style.backgroundColor = bgLinkColor;
   }
}

function showDropMenu(e) 
{
   menuName = 'drop' + this.id.substring(3,this.id.length);
   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) 
   {
      xPos = objNavMenu.offsetParent.offsetLeft + objNavMenu.offsetLeft;
      yPos = objNavMenu.offsetTop + 20;
      if (isIE) 
      {
         yPos -= 1;
         xPos -= 6;
      }
      objDropMenu.style.left = xPos + 'px';
      objDropMenu.style.top = yPos + 'px';
      objDropMenu.style.visibility = 'visible';
      objDropMenu.style.display = 'inline';
      prevObjDropMenu = objDropMenu;
      prevObjNavMenu = objNavMenu;
      objDropMenu.onmouseout = hideDropMenu;
   }
   
}

function getXY(e)
{
   e = window.event || e;
   if(e) // W3C 
   {
      return {"x":(e.pageX),"y":(e.pageY)};  
   }
   else  // Microsoft
   {
      return {"x":(e.clientX + document.body.scrollLeft),"y":(e.clientY + document.body.scrollTop)};
   }
}

function hideDropMenu(e) 
{
 var evt=window.event || e;
   document.onclick = null;
   if (prevObjDropMenu) 
   {
      var hide = true;
      if(evt)
      {
         var mousePos = getXY(e);
         var width = prevObjDropMenu.offsetLeft + prevObjDropMenu.offsetWidth;
         var height = prevObjDropMenu.offsetTop + prevObjDropMenu.offsetHeight;
         if((mousePos.x > prevObjDropMenu.offsetLeft && mousePos.x < width)
            && (prevObjDropMenu.offsetTop < mousePos.y && height > mousePos.y))
         {
            hide = false;
         }
         var fromElement=evt.srcElement || evt.target;
         var toElement=evt.toElement || evt.relatedTarget;
         if(toElement == this || toElement == prevObjDropMenu)    // no hide if moving to self
         {         
            hide = false
         }
         else
         {
            var children = prevObjDropMenu.childNodes;
            for(var i=0; i< children.length; i++)
            {
               if(toElement == children[i])
               {
                  hide = false;
                  break;
               }
            }
         }
      }
      if(hide)
      {
         prevObjDropMenu.style.visibility = 'hidden';
         prevObjDropMenu = null;
         prevObjNavMenu.style.color = linkColor;
         prevObjNavMenu.style.backgroundColor = 'transparent';
         eatEvent(e);
      }
      else
      {  // do not propagate event stop it here
         if (e && e.stopPropagation) //if stopPropagation method supported
         {
            e.stopPropagation()
         }
         else
         {
            event.cancelBubble=true
         }  
      }
   }
   objNavMenu = null;
}
