var NAV_STATE_SET = 0;
var CURRENT_NAV = "";
var currentRollOver = null;
var browser = getBrowserType();

function getBrowserType()
{
	this.ie = document.all ? 1 : 0
	this.ns4 = document.layers ? 1 : 0
	this.dom = document.getElementById ? 1 : 0
	return this;
}

function navRollOver(nav,divSpacer)
{

	var navRef = null;
	if (browser.dom) navRef = document.getElementById(nav);
	var rollObject = new Array();
	rollObject[0] = new rollOverObject("self","navltgrey","navred");
	rollObject[1] =  new rollOverObject("parent","bgwhite","bgltgreen");
	for (c=0;c<rollObject.length;c++)
	{
		var thisObj = rollObject[c];
		for (thisKey in thisObj)
		{
			if (thisObj[thisKey] == "self")
			{

				if (thisObj["offClass"] == nav.className) 
				{
					nav.className = thisObj["onClass"];
					return;
				}
				if (thisObj["onClass"] == nav.className)
				{
					 nav.className = thisObj["offClass"]; 
					 return;
				}
			} else 	{
				if ((browser.dom) && (thisObj["offClass"] == nav.parentNode.className)) 
				{
					nav.parentNode.className = thisObj["onClass"];
					nav.parentNode.previousSibling.className = thisObj["onClass"];						
					return;
				}
				if ((browser.dom) && (thisObj["onClass"] == nav.parentNode.className)) 
				{
					nav.parentNode.className = thisObj["offClass"];
					nav.parentNode.previousSibling.className = thisObj["offClass"];												
					return;
				}
			}
		}
	}
}
	
	
function rollOverObject(owner,onClass,offClass)
{
	this.owner = owner;
	this.onClass = onClass;
	this.offClass = offClass;
	return this;
}
	

function navShow2 (nav) {
		var navRef;
	 	if (browser.dom)
		{
			navRef = document.getElementById(nav);
		} else {
			navRef = eval(document.layers[nav]);
		}
		if (! navRef) {
			return false;
		}
		navRef.style.display = "";// : navRef.visibility = "hide";
		return true;
	
}


function setNavState2()
{
	if (NAV_STATE_SET) return;
	NAV_STATE_SET = 1;
	var sectionName;
	
	// look for a try to show two combined levels of dir
	sectionName = getSectionName2(0);
	if (! navShow2(sectionName)) {
	
		// else, look for and try to show top level dir
		sectionName = getSectionName2(1);
		if (! navShow2(sectionName)) {
		
			// else, look for and try to show second level dir
			sectionName = getSectionName2(2);
			navShow2(sectionName);
		}
	}
	
	
	var linkPath = getHighlightName();

	var linkNode;
	if (browser.dom)
	{
		linkNode = document.getElementById(linkPath);
	} else {
		linkNode = eval(document.layers[linkPath]);
		if (! linkNode) linkNode = document.layers[CURRENT_NAV.navName].layers[linkPath];
	}
	
	if (linkNode) {
		if (linkNode.name == "childNode") {
			if (browser.dom)
			{	
				linkNode = document.getElementById(linkNode.parent);
			} else {
				linkNode = eval(document.layers[linkNode.parent]);
				if (! linkNode) linkNode = document.layers[CURRENT_NAV.navName].layers[linkNode.parent];
			}
		}
		
		navRollOver(linkNode);
		// Show child node if it exists
		navShow2(linkNode.id+"_childNode");
	}

	
}


function getSectionName2(depth)
{
	// MAKE REGEX
	var serverURL = new String(document.location);
	var lBound = serverURL.indexOf("/content/") + 9;
	var dest1 = serverURL.substring(lBound);
	var rBound = dest1.indexOf("/");

	var dirName;	
	if (depth == 0) {
		dirName = dest1.substring(0,rBound);
		var dest2 = dest1.substring(rBound+1);
		rBound = dest2.indexOf("/");
		dirName = dirName + "___" + dest2.substring(0,rBound);
	} else if (depth == 1) {
		dirName = dest1.substring(0,rBound);
	} else {
		var dest2 = dest1.substring(rBound+1);
		rBound = dest2.indexOf("/");
		dirName = dest2.substring(0,rBound);
	}
	return dirName;

}

function getHighlightName() {
	// MAKE REGEX
	var serverURL = new String(document.location);
	var lBound = serverURL.indexOf("/content/");
	var pathName = serverURL.substring(lBound);
	return pathName;

}


