var primarypath = "/images";
var leftpath    = "/images";

	// Ultimate client-side JavaScript client sniff. Version 3.03
// (C) Netscape Communications 1999-2001.  Permission granted to reuse and distribute.

    // convert all characters to lowercase to simplify testing
    var userAgent=navigator.userAgent.toLowerCase();

    // *** BROWSER VERSION ***
    // Note: On IE5, these return 4, so use is_ie5up to detect IE5.
    var is_major = parseInt(navigator.appVersion, "10");
    var is_minor = parseFloat(navigator.appVersion, "10");

    // Note: Opera and WebTV spoof Navigator.  We do strict client detection.
    // If you want to allow spoofing, take out the tests for opera and webtv.
    var is_nav  = ((userAgent.indexOf('mozilla')!=-1) && (userAgent.indexOf('spoofer')==-1) && (userAgent.indexOf('compatible') == -1) && (userAgent.indexOf('opera')==-1) && (userAgent.indexOf('webtv')==-1) && (userAgent.indexOf('hotjava')==-1));
    var is_nav2 = (is_nav && (is_major == 2));
    var is_nav3 = (is_nav && (is_major == 3));
    var is_nav4 = (is_nav && (is_major == 4));
    var is_nav4up = (is_nav && (is_major >= 4));
    var is_nav474 = (is_nav && (is_minor == 4.74));
    var is_nav479 = (is_nav && (is_minor == 4.79));
    var is_navonly      = (is_nav && ((userAgent.indexOf(";nav") != -1) ||
						  (userAgent.indexOf("; nav") != -1)) );
    var is_nav6 = (is_nav && (is_major == 5));//this would return true for nn7.1 :(
    var is_nav6up = (is_nav && (is_major >= 5));
    var is_nav7 = ( (is_nav6) && (userAgent.indexOf("7.1") != -1));

    var is_netscape = ( (userAgent.indexOf("netscape") != -1));
    var is_nn7_1 = ( (is_netscape) && (userAgent.indexOf("7.1") != -1));

    var is_gecko = (userAgent.indexOf('gecko') != -1);
	var is_safari = (userAgent.indexOf('safari') != -1);
	var is_firefox = (userAgent.indexOf('firefox') != -1 || userAgent.indexOf('bonecho') != -1);
	var is_firefox1_0 = (is_firefox && (userAgent.indexOf("firefox/1.0")!= -1));

	var is_moz = (userAgent.indexOf('mozilla') != -1);
	var is_moz1_5 = ((is_moz) && (userAgent.indexOf("rv:1.5") != -1));
	var is_moz1_6 = ((is_moz) && (userAgent.indexOf("rv:1.6") != -1));
	var is_moz1_6up = ((is_moz) && (!is_moz1_5));
	var is_moz1_7 = ((is_moz) && (userAgent.indexOf("rv:1.7") != -1));

    var is_ie     = ((userAgent.indexOf("msie") != -1) && (userAgent.indexOf("opera") == -1));
    var is_ie3    = (is_ie && (is_major < 4));
    var is_ie4    = (is_ie && (is_major == 4) && (userAgent.indexOf("msie 4")!=-1) );
    var is_ie4up  = (is_ie && (is_major >= 4));
    var is_ie5    = (is_ie && (is_major == 4) && (userAgent.indexOf("msie 5.0")!=-1) );
    var is_ie5_5  = (is_ie && (is_major == 4) && (userAgent.indexOf("msie 5.5") !=-1));
    var is_ie5up  = (is_ie && !is_ie3 && !is_ie4);
    var is_ie5_5up =(is_ie && !is_ie3 && !is_ie4 && !is_ie5);
    var is_ie6    = (is_ie && (is_major == 4) && (userAgent.indexOf("msie 6.")!=-1) );
    var is_ie6up  = (is_ie && !is_ie3 && !is_ie4 && !is_ie5 && !is_ie5_5);
	var is_ie7    = (is_ie && (is_major == 4) && (userAgent.indexOf("msie 7.0")!=-1) );
	// KNOWN BUG: On AOL4, returns false if IE3 is embedded browser
    // or if this is the first browser window opened.  Thus the
    // variables is_aol, is_aol3, and is_aol4 aren't 100% reliable.
    var is_aol   = (userAgent.indexOf("aol") != -1);
    var is_aol3  = (is_aol && is_ie3);
    var is_aol4  = (is_aol && is_ie4);
    var is_aol5  = (userAgent.indexOf("aol 5") != -1);
    var is_aol6  = (userAgent.indexOf("aol 6") != -1);

    var is_opera = (userAgent.indexOf("opera") != -1);
    var is_opera2 = (userAgent.indexOf("opera 2") != -1 || userAgent.indexOf("opera/2") != -1);
    var is_opera3 = (userAgent.indexOf("opera 3") != -1 || userAgent.indexOf("opera/3") != -1);
    var is_opera4 = (userAgent.indexOf("opera 4") != -1 || userAgent.indexOf("opera/4") != -1);
    var is_opera5 = (userAgent.indexOf("opera 5") != -1 || userAgent.indexOf("opera/5") != -1);
    var is_opera7 = (userAgent.indexOf("opera 7.01") != -1 || userAgent.indexOf("opera/7.01") != -1);
    var is_opera7_01 = (userAgent.indexOf("opera 7.01") != -1 || userAgent.indexOf("opera/7.01") != -1);
    var is_opera7_23 = (userAgent.indexOf("opera 7.23") != -1 || userAgent.indexOf("opera/7.23") != -1);
    var is_opera8_5 = (userAgent.indexOf("opera 8.50") != -1 || userAgent.indexOf("opera/8.50") != -1);
    var is_opera5up = (is_opera && !is_opera2 && !is_opera3 && !is_opera4);

    var is_webtv = (userAgent.indexOf("webtv") != -1);

    var is_TVNavigator = ((userAgent.indexOf("navio") != -1) || (userAgent.indexOf("navio_aoltv") != -1));
    var is_AOLTV = is_TVNavigator;

    // *** JAVASCRIPT VERSION CHECK ***
    var is_js;
    if(is_nav2 || is_ie3) { is_js = 1.0; }
    else if(is_nav3) { is_js = 1.1; }
    else if(is_opera5up) { is_js = 1.3; }
    else if(is_opera) { is_js = 1.1; }
    else if((is_nav4 && (is_minor <= 4.05)) || is_ie4) { is_js = 1.2; }
    else if((is_nav4 && (is_minor > 4.05)) || is_ie5) { is_js = 1.3; }
    else if(is_nav6 || is_gecko) { is_js = 1.5; }
    // NOTE: In the future, update this code when newer versions of JS
    // are released. For now, we try to provide some upward compatibility
    // so that future versions of Nav and IE will show they are at
    // *least* JS 1.x capable. Always check for JS version compatibility
    // with > or >=.
    else if(is_nav6up) { is_js = 1.5; }
    // NOTE: ie5up on mac is 1.4
    else if(is_ie5up) { is_js = 1.3; }

    // HACK: no idea for other browsers; always check for JS version with > or >=
    else { is_js = 0.0; }

    // *** PLATFORM ***
    var is_win   = ( (userAgent.indexOf("win")!=-1) || (userAgent.indexOf("16bit")!=-1) );
    var is_win95 = ((userAgent.indexOf("win95")!=-1) || (userAgent.indexOf("windows 95")!=-1));

    var is_win16 = ((userAgent.indexOf("win16")!=-1) ||
		       (userAgent.indexOf("16bit")!=-1) || (userAgent.indexOf("windows 3.1")!=-1) ||
		       (userAgent.indexOf("windows 16-bit")!=-1) );

    var is_win31 = ((userAgent.indexOf("windows 3.1")!=-1) || (userAgent.indexOf("win16")!=-1) ||
				    (userAgent.indexOf("windows 16-bit")!=-1));

    var is_winme = ((userAgent.indexOf("win 9x 4.90")!=-1));
    var is_win2k = ((userAgent.indexOf("windows nt 5.0")!=-1));

    // NOTE: Reliable detection of Win98 may not be possible. It appears that:
    //       - On Nav 4.x and before you'll get plain "Windows" in userAgent.
    //       - On Mercury client, the 32-bit version will return "Win98", but
    //		 the 16-bit version running on Win98 will still return "Win95".
    var is_win98 = ((userAgent.indexOf("win98")!=-1) || (userAgent.indexOf("windows 98")!=-1));
    var is_winnt = ((userAgent.indexOf("winnt")!=-1) || (userAgent.indexOf("windows nt")!=-1));
    var is_win32 = (is_win95 || is_winnt || is_win98 ||
				    ((is_major >= 4) && (navigator.platform == "Win32")) ||
				    (userAgent.indexOf("win32")!=-1) || (userAgent.indexOf("32bit")!=-1));

    var is_mac    = (userAgent.indexOf("mac")!=-1);

    var is_linux = (userAgent.indexOf("linux")!=-1);
    // hack ie5 js version for mac
    if(is_mac && is_ie5up) { is_js = 1.4; }


// ----------- //


	//to pull in correct style sheet browser/platform
	// start with highest browser versions, since some are checks for >= version.
	/*
	if  (is_mac) {
		if (is_nav6up) {
			document.write("<link rel=\"stylesheet\" href=\"/css/mac-net6.css\" TYPE=\"text/css\" />");
		 } else if (is_nav4up) {
			document.write("<link rel=\"stylesheet\" href=\"/css/mac-net4.css\" TYPE=\"text/css\" />");
		 } else if (is_ie4up) {
			document.write("<link rel=\"stylesheet\" href=\"/css/mac-ie.css\" type=\"text/css\" />");
			var bVer = "MacIE";
		}
	} else if (is_win) {
		if (is_nav6up) {
			document.write("<link rel=\"stylesheet\" href=\"/css/pc-net6.css\" TYPE=\"text/css\" />");
		} else if (is_nav479) {
			document.write("<link rel=\"stylesheet\" href=\"/css/pc-net479.css\" TYPE=\"text/css\" />");
		} else if  (is_nav474) {
			document.write("<link rel=\"stylesheet\" href=\"/css/pc-net474.css\" TYPE=\"text/css\" />");
		} else if (is_nav4up) {
			document.write("<link rel=\"stylesheet\" href=\"/css/pc-net.css\" TYPE=\"text/css\" />");
		} else if (is_ie6) {
			document.write("<link rel=\"stylesheet\" href=\"/css/pc-ie6.css\" TYPE=\"text/css\" />");
		} else if (is_ie5up) {
			document.write("<link rel=\"stylesheet\" href=\"/css/pc.css\" type=\"text/css\" />");
		}
	} else if (is_linux) {
		if (is_gecko) {
			document.write("<link rel=\"stylesheet\" href=\"/css/linux.css\" type=\"text/css\" />");
		}
	} else {
		document.write("<link rel=\"stylesheet\" href=\"/css/pc.css\" type=\"text/css\" />");
	} 
	*/	var alreadyrunflag=0; //flag to indicate whether target function has already been run

if(document.addEventListener) {
  document.addEventListener("DOMContentLoaded", function(){alreadyrunflag=1; onDOMLoad();}, false);
} else if(document.all && !window.opera){
  document.write('<script type="text/javascript" id="contentloadtag" defer="defer" src="javascript:void(0)"><\/script>');
  var contentloadtag = document.getElementById("contentloadtag");
  contentloadtag.onreadystatechange=function(){
    if (this.readyState=="complete"){
      alreadyrunflag=1;
      onDOMLoad();
    }
  };
}

//Put all javascript that manipulates the page here
function onDOMLoad() {
	try {
		ActivateTabOnLoad(); // This is for CE Detail
	} catch(e) {}
	CreatePrimaryNav();
	try {
		CreateUtilityNav();
		
		
		AssignPrimarySubNavs();
		if(getSection(getCurrentPage()) != "--") {
			setCurrentSection();
			createSecondaryNavigation(getTranslatedSection(getSection(getCurrentPage())));
			setCurrentSubSection(pathToArray(getCurrentPage()));
		}
	} catch(e) {}


	try {
		checkViewMoreLink();
		SetChildDivsCorrectly(); // This is for CE Detail
	} catch (e) {
		// Method only exists in consumers section
	}
	try {
		setup_HomePageSiteMap();
		setup_homePageAdSpace();
	}
	catch(e) {}
	try {
	//	preloadImages();
	}
	catch(e) {}
}

var UtilityNavLinks = [
     {id:"navUtil-home", 		alt:"Home", 			href:"http://delphi.com/", 					src:"navUtil-home-off.gif"},
	 {id:"navUtil-contactUs", 	alt:"Contact Us", 		href:"http://delphi.com/contact/", 			src:"navUtil-contactUs-off.gif"},
	 {id:"navUtil-siteMap",		alt:"Site Map", 		href:"http://delphi.com/sitemap/", 		src:"navUtil-siteMap-off.gif"},
	 {id:"navUtil-reorg", 		alt:"Reorganization", 	href:"http://delphi.com/reorganization/",	src:"navUtil-reorg-off.gif"},
	 {id:"navUtil-suppliers", 	alt:"Suppliers", 		href:"http://delphi.com/suppliers/",		src:"navUtil-suppliers-off.gif"}
];

function CreateUtilityNav() {
	var utilityNav = document.getElementById("utilityNav");
	if(utilityNav && UtilityNavLinks) {
		//search box
		var searchBox = document.getElementById("siteFunctions");

		//check for zoyto non-standard utility nav and abort
		if(searchBox.getElementsByTagName("table").length > 0) return;

		var searchBoxClone = searchBox.cloneNode(true);
		//break
		var breakTag = utilityNav.getElementsByTagName("br")[0];

		//Create Generic Anchor
		var navLink = document.createElement("a");
		var image = document.createElement("img");
		navLink.appendChild(image);

		//clear out utilityNav
		utilityNav.innerHTML = "";
		utilityNav.appendChild(searchBoxClone);
		searchBoxClone.onfocus = function() { /*alert('i');*/ }; //ClearSearchField
		utilityNav.appendChild(breakTag);
		for(var i=0; i<=UtilityNavLinks.length-1; i++) {
			var navLinkCopy = navLink.cloneNode(false);
			var navLinkImage = document.createElement("img");

			navLinkImage.id  = UtilityNavLinks[i].id;
			navLinkImage.alt = UtilityNavLinks[i].alt;

			if(primarypath.indexOf("http") != -1) {
				imgPath = primarypath + "/" + UtilityNavLinks[i].src;
			} else {
				imgPath = getHostPath()  + "/images/" + UtilityNavLinks[i].src;
			}
			navLinkImage.src = imgPath;
			if(i>0) { navLinkImage.style.paddingLeft = "8px"; }
			navLinkImage.onmouseover = function() { this.src = this.src.replace("-off", "-on"); };
			navLinkImage.onmouseout  = function() { this.src = this.src.replace("-on", "-off"); };
			navLinkCopy.href = UtilityNavLinks[i].href;
			navLinkCopy.appendChild(navLinkImage);
			navLinkCopy.style.visibility = "visible";

			utilityNav.insertBefore(navLinkCopy, breakTag);
		}

	}
}
window.onload=function(){
  setTimeout("if(!alreadyrunflag) onDOMLoad()", 0);
  	/* TODO: do this in CSS.
  	if(is_safari){
		document.getElementById("searchSite_TextBox").style.verticalAlign = "top";
		document.getElementById("searchSite_Go").style.marginTop = "0px";
		document.getElementById("searchSite_Form").style.paddingTop = "7px";
		document.getElementById("utilityNav").style.borderBottom = "1px solid #FFFFFF";
	}
	*/
	assignEventsToNav();//this is for leftnav
};

function getImageName(image) {
	var gifPath = image.src.split("/");
	var gifName =  gifPath[gifPath.length-1];
	return gifName;
}

function getPrimaryPath() {
	var path = primarypath;
	if (weWereSpidered()) {
		var urlpath = window.location.pathname;
		var index = urlpath.indexOf(".com");
		if ( index > -1) {
			path = urlpath.substring(0, (index + 4)) + primarypath;
		}
	}
	return path;
}
function UtilityHover(obj, from, to) {
	 obj.src = obj.src.replace(from, to);
}
function UtilityHoverOn(obj) { UtilityHover(obj, "Off", "On"); }
function UtilityHoverOff(obj) { UtilityHover(obj, "On", "Off"); }

function showDiv(id) {
	var div = document.getElementById(id);
	div.style.display = "block";
}

function hideDiv(id) {
	var div = document.getElementById(id);
	div.style.display = "none";
}

function submitForm(id) {
	var form = document.getElementById(id);
	form.submit();
}

function findPosX(obj)
{
	var curleft = 0;
	if(obj.offsetParent)
	{
		while(obj.offsetParent)
		{
			curleft += obj.offsetLeft;
			obj = obj.offsetParent;
		}
	}
	else if(obj.x) {
		curleft += obj.x;
	}
	return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
	if(obj.offsetParent)
	{
		while(obj.offsetParent)
		{
			curtop += obj.offsetTop;
			obj = obj.offsetParent;
		}
	}
	else if(obj.y) {
		curtop += obj.y;
	}
	return curtop;
}

function popup(url, width, height, features) {
	var newWinWidth = width;
	var newWinHeight = height;
	var newWinTop = (screen.availHeight/2) - (newWinHeight/2);
	var newWinLeft = (screen.availWidth/2) - (newWinWidth/2);
	var newWin = window.open(url, "newWin",
							 "top="+ newWinTop +
							 ",left="+ newWinLeft +
							 ",width="+ newWinWidth +
							 ",height="+ newWinHeight +
							 "," + features);
	newWin.focus();
}

function directoryGo(newURL) {
	    document.location.href = newURL;
	}
var hasFocusedField = false;
function ClearSearchField(searchField) {
	if(hasFocusedField == false) {
		searchField.value == "Search" ? searchField.value = "" : null;
		hasFocusedField = true;
	}
}
function openSmallerPopup(url, name, pixelsSmaller) {
	var t,l,h,pH,w,pW,s;
	s=pixelsSmaller;
	if(window.innerWidth){
		w=window.innerWidth;h=window.innerHeight;
	}else if(document.documentElement && document.documentElement.clientWidth){
		w=document.documentElement.clientWidth;h=document.documentElement.clientHeight;
	}else if(document.body){
		w=document.body.clientWidth;h=document.body.clientHeight;
	}
	pH=(h-s);
	pW=(w-s);
	t=(h-pH)/2;
	l=(w-pW)/2;
	var newWin = window.open(url,name, "width="+pW+",height="+pH+",top="+t+",left="+l+",toolbar=no,resizable=yes, scrollbars=yes,location=yes");
	newWin.focus();

}
function OpenInteractiveDemo(productName) {
	switch(productName.toLowerCase()) {
		case "nav300":
			window.open('/static/demo_NAV300/index.html','NAV300Demo','width=800,height=600,toolbar=0,resizable=0,scrollbars=no');
		break;

		case "nav200":
			window.open('/static/NAV200_demo/Nav200_Intro.swf','NAV200Demo','width=800,height=505,toolbar=0,resizable=0,scrollbars=no');
		break;

	}
}
function getLeftPath() {
	var path = leftpath;
	if (weWereSpidered()) {
		var urlpath = window.location.pathname;
		var index = urlpath.indexOf(".com");
		if ( index > -1) {
			path = urlpath.substring(0, (index + 4)) + leftpath;
		}
	}
	return path;
}

//FOR SPIDERING: Assumes .com, for now...
function getHostPath() {
	var path;
	var host;
	if (weWereSpidered()) {
		host = window.location.pathname;
		var index = host.indexOf(".com");
		if ( index > -1) {
			path = host.substring(0, (index + 4));
		}
	} else {
		var protocol = window.location.protocol;
		host = window.location.host;
		path = protocol + "//" + host;
	}
	return path;
}

//FOR SPIDERING: for the spider to work, these need to end in index.html
function getLandingPage() {
	var path;
	if (weWereSpidered()) {
		path='index.html';
	}
	return path;
}

//FOR SPIDERING:
function weWereSpidered() {
	var spidered = false;
	var protocol = window.location.protocol;
	if (protocol == "file:") { //we've been spidered and we're now a flat file structure
		spidered = true;
	}
	return spidered;
}

	/*************************************
  These are common left-nav related functions
***************************************/
function DoBackgroundHover() {
	var thisLink = this.getElementsByTagName("a").item(0);	
	if(thisLink) {
		var className = this.getAttribute("class") ? this.getAttribute("class") : this.getAttribute("className");
		if(className.indexOf("FirstLevel_Header") == -1 && className.indexOf("SecondLevel_Logo_Opening") == -1 && className.indexOf("SecondLevel_Logo") == -1) {
			if(thisLink != document.location.href) { 
				if(className.indexOf("SecondLevel") != -1 && this.getElementsByTagName("div").item(2).className.indexOf("hover") == -1 && this.getElementsByTagName("div").item(2).className != "on") {
					
					this.getElementsByTagName("div").item(2).className = "hover";
				}
				else if(className.indexOf("SecondLevel") == -1) {
					this.getElementsByTagName("div").item(2).className = "hover";
				}
				this.getElementsByTagName("div").item(1).style.visibility = "hidden";
			}
		}
	}
}
function DoBackgroundOff() {
	var thisLink = this.getElementsByTagName("a").item(0);
	if(thisLink) {
		var className = this.getAttribute("class") ? this.getAttribute("class") : this.getAttribute("className");
			if(className.indexOf("FirstLevel_") == -1 && className.indexOf("Logo") == -1 && thisLink != document.location.href) {
				if(this.getElementsByTagName("div").item(2).className != "on") {
					this.getElementsByTagName("div").item(2).className = "off";
				}
				this.getElementsByTagName("div").item(1).style.visibility = "visible";
			}
	}
}

function adjustLeftNavPlacement() {
	var leftNav = document.getElementById("leftNav");	
	if(leftNav) {
		if( (is_nav6up && is_minor <=2) || (is_nav && is_major == 7  && is_minor <= 1) || (is_nav6up && is_minor == 5 && is_major == 5) || (is_firefox1_0)) {
			var items = leftNav.getElementsByTagName("div");
			var foundThisPage = false;
			var leftNavItems = leftNav.childNodes;
			
			if (!is_safari) {
				for(i=0; i<=items.length-1; i++) {
					
					if(items.item(i).getElementsByTagName("div")[0] && items.item(i).getElementsByTagName("div")[1] && items.item(i).getElementsByTagName("div")[2]) {
						var parentXPos = findPosX(items.item(i)) + "px";
						var parentYPos = findPosY(items.item(i)) + "px";
						items.item(i).getElementsByTagName("div")[0].style.left = parentXPos;
						items.item(i).getElementsByTagName("div")[0].style.top = parentYPos;
						
						items.item(i).getElementsByTagName("div")[1].style.left = parentXPos;
						items.item(i).getElementsByTagName("div")[1].style.top = parentYPos;
						
						items.item(i).getElementsByTagName("div")[2].style.left = parentXPos;
						items.item(i).getElementsByTagName("div")[2].style.top = parentYPos;
					}
				}	
			}
		}
	}
}
//Reposition lefnav onresize
window.onresize = adjustLeftNavPlacement;	function assignEventsToNav() {
	if(document.getElementById("leftNav")) {
		var leftNav = document.getElementById("leftNav");		
		var items = leftNav.getElementsByTagName("div");
		var foundThisPage = false;
		var leftNavItems = leftNav.childNodes;
		var twoRowHeight, threeRowHeight, fourRowHeight;
		var oldMedicalTwoRowHeight = 24;
		
		for(var i=0; i<=leftNavItems.length-1; i++) {
			var node = leftNavItems[i];
			if(node.nodeType == 1) {
				var images = node.getElementsByTagName("img");
				var textImageHeight = ""; 
				var textImage;
				if(node.className.indexOf("FirstLevel_Header") == -1) {
					var onImage = images[0];
					var offImage = images[1];
					textImage = images[images.length-1];
					textImage.height = "";
					if(node.getElementsByTagName("span")[0].offsetHeight == 24){
						textImageHeight = 25;
						twoRowHeight=25;
					}
					if(node.getElementsByTagName("span")[0].offsetHeight == 36){
						textImageHeight = 37;
						threeRowHeight = 37;
					}
					if(node.getElementsByTagName("span")[0].offsetHeight > 36){
						textImageHeight = 61; //not real heights
						fourRowHeight = 61;
						
					}
					threeRowHeight = 37;
				} else {		
					textImage = images[0];
					if(node.getElementsByTagName("a")[0].offsetHeight == 24){
						textImageHeight = 26;
						twoRowHeight=26;
					}
					if(node.getElementsByTagName("a")[0].offsetHeight == 36){
						textImageHeight = 41;
						threeRowHeight = 41;
					}
				}		
				//only go through the trouble if they're worth it
				if ( ( (textImageHeight == twoRowHeight) || (textImageHeight == oldMedicalTwoRowHeight) ) || (textImageHeight == threeRowHeight) || (textImageHeight == fourRowHeight)) {
				
					var className = node.className;
					var firstUnderscore = className.indexOf("_");
					var classNameStart = firstUnderscore > -1 ? className.substring(0, firstUnderscore) : className;
					var classNameEnd = firstUnderscore > -1 ? className.slice(firstUnderscore) : "";
					var rowHeightName = "";
				
					if ( (textImageHeight == twoRowHeight) || (textImageHeight == oldMedicalTwoRowHeight) ) {
						rowHeightName = "_TwoRow";
					} else if (textImageHeight == threeRowHeight) {
						rowHeightName = "_ThreeRow";
					} else if (textImageHeight == fourRowHeight) {
						rowHeightName = "_FourRow";
					}
					var newClassName = classNameStart + rowHeightName + classNameEnd;
					
					if(offImage) { offImage.src = getLeftPath() + "/leftnav/" + newClassName + ".gif"; }
					if(onImage) { onImage.src = getLeftPath() + "/leftnav/" + newClassName + "_On.gif"; }
					node.className = newClassName;
				}
			}
		}
		
		for(i=0; i<=items.length-1; i++) {
			//fix the netscape 6.2-7.1 bug by placing the background divs in the right place
			//firefox 1.0.* has this bug, too
			if (!is_safari) {
				if( (is_nav6up && is_minor <=2) || (is_nav && is_major == 7  && is_minor <= 1) || (is_nav6up && is_minor == 5 && is_major == 5) || (is_firefox1_0)) {
					//alert(findPosY(items.item(i)) + "px");
					if(items.item(i).getElementsByTagName("div")[0] && items.item(i).getElementsByTagName("div")[1] && items.item(i).getElementsByTagName("div")[2]) {
						var parentXPos = findPosX(items.item(i)) + "px";
						var parentYPos = findPosY(items.item(i)) + "px";
						items.item(i).getElementsByTagName("div")[0].style.left = parentXPos;
						items.item(i).getElementsByTagName("div")[0].style.top = parentYPos;
						
						items.item(i).getElementsByTagName("div")[1].style.left = parentXPos;
						items.item(i).getElementsByTagName("div")[1].style.top = parentYPos;
						
						items.item(i).getElementsByTagName("div")[2].style.left = parentXPos;
						items.item(i).getElementsByTagName("div")[2].style.top = parentYPos;
					}
				}
			}
			
			if(items.item(i).className.indexOf("SecondLevel") != -1 || items.item(i).className.indexOf("ThirdLevel") != -1 || items.item(i).className.indexOf("FourthLevel") != -1 &&
			   items.item(i).className.indexOf("Logo") == -1) {
				//hotfix: make sure secondlevel leftnav items pull from the off directory and not leveloneheaders.
				var leftNavImageText = items.item(i).getElementsByTagName("img")[2];
				if(leftNavImageText.src.indexOf("LevelOneHeaders") != -1) {
					leftNavImageText.src = leftNavImageText.src.replace("LevelOneHeaders", "Off");
				}
				//Find the page that you're on, and highlight it in the navigation
				if(items.item(i).getElementsByTagName("a")[0] == document.location.href && items.item(i).className.indexOf("Logo") == -1) {
					if(foundThisPage == false) {
						//items.item(i).getElementsByTagName("div")[0].style.visibility = "visible"; //show the 'on state' background div
						items.item(i).getElementsByTagName("div")[1].style.visibility = "hidden"; //hide the off state background div
						//switch to the bold text image
						items.item(i).getElementsByTagName("img")[2].src = getLeftPath() + "/leftnav/OnBlack/" + getImageName(items.item(i).getElementsByTagName("img")[2]);
						foundThisPage = true; //only one nav item should be highlighted
					}
				}
				items.item(i).onmouseover = DoBackgroundHover;
				items.item(i).onmouseout = DoBackgroundOff;
			}
		}
		leftNav.style.visibility = "visible"; //Bug:4977 - make leftnav show AFTER resizing.
	}
	//preload background images
	var bgImages = [ 
		"FirstLevelHeader.jpg",
		"SecondLevel.gif",
		"SecondLevel_Closing.gif",
		"SecondLevel_Closing_On.gif",
		"SecondLevel_Footer.gif",
		"SecondLevel_Footer_On.gif",
		"SecondLevel_Logo.gif",
		"SecondLevel_Logo_Footer.gif",
		"SecondLevel_Logo_Opening.gif",
		"SecondLevel_On.gif",
		"SecondLevel_TwoRow.gif",
		"SecondLevel_TwoRow_On.gif",
		"SecondLevel_TwoRow_Opening.gif",
		"SecondLevel_TwoRow_Opening_On.gif",
		"ThirdLevel.gif",
		"ThirdLevel_Footer.gif",
		"ThirdLevel_Footer_On.gif",
		"ThirdLevel_On.gif",
		"ThirdLevel_Opening.gif",
		"ThirdLevel_Opening_On.gif",
		"ThirdLevel_TwoRow.gif",
		"ThirdLevel_TwoRow_Footer.gif",
		"ThirdLevel_TwoRow_Footer_On.gif",
		"ThirdLevel_TwoRow_On.gif",
		"ThirdLevel_TwoRow_Open.gif",
		"ThirdLevel_TwoRow_Open_On.gif",
		"FourthLevel.gif",
		"FourthLevel_Footer.gif",
		"FourthLevel_Footer_On.gif",
		"FourthLevel_On.gif",
		"FourthLevel_Opening.gif",
		"FourthLevel_Opening_On.gif",
		"FourthLevel_TwoRow.gif",
		"FourthLevel_TwoRow_Footer.gif",
		"FourthLevel_TwoRow_Footer_On.gif",
		"FourthLevel_TwoRow_On.gif",
		"FourthLevel_TwoRow_Open.gif",
		"FourthLevel_TwoRow_Open_On.gif"	
	];
	/*
	var imgObj = new Image();
	for(var imgCount=0; imgCount<=bgImages.length-1; imgCount++) {
		imgObj.src = getLeftPath() + "/leftnav/" + bgImages[imgCount];
	}
	*/
}


if(is_mac) {
	if (is_safari) {document.write("<link rel=\"stylesheet\" href=\"/css/ext/workarounds/utilitynav_mac_safari.css\" TYPE=\"text/css\" />");	document.write("<link rel=\"stylesheet\" href=\"/css/common/workarounds/utilitynav/safari.css\" TYPE=\"text/css\" />");	document.write("<link rel=\"stylesheet\" href=\"/css/common/workarounds/bodyContent/safari.css\" TYPE=\"text/css\" />");	} else if (is_firefox) {document.write("<link rel=\"stylesheet\" href=\"/css/ext/workarounds/utilitynav_mac_firefox.css\" TYPE=\"text/css\" />");
	}
}
