// JavaScript Document
//declare main variables
var pageHref=0;
var myHref="";
var pageText=0;
var myTextvalue=0;
var myText="";
var pageReferrer=0;
var myReferrer="";

//declare other variables
var myDocumentElements=0;
var myH3=0;
var myH3A=0;
var myA=0;
var myAText=0;
var myH3Text=0;
var myNewTextNode=0;
var myNewH3node=0;
var myP=0;
var title=new Array();
var tempURL=new Array();
var directory=0;
var args=""

//traverse the DOM searching for <h3> elements in page
myDocumentElements=document.getElementsByTagName("h3");
//if <h3> elements exist
if (myDocumentElements.item(0))
{
	myH3=myDocumentElements.item(0);//get first <h3> element
	myH3A=myH3.getElementsByTagName("a");//search for child <a> elements
	if (myH3A.item(0))//if children <a> elements exist
	{
		myA=myH3A.item(0);//get first <a> element child
		myHref=myA.getAttribute("href");//save href attribute value to variable for later use
		pageHref=1;//set true href
		myAText=myA.childNodes.item(0);//get first child
		myTextvalue=myAText.data;//get value of child text node
	}
	else//if children <a> elements don't exist
	{
		myH3Text=myH3.childNodes.item(0);//get first child
		myTextvalue=myH3Text.data;//get value of child text node
	}
	myText=myTextvalue.toString();//convert text node value to string
	pageText=1;//set true string
}
else //if <h3> elements don't exist
{
	//get page title and parse page title at every colon (:)
	title = document.title.split(":");
	//get text from parsed title
	if (title.length>1)//if title array has over one element, use second to last as text
	{
		myText=title[title.length-2];
	}
	else//else use title as text
	{
		myText=title[0];
	}
	pageText=1;//set true string
}

//get page url and parse using back slash (/)
tempURL=document.location.toString().split("/");
//set index page location using page directory
directory = tempURL.length-2;

//if no <a> element existed, we need to define the link for the breadcrumb
if (!pageHref)//if false href
{
	//some directories have strangely labelled index pages; we handle that here (standard label is dir_name/dir_name.shtml)
	if (tempURL[directory] == "tcny")//tcny/index.shtml
	{
		myHref="/"+tempURL[directory]+"/index.shtml";
	}
	else//dir_name/dir_name.shtml
	{
		myHref="/"+tempURL[directory]+"/"+tempURL[directory]+".shtml";
	}
	pageHref=1;//set true href
}

//if no <h3> or no <a> or its text node value is too long, new <h3> will need to be written
if (!myH3)//if no <h3> element
{
	myDocumentElements=document.getElementsByTagName("p");//get a list of all the p elements
	myP=myDocumentElements.item(0);//get the first <p> element
	myH3=document.createElement("h3");//create the <h3> element
	myP.appendChild(myH3);//append new <h3> element to the first <p> element
}
	
if (!myA)//if no <a> element
{
	if (myH3Text) {myH3.removeChild(myH3Text);}//if it already exists, delete <h3> text node
	myA=document.createElement("a");//create the <a> element
	myH3.appendChild(myA);//append new <a> element to the first <h3> element
	myA.setAttribute("href",myHref);
}

if (myText.length>=50)//if text node value is too long it will break page layout
{
	myText=myText.substring(0,50);//make sure string is max 36 characters
}
	
if (myAText) {myA.removeChild(myAText);}//if it already exists, delete <a> text node
myNewTextNode=document.createTextNode(myText);//generate instance of new text node
myA.appendChild(myNewTextNode);//write new text node with correctly sized text

//search for a referrer
function getArgs()//This function checks the URL for a passed argument and returns it as the array args
{
	var args = new Object();
	// Get Query String
	var query = location.search.substring(1); 
	// Split query at the comma
	var pairs = query.split("&"); 
	
	// Begin loop through the querystring
	for(var i = 0; i < pairs.length; i++) {

		// Look for "name=value"
		var pos = pairs[i].indexOf('='); 
		// if not found, skip to next
		if (pos == -1) continue; 
		// Extract the name
		var argname = pairs[i].substring(0,pos); 
		
		// Extract the value
		var value = pairs[i].substring(pos+1); 
		// Store as a property
		args[argname] = unescape(value); 
	}
	return args; // Return the Object
}

args=getArgs();// get any URL variables using the function getArgs()
if (args.b) {
	pageReferrer=(args.b);//assign referrer variable (e.g., b=3) to local variable for use later
	//find the page's url variable, and determine it's referrer. if it's a specific page, create a link based upon it's URL
	if (pageReferrer==1)
	{
		myReferrer=" &lt; <a href=\"../../html/browse/browse-animal.shtml\">Animal Safety</a>";
	}
	else if (pageReferrer==2)
	{
		myReferrer=" &lt; <a href=\"../../html/browse/browse-chemical.shtml\">Chemical Dependency</a>";
	}
	else if (pageReferrer==3)
	{
		myReferrer=" &lt; <a href=\"../../html/browse/browse-data.shtml\">Data and Statistics</a>";
	}
	else if (pageReferrer==4)
	{
		myReferrer=" &lt; <a href=\"../../html/browse/browse-disease.shtml\">Diseases and Conditions</a>";
	}
	else if (pageReferrer==5)
	{
		myReferrer=" &lt; <a href=\"../../html/browse/browse-environment.shtml\">Environmental Health</a>";
	}
	else if (pageReferrer==6)
	{
		myReferrer=" &lt; <a href=\"../../html/browse/browse-family.shtml\">Family Health</a>";
	}
	else if (pageReferrer==7)
	{
		myReferrer=" &lt; <a href=\"../../html/browse/browse-healthcare.shtml\">Health Care Insurance</a>";
	}
	else if (pageReferrer==8)
	{
		myReferrer=" &lt; <a href=\"../../html/dmh/dmh.shtml\">Mental Health</a>";
	}
	else if (pageReferrer==9)
	{
		myReferrer=" &lt; <a href=\"../../html/bmrdd/bmrdd.shtml\">Mental Retardation</a>";
	}
	else if (pageReferrer==10)
	{
		myReferrer=" &lt; <a href=\"../../html/browse/browse-services.shtml\">Public Health Services</a>";
	}
	else if (pageReferrer==11)
	{
		myReferrer=" &lt; <a href=\"../../html/browse/browse-women.shtml\">Women\'s Health</a>";
	}
	else if (pageReferrer==12)
	{
		myReferrer=" &lt; <a href=\"../../html/browse/browse-emergency.shtml\">Emergency Preparedness</a>";
	}
	else {
		pageReferrer=0;
	}
}

//write breadcrumbs
if ((tempURL[directory]!="hlthtops")&&(tempURL[directory]!="browse")) //Some pages don't get breadcrumbs
{
	document.write("<div class=\"breadcrumbs\">"); //this class defines the position of the links
	document.write("<a href=\"../../html/home/home.shtml\">Home</a>"); //start with the home page, which is a constant link
	
	//display health topics link as default, with some exceptions
	if ((tempURL[directory]!="pub")&&(tempURL[directory]!="pr")&&(tempURL[directory]!="about")&&(tempURL[directory]!="popular")&&(tempURL[directory]!="press")&&(tempURL[directory]!="contact")&&(tempURL[directory]!="community")&&(tempURL[directory]!="myhealth")&&(tempURL[directory]!="hcp")&&(tempURL[directory]!="press_archive02")&&(tempURL[directory]!="press_archive03")&&(tempURL[directory]!="press_archive04")) //if current page is an exception, skip health topics link
	{
		document.write(" &lt; <a href=\"../../html/hlthtops/hlthtops.shtml\">Health Topics A-Z</a>");
	}
	
	//display page referrer if defined
	if (pageReferrer)
	{
		document.write(myReferrer);
	}
	
	//display link to index page of directory
	if ((pageHref)&&(pageText))
	{
		document.write(" &lt; <a href=\"");
		document.write(myHref);
		if (pageReferrer){document.write('?b='+pageReferrer);}//if url_refer is set, add url variable to link for breadcrumbs
		document.write("\">");
		document.write(myText);
		document.write("</a>");
	}
	
	document.write("</div>");
}
