function preloadNavImage(img)
{
	var i = new Image()
    i.src = '/site/images/header/'+img+'_over.gif';
}

function preloadNavImages()
{
    var sections = new Array(
        'healthcare', 
        'fiscal', 
        'liability', 
        'marketing', 
        'prodev', 
        'specialoffers', 
        'contribute', 
        'publications', 
        'events'
    ); 
    
    for(i=0; i<sections.length; i++)
    {
        preloadNavImage(sections[i]);    	
    }
}

function rolloverNavImage(image)
{
	$('nav_image_'+image).src = '/site/images/header/'+image+'_over.gif';
}

function rolloverRestore(image)
{
    $('nav_image_'+image).src = '/site/images/header/'+image+'.gif';
}

showDelay = new Array();
hideDelay = new Array();
menuDelay = 75;

function loadMenus() 
{
    registerMenu('healthcare',    60);
    registerMenu('fiscal',        130);
    registerMenu('liability',     200);
    registerMenu('marketing',     270);
    registerMenu('prodev',        340);
    registerMenu('specialoffers', 410);
    registerMenu('contribute',    550);
    registerMenu('publications',  620);
    registerMenu('events',        690);
}

function toggleSubmenu(sub_menu)
{
    var menus = document.getElementsByClassName('subnavMenuDIV');
    for(i=0; i<menus.length; i++)
    {
    	if($(menus[i].style.display != 'none'))
        {
        	Element.hide($(menus[i]));
        }
    }

    Element.show(sub_menu);
}

function registerMenu(section, offset)
{
    var nav_element = 'nav_'+section;
    var menu_element = 'menu_'+section;
    
    Event.observe(nav_element,  'mouseover', function() { showMenu(menu_element) } );
    Event.observe(nav_element,  'mouseout',  function() { hideMenu(menu_element) } );
    Event.observe(menu_element, 'mouseover', function() { showMenu(menu_element); } );   
    Event.observe(menu_element, 'mouseout',  function() { hideMenu(menu_element) } );    
    
    $(menu_element).style.left = '' + offset + 'px';
}

function showMenu(menu, bypassTimeout)
{
    if(undefined !== window.hideDelay[menu]) clearTimeout(hideDelay[menu]);
    
    if(!bypassTimeout)
    {
        showDelay[menu] = setTimeout("showMenu('"+menu+"', true)", menuDelay);
        return;
    }
    
    if($(menu).style.display != 'none')
    {
    	Element.show(menu);
    }
    else
    {
        new Effect.BlindDown(menu, {duration:.5});	
    }
}

function hideMenu(menu, bypassTimeout, fromMenu)
{
    if(undefined !== window.hideDelay[menu]) clearTimeout(hideDelay[menu]);
    if(undefined !== window.showDelay[menu]) clearTimeout(showDelay[menu]);

    if(!bypassTimeout)
    {
        hideDelay[menu] = setTimeout("hideMenu('"+menu+"', true)", menuDelay);
        return;
    }
    
    new Effect.BlindUp(menu, {duration:0});
}
