var mnu = new Array();

mnu[0] = new Array((isFF | isSafari ? 170 : 180), 0, null);
mnu[1] = new Array((isFF | isSafari ? 170 : 180), 0, null);

var speed = 8;
var delay = 10;

function GetMenu(id)
{
    return(mnu[Math.abs(id.replace("mnu", ""))]);
}

function ExpandMenu(id, evt)
{
    var mnu = document.getElementById(id);
    var num = Math.abs(id.replace("mnu", ""));
    
    //Clear the timer.
    window.clearTimeout(GetMenu(id)[2]);
    
    //Set the position.
    if(evt != null)
    {
        var e = new Event(evt);
        mnu.style.left = (e.eventElementPosition[0] + e.eventElementDimensions[0] - 1) + "px";
        mnu.style.top = (e.eventElementPosition[1] + 1) + "px";
        mnu.style.width = "0px";
        mnu.style.zIndex = 5;
        mnu.style.visibility = "visible";
    }
    
    var width = GetMenu(id)[1];
    if(width < GetMenu(id)[0])
    {
        if(width > GetMenu(id)[0] - speed)
        {
            mnu.style.width = GetMenu(id)[0] + "px";
        }
        else
        {
            GetMenu(id)[1] = width + speed;
            mnu.style.width = GetMenu(id)[1] + "px";
            GetMenu(id)[2] = window.setTimeout("ExpandMenu('" + id + "', null);", delay);
        }
    }
    else
    {
        mnu.style.width = GetMenu(id)[1] + "px";
    }
}

function StartCollapseMenu(id)
{
    var mnu = document.getElementById(id);
    var num = Math.abs(id.replace("mnu", ""));
    
    //Clear the timer.
    window.clearTimeout(GetMenu(id)[2]);
    GetMenu(id)[2] = window.setTimeout("CollapseMenu('" + id + "');", 100);
}

function CollapseMenu(id)
{
    var mnu = document.getElementById(id);
    var num = Math.abs(id.replace("mnu", ""));
    
    //Clear the timer.
    window.clearTimeout(GetMenu(id)[2]);
        
    var width = GetMenu(id)[1];
    if(width >= 0)
    {
        if(width < speed)
        {
            GetMenu(id)[1] = 0;
            mnu.style.width = "0px";
            mnu.style.visibility = "hidden";
        }
        else
        {
            GetMenu(id)[1] = width - speed;
            mnu.style.zIndex = 4;
            mnu.style.width = GetMenu(id)[1] + "px";
            GetMenu(id)[2] = window.setTimeout("CollapseMenu('" + id + "');", delay);
        }
    }
}

