
function getX(node) {
   var curleft = 0;
   if(node.offsetParent)
      while(1)
      {
         curleft += node.offsetLeft;
         if(!node.offsetParent)
            break;
         node = node.offsetParent;
      }
   else if(node.x)
      curleft += node.x;
   return curleft;
}

function getY(node) {
   var curtop = 0;
   if(node.offsetParent)
      while(1)
      {
         curtop += node.offsetTop;
         if(!node.offsetParent)
            break;
         node = node.offsetParent;
      }
   else if(node.y)
      curtop += node.y;
   return curtop;
}

function getWidth(node) {
   return parseInt(node.offsetWidth);
}

function getHeight(node) {
   return parseInt(node.offsetHeight);
}


function Node(obRef){
   this.obRef=obRef;
   this.timeRef=null;
}

myNodes=new Array();

function isParent(kind, ouder){
   oudere=kind.parentNode;
   do   {
      oudere=oudere.parentNode;
      if (oudere==ouder)      {
          return true;
       }
    }
   while (oudere.nodeName!='BODY')
      return false;
}
   
function showSub(showNode){
   if (isNaN(showNode.rIndex)){
      showNode.rIndex=myNodes.length;
      myNodes[showNode.rIndex]=new Node(showNode);
   }
   else{
      clearTimeout(myNodes[showNode.rIndex].timeRef);
   }
   temp='';
   for (i in myNodes){
      if (!isParent(myNodes[i].obRef, showNode)){
         clearTimeout(myNodes[i].timeRef);
         doHide(myNodes[i].obRef);
      }
   }
   
   for (i in showNode.childNodes){
      if (showNode.childNodes[i].nodeType==1){
         if(showNode.childNodes[i].tagName == "UL"){
            showNode.childNodes[i].style.display='block';
         }
      }
   }
}

function hideSub(hideNode){
   myNodes[hideNode.rIndex].timeRef=setTimeout('doHide(myNodes['+hideNode.rIndex+'].obRef)', 500);
}

function doHide(doNode){
   for (i in doNode.childNodes){
      if (doNode.childNodes[i].nodeType==1 && doNode.childNodes[i].nodeName=='UL'){
         doNode.childNodes[i].style.display='none';
      }
   }
}

window.onload=function(){
   var li = document.getElementById('menu').getElementsByTagName('li');
   var ul;
   
   for (i in li){
      if(!isNaN(i)){
         ul = li[i].childNodes;
         for(j in ul){
            if(ul[j].nodeName == 'UL'){
               ul[j].className = li[i].className = 'sub';
               li[i].onmouseover = function (){
                  showSub(this);
               }
               li[i].onmouseout = function (){
                  hideSub(this);
               }
            }
         }
      }
   }
}