/***********************************************
* Switch Menu script- by Martial B of http://getElementById.com/
* Modified by Dynamic Drive for format & NS4/IE4 compatibility
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/

var persistmenu="yes" //"yes" or "no". Make sure each SPAN content contains an incrementing ID starting at 1 (id="sub1", id="sub2", etc)
var persisttype="sitewide" //enter "sitewide" for menu to persist across site, "local" for this page only

if (document.getElementById){ //DynamicDrive.com change
	document.write('<style type="text/css">\n')
	document.write('.submenu{display: none;}\n')
	document.write('</style>\n')
}

function getByClass(options) {
	var options = typeof options === "object" ? options : { className: options },
	    startNode = options.startNode || document,
		elements = startNode.getElementsByTagName(options.tagName || "*");
	options.className = typeof options.className === "string" ? options.className : options.className.join("(\\s|$)|(\\s|^)");
	var re = new RegExp("(\\s|^)(" + options.className + ")(\\s|$)"),
		output = [];
	for (var i = 0, element; element = elements[i]; i++)
		if (re.test(element.className))
			output.push(element);
	return output;
}

function SwitchMenu(obj){
	var div = document.getElementById("masterdiv"),
		spans = div ? getByClass({ className: "submenu", startNode: div, tagName: "span" }) : [],
		submenus = getByClass(obj);
	for (var i = 0, span; span = spans[i]; i++)
		span.style.display = "none";
	for (var i = 0, submenu; submenu = submenus[i]; i++) {
		var textContent = submenu.innerText || submenu.textContent;
		if (textContent && /[^\s]/.test(textContent))
			submenu.style.display = "block";
	}
}

function get_cookie(Name) { 
var search = Name + "=", returnvalue = "";
if (document.cookie.length > 0) {
offset = document.cookie.indexOf(search)
if (offset != -1) { 
offset += search.length
end = document.cookie.indexOf(";", offset);
if (end == -1) end = document.cookie.length;
returnvalue=unescape(document.cookie.substring(offset, end))
}
}
return returnvalue;
}

var addListener = (function (){if (window.addEventListener){return function(el,type,fn){el.addEventListener(type,fn,false);};}else if(window.attachEvent){return function(el,type,fn){var f=function(){fn.call(el,window.event);};el.attachEvent("on"+type,f);};}else{return function(el,type,fn){el["on"+type]=fn;};}})();

addListener(window, "load", function() {
	// load menu path from cookie and display proper submenus
	if (persistmenu=="yes"){
		var cookiename=(persisttype=="sitewide")? "switchmenu" : window.location.pathname,
			cookievalue=get_cookie(cookiename);
		if (cookievalue!="") {
			arrowDirectionFromCookie(cookievalue);
			SwitchMenu(cookievalue);
		}
	}
});


if (persistmenu=="yes" && document.getElementById)
	addListener(window, "unload", function() {
		// save menu path to cookie
		var inc=1,
		    blockid = "",
		    menus;

		do {
			var className = "sub" + inc++;
			menus = getByClass(className);
			for (var i = 0, menu; menu = menus[i]; i++)
				if (menu.style.display === "block") {
					blockid = className;
					break;
				}
		} while (menus.length > 0);

		var cookiename=(persisttype=="sitewide")? "switchmenu" : window.location.pathname,
		    cookievalue=(persisttype=="sitewide")? blockid+";path=/" : blockid;
		document.cookie=cookiename+"="+cookievalue
	});

function arrowDown(divThis){
	var divThisSaved = divThis.className,
		el,
		i = 0;
	while (el = document.getElementById("arrow_down" + i++))
		el.className = "menu3";
	
	divThis.className = divThisSaved === "menu3" ? "menu3_link" : "menu3";
}

function arrowDirectionFromCookie(subCatName){
	switch (subCatName) {
	case 'sub3': document.getElementById("arrow_down0").className='menu3_link'; break;
	case 'sub4': document.getElementById("arrow_down1").className='menu3_link'; break;
	case 'sub6': document.getElementById("arrow_down2").className='menu3_link'; break;
	case 'sub7': document.getElementById("arrow_down3").className='menu3_link'; break;
	case 'sub9': document.getElementById("arrow_down4").className='menu3_link'; break;
	case 'sub10': document.getElementById("arrow_down5").className='menu3_link'; break;
	case 'sub11': document.getElementById("arrow_down6").className='menu3_link'; break;
	case 'sub13': document.getElementById("arrow_down7").className='menu3_link'; break;
	case 'sub14': document.getElementById("arrow_down8").className='menu3_link'; break;
	case 'sub15': document.getElementById("arrow_down9").className='menu3_link'; break;
	case 'sub16': document.getElementById("arrow_down10").className='menu3_link'; break;
	case 'sub18': document.getElementById("arrow_down11").className='menu3_link'; break;
	case 'sub19': document.getElementById("arrow_down12").className='menu3_link'; break;
	case 'sub20': document.getElementById("arrow_down13").className='menu3_link'; break;
	case 'sub21': document.getElementById("arrow_down14").className='menu3_link'; break;
	case 'sub27': document.getElementById("arrow_down15").className='menu3_link'; break;
	case 'sub28': document.getElementById("arrow_down16").className='menu3_link'; break;
	}
}

