﻿var hoverClass = "AspNet-Menu-Hover";
var topmostClass = "AspNet-Menu";
var userAgent = navigator.userAgent;
var versionOffset = userAgent.indexOf("MSIE");
var isIE = (versionOffset >= 0);
var isPreIE7 = false;
var fullVersionIE = "";
var majorVersionIE = "";
if (isIE)
{
    fullVersionIE = parseFloat(userAgent.substring(versionOffset+5, userAgent.length));
    majorVersionIE = parseInt('' + fullVersionIE);
    isPreIE7 = majorVersionIE < 7;
}
function findPos(obj) {
    if (isPreIE7)
    {
	    var curleft = curtop = 0;
	    if (obj.offsetParent) {
		    curleft = obj.offsetLeft;
		    curtop = obj.offsetTop;
		    while (obj = obj.offsetParent) {
			    curleft += obj.offsetLeft;
			    curtop += obj.offsetTop;
		    }
	    }
	    return [curleft,curtop];
	}
	else
	{
	    var curleft = curtop = 0;
        var plus = -1
	    while (obj)
	    {
	        if (obj.offsetLeft != 0)
	        {
	            curleft += (obj.offsetLeft * plus);
	            plus = 1;
	        }
		    curtop += obj.offsetTop;
		    obj = obj.offsetParent;
	    }                                    
	    return [curleft - g_Adjust,curtop];
	}
}
function UnHoverUL__Test(element)
{
    //element.style.visibility = 'hidden';
}
var m_ParentUL = null;
var m_ParentDIV = null;
var m_CanHide = false;
function RemoveAllFakes()
{
    var frm = document.getElementById('aspnetForm');
    var items = frm.getElementsByTagName("div");
    for (var k=0; k<items.length; k++)
    {
        if (items[k].getAttribute("class") == "menuItem")
        {
            frm.removeChild(items[k]);
            //items[k].style.visibility = 'hidden';
        }
    }
}
function ForceHide(element)
{
    RemoveAllFakes();
}
function Hide__Test(element)
{
    if (m_CanHide)
    {
        //alert(element);
        //m_ParentDIV.style.visibility = "hidden";
        RemoveAllFakes();
                            m_ParentUL = null;
    }
}
function UnHover__Test(element)
{
    Unhover__AspNetMenu(element);
    if (m_ParentUL)
    {
        Unhover__AspNetMenu(m_ParentUL);
        setTimeout('Hide__Test(\'myobj\');',60);
        m_CanHide = true;
    }
}
function Hover__Test(element)
{
    Hover__AspNetMenu(element);
    if (m_ParentUL)
    {
        m_CanHide = false;
        Hover__AspNetMenu(m_ParentUL);
    }
}
function Hover__AspNetMenu(element)
{
    AddClass__CssFriendlyAdapters(element, hoverClass);
    if (true) //isPreIE7)
    {
        var child = element.firstChild;
        var items = element.getElementsByTagName("ul");
        if ((items.length == 0))
        {
            m_CanHide = true;
            setTimeout('Hide__Test(\'myobj\');',60);
        }
        while (child)
        {
            if (child.tagName == "UL")
            {
                var grandchild = child.firstChild;
                while (grandchild)
                {
                    if (grandchild.tagName == "LI")
                    {
                    }                    
                    grandchild = grandchild.nextSibling;
                }
                if (element.parentNode)
                {
                    if (element.parentNode.parentNode)
                    {
                        if (element.parentNode.parentNode.parentNode.parentNode)
                        {
                            if (element.parentNode.parentNode.parentNode.parentNode.parentNode)
                            {
                                if (element.parentNode.parentNode.parentNode.parentNode.getAttribute("tagName") == "DIV")
                                {
                                    RemoveAllFakes();
                                
                                    //child.parentNode.onmouseout = null;
                                    //child.parentNode.parentNode.parentNode.onmouseout = null;
        m_CanHide = false;
                                    m_ParentUL = child.parentNode.parentNode.parentNode;
                                    var frm = document.getElementById('aspnetForm');
                                    var d = document.createElement('div');
                                    d.setAttribute("class", "menuItem"); 
                                    d.setAttribute("className", "menuItem");
                                    var pos = findPos(child.parentNode);
                                    if (isPreIE7)
                                    {
                                        d.style.left = pos[0] + 13;
                                    }
                                    else
                                    {
                                        d.style.left = pos[0];
                                    }
                                    d.style.top = pos[1];
                                    d.style.position = "absolute";
                                    d.style.display = "block";
                                    d.style.zIndex = 1000;
                                    d.style.filter = "progid:DXImageTransform.Microsoft.Shadow(color:#808080, strength:10, direction:135)"; 
                                    var temp = child.cloneNode(true);
                                    d.style.visibility = "visible";
                                    m_ParentDIV = d;
                                    var cli = temp.firstChild;
                                    var items = temp.getElementsByTagName("li");
                                    for (var k=0; k<items.length; k++)
                                    {
                                        items[k].onmouseover = function() { Hover__Test(this); }
                                        items[k].onmouseout = function() { UnHover__Test(this); }
                                    }
                                    d.appendChild(temp);
                                    frm.appendChild(d);
                                }
                            }
                        }
                    }
                }
//                child.filters.item(0).enabled = true;
            }
            child = child.nextSibling;
        }
    }
}
function Unhover__AspNetMenuItem(element, parent)
{
    Unhover__AspNetMenu(element)
    parent.onmouseout = function() { Unhover__AspNetMenu(this); }
    parent.parentNode.parentNode.onmouseout = function() { Unhover__AspNetMenu(this); }
    Unhover__AspNetMenu(parent)
    Unhover__AspNetMenu(parent.parentNode.parentNode)
}
function Unhover__AspNetMenu(element)
{
    RemoveClass__CssFriendlyAdapters(element, hoverClass);

    if (true) //isPreIE7)
    {
//        var frm = document.getElementById('aspnetForm');
//        var items = frm.getElementsByTagName("div");
//        for (var k=0; k<items.length; k++)
//        {
//            if (items[k].getAttribute("class") == "menuItem")
//            {
//                //frm.removeChild(items[k]);
//                items[k].style.visibility = 'hidden';
//            }
//        }
//        if (element.parentNode)
//        {
//            element.parentNode.style.visibility = 'hidden';
//        }
        var child = element.firstChild;
        while (child)
        {
            if (child.tagName == "UL")
            {
//                var grandchild = child.firstChild;
//                while (grandchild)
//                {
//                    if (grandchild.tagName == "LI")
//                    {
//                        if ((typeof(grandchild.iFrameFormElementMask) != "undefined") && (grandchild.iFrameFormElementMask != null))
//                        {
//                            grandchild.iFrameFormElementMask.style.display = "none";
//                        }
//                    }

//                    grandchild = grandchild.nextSibling;
//                }
            }

            child = child.nextSibling;
        }
        var items = element.getElementsByTagName("ul");
        if ((items.length == 0))
        {
        m_CanHide = true;
            setTimeout('Hide__Test(\'myobj\');',60);
        }
    }
}

function SetHover__AspNetMenu()
{
    var th = document.getElementById("header_bot");
    if (th)
    {
        th.onmouseover = function() { ForceHide(this);}
    }
    var tr = document.getElementById("ctl00_BannerImg");
    if (tr)
    {
        tr.onmouseover = function() { ForceHide(this);}
    }
    var menus = document.getElementsByTagName("ul");
    for (var i=0; i<menus.length; i++)
    {
        if(menus[i].className == topmostClass)
        {
            //menus[i].style.filter = "progid:DXImageTransform.Microsoft.Shadow(color:#808080, strength:10, direction:135)";
            var items = menus[i].getElementsByTagName("li");
            for (var k=0; k<items.length; k++)
            {
                items[k].onmouseover = function() { Hover__AspNetMenu(this); }
                items[k].onmouseout = function() { Unhover__AspNetMenu(this); }
                
//                if (isPreIE7 && ((typeof(items[k].iFrameFormElementMask) == "undefined") || (items[k].iFrameFormElementMask == null)))
//                {
//                    var iFrameFormElementMask = document.createElement("IFRAME");
//                    iFrameFormElementMask.scrolling= "no";
//                    iFrameFormElementMask.src = "javascript:false;";
//                    iFrameFormElementMask.frameBorder = 0;
//                    iFrameFormElementMask.style.display = "none";
//                    iFrameFormElementMask.style.position = "absolute";
//                    iFrameFormElementMask.style.filter = "progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)";

//                    iFrameFormElementMask.style.zIndex = -1;
//                    items[k].insertBefore(iFrameFormElementMask, items[k].firstChild);
//                    items[k].iFrameFormElementMask = iFrameFormElementMask;
//                }                
            }
            var items = menus[i].getElementsByTagName("ul");
            for (var k=0; k<items.length; k++)
            {
                items[k].style.filter = "progid:DXImageTransform.Microsoft.Shadow(color:#808080, strength:10, direction:135)";
                //items[k].filters.item(0).enabled = false;
            }
        }
    }
}

/*if (isPreIE7)
{*/
    window.onload = SetHover__AspNetMenu;
/*}*/

