﻿
var menuitems = [];


function InitMenu()
{
    CollectMenuItems();
}

function CollectMenuItems()
{
    var collmenuitems = getElementsByClassName("menuitem");
   
    for(var i=0; i<collmenuitems.length; i++)
    {
        var menuitem = collmenuitems[i];
        menuitems.push(menuitem);
        
        menuitem.onmouseover = function()
        {
            var menuitempanel = getElementsByClassName("menuitempanel", this);
            if(!menuitempanel[0]) return;

            menuitempanel[0].style.display = "inline";
			
			var menuX = this.offsetWidth * -1;
			
			//if(findPosX(this) + 375 > pageWidth()) menuX += findPosX(this) - pageWidth();
            menuitempanel[0].getElementsByTagName("UL")[0].style.marginLeft = menuX + "px";
        }
        
        menuitem.onmouseout = function()
        {
            var menuitempanel = getElementsByClassName("menuitempanel", this);
            if(!menuitempanel[0]) return;
            
            menuitempanel[0].style.display = "none";
         }
    }
}

function getElementsByClassName(classname, node)
{
    if(!node) node = document.getElementsByTagName("body")[0];
    var a = [];
    var re = new RegExp('\\b' + classname + '\\b');
    var els = node.getElementsByTagName("*");
    for(var i=0,j=els.length; i<j; i++)
        if(re.test(els[i].className))a.push(els[i]);
    return a;
}



function pageWidth() {return window.innerWidth != null? window.innerWidth : document.documentElement && document.documentElement.clientWidth ?       document.documentElement.clientWidth : document.body != null ? document.body.clientWidth : null;} function pageHeight() {return  window.innerHeight != null? window.innerHeight : document.documentElement && document.documentElement.clientHeight ?  document.documentElement.clientHeight : document.body != null? document.body.clientHeight : null;} function posLeft() {return typeof window.pageXOffset != 'undefined' ? window.pageXOffset :document.documentElement && document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ? document.body.scrollLeft : 0;} function posTop() {return typeof window.pageYOffset != 'undefined' ?  window.pageYOffset : document.documentElement && document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ? document.body.scrollTop : 0;} function posRight() {return posLeft()+pageWidth();} function posBottom() {return posTop()+pageHeight();}

function findPosX(obj)
  {
    var curleft = 0;
    if(obj.offsetParent)
        while(1) 
        {
          curleft += obj.offsetLeft;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.x)
        curleft += obj.x;
    return curleft;
  }
