﻿var is_ie6;

function init()
{      
    is_ie6 = document.all && (navigator.userAgent.toLowerCase().indexOf("msie 6.") != -1);  
    
    var uls = document.getElementsByTagName('ul');    
    for (var u = 0; u < uls.length; u++)
    {        
        if (uls[u].className.search(/\bslidingmenu\b/) == -1) continue;
        var lis = uls[u].getElementsByTagName('li');
        for (var i = 0; i < lis.length; i++)
        {
            var node = lis[i];
            if (node.nodeName.toLowerCase() == 'li' &&
                node.getElementsByTagName('ul').length > 0)
            {
                addEvent(node, 'mouseover', getMoverFor(node), false);
                addEvent(node, 'mouseout', getMoutFor(node), false);                
            }
        }
    }
}

addEvent(window, 'load', init, false);

function getMoverFor(node)
{    
    return function(e) { mover(e, node); }
}

function getMoutFor(node)
{
    return function(e) { mout(e, node); }
}

function mover(e, targetElement)
{    
    var el = window.event ? targetElement : e ? e.currentTarget : null;
    if (!el) return;
    clearTimeout(el.outTimeout);
    el.style.zIndex = 999;
    for (var i = 0; i < el.childNodes.length; i++)
    {
        var node = el.childNodes[i];
        if (node.nodeName.toLowerCase() == 'ul')
        {            
            node.style.display = 'block';           
        }
    }    
}

function mout(e, targetElement)
{
    var el = window.event ? targetElement : e ? e.currentTarget : null;
    if (!el) return;
    el.outTimeout = setTimeout(function() { moutDelay(el); }, 150);
}

function moutDelay(el)
{   
    for (var i = 0; i < el.childNodes.length; i++)
    {
        var node = el.childNodes[i];
        if (node.nodeName.toLowerCase() == 'ul') 
        {
            node.style.display = 'none';        
        }        
    }    
}

function addEvent(elm, evType, fn, useCapture)
{
    if (elm.addEventListener)
    {
        elm.addEventListener(evType, fn, useCapture)
        return true;                
    }
    else if (elm.attachEvent)
    {
        var r = elm.attachEvent('on' + evType, fn);
        return r;        
    }
    else
    {
        elm['on' + evType] = fn;
    }
}

function hideShowIE6Elements(visibility)
{
    // hack for IE6 z-index <select> tag problem
    hideShowElement('ddlOriginCountry', visibility);
    hideShowElement('ddlDestinationCountry', visibility);
    hideShowElement('ddlPickupReadyHour', visibility);
    hideShowElement('ddlPickupReadyMinute', visibility);
    hideShowElement('ddlPickupReadyAMPM', visibility);
    hideShowElement('ddlFreightClass', visibility);
    hideShowElement('ddlHandlingUnitType', visibility);
}

function hideShowElement(id, visibility)
{
    if (document.getElementById(id))
    {
        document.getElementById(id).style.visibility = visibility;
    }
}



