var curSub;
var outV;
var curLeft;
var myFx;
 
function findX( oElement ) {
  if( typeof( oElement.offsetParent ) != 'undefined' ) {
    for( var posX = 0, posY = 0; oElement; oElement = oElement.offsetParent ) {
      posX += oElement.offsetLeft;
      posY += oElement.offsetTop;
    }
    return [ posX];
  } else {
    return [ oElement.x];
  }
}
function kSub(x) {
  if(x != undefined) {
    if(x.getElementsByTagName("ul")[0] != undefined) 
      { 
          x.className = x.className.replace(new RegExp("nav-a-bg"), "");
      x.getElementsByTagName("ul")[0].style.left = '-999em'; 
      x.getElementsByTagName("ul")[0].style.right = 'auto';
        y = x.getElementsByTagName("ul")[0];
//        myFx = new Fx.Tween(x, {'link':'chain','duration':'200'});
//        myFx.tween('opacity', '0.0');
        //myFx.set('opacity', '0.0');
      };
    }
}

navHover = function () {
    if (!document.getElementById("nav")) {
        return;
    }
    
    var mAs = document.getElementById("nav").getElementsByTagName("a");
    
    for (var i = 0; i<mAs.length; i++) {
        
        if((mAs[i].className == "nav-a") && ((mAs[i].parentNode.getElementsByTagName("ul")[0]) != undefined)) {
            element = (mAs[i].parentNode.getElementsByTagName("ul")[0]);
        }
        mAs[i].onmouseover = function() {
            if (this.className == "nav-a") {
                if ((curSub != "") && (curSub != null)) {
                    kSub(curSub);
                }
                clearTimeout(outV);
                curSub = this.parentNode;
                curUL = curSub.getElementsByTagName("ul")[0];
                if (curUL != undefined)
                {
                 curSub.className = (curSub.className + " nav-a-bg");
                    curLeft = (findX(curSub) - findX(curSub.parentNode));
                    curWidth = curUL.offsetWidth;
                    navWidth = document.getElementById("nav-ul").offsetWidth;
                    curTotal = (+curLeft) + (+curWidth);
                    if ((curTotal) > navWidth) 
                    { 
                        curUL.style.left = 'auto';
                        curUL.style.right = '20px'; 
                    }
                    else
                    { 
                        curUL.style.left = 'auto';
                        curUL.style.right = 'auto'; 
                    }
//                    myFx = new Fx.Tween(curUL, {'link':'chain','duration':'200'});
//                    myFx.tween('opacity', '1.0');
               }
            }
        };
        
        mAs[i].onmouseout = function() {
            if (this.className == "nav-a") {
                outV = setTimeout("kSub(curSub)", 2000);
            }
        };
    }
    
    if (!document.getElementById("nav-ul")) {
        return;
    }
    
    var mULs = document.getElementById("nav-ul").getElementsByTagName("ul");
    
    for (var i = 0; i<mULs.length; i++) {
        mULs[i].onmouseover = function() {
            clearTimeout(outV);
        };
        mULs[i].onmouseout = function() {
            outV = setTimeout("kSub(curSub)", 1000);
        };
    }
};