function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}

addLoadEvent(prepareNav);
addLoadEvent(navHighlight);
addLoadEvent(setTopNavClass);

function navHighlight() {
    var keys = ['financial_sec', 'defense', 'public_sector', 'transportation','telecommunications', 'training', 'housing_sector', 
                'cyber_sec', 'ops_support', 'test_eval', 'portal_services', 'ipmo', 'outreach','facilities',
                'about_intro','about_glance', 'about_message', 'about_leadership', 'about_history', 'about_press', 'about_location',
                'cc_openings', 'cc_applyonline', 'cc_benefits', 'cc_lifeatmaden', 'cc_meetemployees','cc_generalinfo','career_center',
                'news_recent', 'news_archives', 'news_press', 'market_sectors','housing_sector','services_financial',
                'services_overview','services_consulting','services_dbsolutions','services_netsolutions','services_security','it_','ops_support','test_eval'];
   
    var sections = {financial_sec:'financial_sector', defense:'defense', public_sector:'public_sector',
         transportation:'transportation', training:'training', telecommunications:'telecommunications',housing_sec:'housing_sector', cyber_sec:'cyber_security',
         it_:'it_solutions', ops_support:'ops_support', test_eval:'test_eval',ipmo:'ipmo',outreach:'outreach',portal_services:'portal_services',
         facilities:'facilities', about_intro:'about_intro', about_glance:'about_glance',
         about_message:'about_message', about_leadership:'about_leadership',about_history:'about_history',
         about_press:'about_press', about_location:'about_location',cc_openings:'cc_openings', cc_applyonline:'cc_applyonline',
         cc_benefits:'cc_benefits', cc_lifeatmaden:'cc_lifeatmaden', cc_generalinfo:'cc_generalinfo',cc_meetemployees:'cc_meetemployees',
         career_center:'career_center', news_recent:'news_recent', news_archives:'news_archives',news_press:'news_press',
         market_sectors:'market_sectors',housing_sector:'housing_sector',services_overview:'services_overview',
         services_financial:'services_financial',services_consulting:'services_financial',services_dbsolutions:'services_financial',
		 services_netsolutions:'services_financial',services_security:'services_financial',it_:'it_solutions',ops_support:'ipmo',test_eval:'ipmo'};

            
    currentPath = location.pathname;
    //set 'activeDrop' class on yellow sub nav
    for (key in keys) {
        if (currentPath.indexOf(keys[key]) != -1) {
            document.getElementById(sections[keys[key]]).className = "activeDrop";
        }
    }  
}

var topNavLiId = '';
function setTopNavClass() {
    //set 'activeTopNav' class on topNav
    topNavLiId = document.getElementById('bodyNav').className;
    document.getElementById(topNavLiId).className = "activeTopNav";
    
}

function prepareNav(){
	var nav = document.getElementById("headerNav");
	var navElems = nav.getElementsByTagName("li");
	
	for (var ne in navElems){
		if (navElems[ne].parentNode == nav){
			navElems[ne].onmouseover = function() {toggleMenu(this)};
			navElems[ne].onmouseout = function() {toggleMenu(this)};
		}
	}
}

function toggleMenu(src){
	var hasChildren = (src.getElementsByTagName("li").length > 0)? true : false;
	
	if(src && hasChildren){
	    var activeClassName = src.id + "activeDrop activeDrop";
		var activeCheck = (src.className == activeClassName)? true : false;
		src.className = (activeCheck)? "" : activeClassName;	
		if (src.className == "" && topNavLiId == src.id) { //check if current nav
            document.getElementById(topNavLiId).className = "activeTopNav";
		}
		
		var drop = src.getElementsByTagName("ul")[0];
		drop.className = (activeCheck)? "" : "showDrop";
	}
}
