/*
description: sitewide top navigation
*/

timeoutID = '';
navtimeoutID = '';
revertTime = 350;

// show menu
function sM(level)
{
    selectMenu(level);
    if (topNav[level].length == 0)
    {
        return false;
    }
    tltp = gE('overDiv');
    menu = "<div id=\"navmenu\" class=\"navmenu\" onmouseover=\"stopmenurevert()\" onmouseout=\"hM('" + level + "')\">";
    for (var i in topNav[level])
    {
		if (i != 0) 
		{
			menu += "<a class=\"dropmenuitem2\" onfocus=\"this.blur();\" href=\"" + topNav[0] + topNav[level][0] +topNav[level][i][1] + "\">" + topNav[level][i][0] + "</a>";
		}
    }
    menu += '</div>';
    wH(tltp,menu);
    var objectOffsets = getOffsets(gE('sub'+level));
    xxx = objectOffsets.get('left');
    yyy = objectOffsets.get('top') + (objectOffsets.get('bottom') - objectOffsets.get('top'));
    sX(tltp, xxx);
    sY(tltp, yyy);
	
    var levelThree = getOffsets(gE('navmenu'));
	
	menuWidth = objectOffsets.get('right') - objectOffsets.get('left');;
	levelWidth = levelThree.get('right') - levelThree.get('left');;
	status = menuWidth + " vs "+ levelWidth
	if (levelWidth < menuWidth) {
		sW(gE('navmenu'),menuWidth+1)
	}
	
    var objectOffsets = getOffsets(gE('navmenu'));
    xxxRight = objectOffsets.get('right');
    if  (xxxRight > 760)
    {
        sX(tltp, (xxx - (xxxRight - 760)));
    }
    sE(tltp);
    tipObj = gE('navmenu');
    var browser = navigator.appVersion.toLowerCase();
    if ((browser.indexOf('msie 5.0') || browser.indexOf('msie 5.1') || browser.indexOf('msie 5.5')) != -1)
    {
        detectCollisions('iframe');
    }
    detectCollisions('select');
}

// hide menu
function hM(id)
{
    timeoutID = setTimeout('menurevert(\'' + id + '\')', revertTime);
    navtimeoutID = setTimeout('menurevertSelected(\'' + id + '\')', revertTime);
}

// highlight level 2 navigation & hide intersecting form objects
function selectMenu(id)
{
    if (topNav[id].length == 0)
    {
        tipObj = gE('overDiv');
        tltp = gE('overDiv');
        detectCollisions('select', 1);
        detectCollisions('iframe', 1);
        hE(tltp);
    }
    stopmenurevert();
    for (var i = 1; i < topNav.length; i++)
    {
        colorChange(i, 'subItem');
    }
    colorChange(id, 'subItemSelected');
    if (selected != id && selected != null)
    {
        colorChange(selected, 'subItemState');
    }
}

function colorChange(id, color)
{
    docObj = gE("sub"+id);
    docObj.className=color;
}

function stopmenurevert() 
{
    clearTimeout(timeoutID);
    clearTimeout(navtimeoutID);
}

// hide level 3 dropdown
function menurevert(id) 
{
    detectCollisions('select', 1);
    detectCollisions('iframe', 1);
    hE(tltp);
}

// restore the previously selected navigation item
function menurevertSelected(id) 
{
    colorChange(id, 'subItem');
    if (selected != null)
    {
        colorChange(selected, 'subItemSelected');
    }
}
