function popUp(url)
{
	var n = window.open(url, 'pop', 'height=400,width=335,scrollbars=1,status=0,toolbar=0,resizable=0,location=0');
	n.moveTo(15,15);
	n.focus();
}

function showDescription(ID)
{
	// Hide all <h6> tags with name="a" (all of them)
	var e = document.getElementsByName("a");
	for(var i=0;i<e.length;i++)
	{
		e[i].style.display = 'none';
	}
	
	// Make this <h6> tag visible
	var d = document.getElementById(ID);
	d.style.display = 'block';
}

function hideHomeText()
{
	document.getElementById("homePage").className = 'hidden';
}
// used for expanding individual degree info
function toggleDegree(degreeLevel, degree)
{	
	//toggle right/down arrow visibility next to degree name, indicating if field is expanded or collapsed
	var buttonExpand = document.getElementById("dl" +degreeLevel+ "d" +degree+ "Expand");
	var buttonCollapse = document.getElementById("dl" +degreeLevel+ "d" +degree+ "Collapse");
	var rows = document.getElementsByTagName("tr");
	var button = document.getElementById("dl" +degreeLevel+ "d" +degree+ "Expand").parentNode.parentNode.className;
	var currentRowClass = document.getElementById("dl" +degreeLevel+ "d" +degree+ "desc").className;
	var cells = document.getElementById("left").getElementsByTagName('td');
	
	for(var i = 0; i < cells.length; i++)
	{
		var c = cells[i];
		if(c.className == 'revealDegree')
			c.className = '';
	}
	
	//loop through all <tr> tags on page 
	//until we find one with an id that matches the parameters sent in the function call
	//then change its class from "hidden" to "revealProgram"
	for(var i = 0; i < rows.length; i++)
	{
		var r = rows[i];
		//first see if any rows are already shown for other degrees, and hide them
		if(r.id.indexOf("dl" +degreeLevel) > -1 && r.id.indexOf("desc") > -1)
		//if row id contains "dl +degreeLevel" and the word "desc", hide it, so that only one degree description is shown at a time
			r.className = 'hidden';
		if(document.getElementById("dl" +degreeLevel+ "d" +i+ "Expand"))
		{
			if(document.getElementById("dl" +degreeLevel+ "d" +i+ "Expand").className == 'hidden')
			{
				if(i != degree) //make sure we don't toggle the row we clicked, as that's done later in this function and will reverse what we do here
				{
					document.getElementById("dl" +degreeLevel+ "d" +i+ "Expand").className = 'visible';
					document.getElementById("dl" +degreeLevel+ "d" +i+ "Collapse").className = 'hidden';
				}
			}
		}
		//now toggle class of row with ID sent in function call
		if(r.id == "dl" +degreeLevel+ "d" +degree+ "desc")
		{
			if(currentRowClass == 'hidden')
			{
				var expandedRow = r.id;
				r.className = 'revealProgram';
				var boolisDescShown = true;
			}
			else if(currentRowClass == 'revealProgram')
			{
				r.className = 'hidden';
			}
		}
	}
	if(buttonCollapse.className == 'hidden')
	{
		buttonExpand.className = 'hidden';
		buttonCollapse.className = 'visible';
		buttonExpand.parentNode.parentNode.className = 'revealDegree';
	}
	else
	{
		buttonCollapse.className = 'hidden';
		buttonExpand.className = 'visible';
	}
	if(boolisDescShown == true)
	{
		buttonExpand.className = 'hidden';
		buttonCollapse.className = 'visible';
		document.getElementById("dl" +degreeLevel+ "d" +degree).className = "reveal";
		document.getElementById("dl" +degreeLevel+ "d" +degree).childNodes[0].className = "revealDegree";
	}	
}

//used for expanding degree categories
function toggleDegreeLevel(degreeLevel)
{
	var rows = document.getElementById("left").getElementsByTagName("tr");
	var cells = document.getElementById("left").getElementsByTagName("td");
	var buttonExpand = document.getElementById("dl" +degreeLevel+ "Expand");
	var buttonCollapse = document.getElementById("dl" +degreeLevel+ "Collapse");
	
	for(var i = 0; i < cells.length; i++)
	{
		var c = cells[i];
		if(c.className == 'revealDegree')
			c.className = '';
	}
	for(var i = 0; i < rows.length; i++)
	{
		var r = rows[i];
		//set all <tr> tag's class to Min if they are currently set to Ex
		//we'll use this flag later when setting img visibility of the right/down arrows
		if(r.className == "Ex")
			r.className = "Min";
	}
	if(buttonExpand.parentNode.parentNode.parentNode.className == "Min")
		buttonExpand.parentNode.parentNode.parentNode.className = "Ex";
	else if(buttonExpand.parentNode.parentNode.parentNode.className == "Ex")
		buttonExpand.parentNode.parentNode.parentNode.className = "Min";
	
	//first, check if any rows have the class "reveal". if so, change it to "hidden".
	// If the row with class 'reveal' is in the same degree level that we clicked on, then give it a class of 'hidden temp' instead.
	for(var i = 0; i < rows.length; i++)
	{	
		var r = rows[i];
		if(r.id.indexOf("dl" +degreeLevel) > -1 && r.className == 'reveal')
			r.className = 'hidden temp';
		if(r.className == 'reveal')
			r.className = 'hidden';
	}
	for(var i = 0; i < rows.length; i++)
	{
		//if any degree rows within any degreeLevel are expanded, close them when degreeLevel is closed
		var r = rows[i];
		if(r.id.indexOf("desc") > -1 && r.id.indexOf("dl") > -1 && r.className != 'hidden')
			r.className = 'hidden';
		
		var trID = document.getElementById("dl" +degreeLevel+ "d" +i);
		if(trID)
		{
			if(trID.className == 'hidden')
				trID.className = 'reveal';
			else if(trID.className == 'reveal')
			{
				trID.className = 'hidden';
			}
			else if(trID.className == 'hidden temp')
			{
				trID.className = 'hidden';
				//also minimize the degreeLevel row when we hide these degrees
				document.getElementById("dl" +degreeLevel).className = 'Min';
			}
		}
	}
	var arrows = document.getElementById("left").getElementsByTagName("img");
	for(var i = 0; i < arrows.length; i++)
	{
		var img = arrows[i];
		if(img.id.indexOf("Collapse") > -1 && img.className == 'visible')
			img.className = 'hidden temp';
		if(img.id.indexOf("Expand") > -1 && img.className == 'hidden')
			img.className = 'visible';
	}
	
	var imgs = document.getElementById("left").getElementsByTagName("img");
	for(var i = 0; i < imgs.length; i++)
	{
		if(document.getElementById("dl" +i))
		{
			if(document.getElementById("dl" +i).className == 'Min')
			{
				document.getElementById("dl" +i+ "Collapse").className = 'hidden';
				document.getElementById("dl" +i+ "Expand").className = 'reveal';
			}
			else if(document.getElementById("dl" +i).className == 'Ex')
			{
				document.getElementById("dl" +i+ "Collapse").className = 'reveal';
				document.getElementById("dl" +i+ "Expand").className = 'hidden';
			}
		}
	}
	for(var i = 0; i < rows.length; i++)
	{
		var r = rows[i];
		if(r.className == 'Ex')
			document.getElementById("homePage").className = "hidden";
	}
	//if all degree levels are collapsed, show the home page text
	if(document.getElementById("dl2"))
	{
		if(document.getElementById("dl1").className =='Min' && document.getElementById("dl2").className =='Min' && document.getElementById("dl3").className =='Min' && document.getElementById("dl4").className =='Min' && document.getElementById("dl5").className =='Min')
		{
			document.getElementById("homePage").className = "reveal";
			document.getElementById("returnHome").className = "hidden";
		}
		else
		{
			document.getElementById("homePage").className = 'hidden';
			document.getElementById("returnHome").className = 'reveal';
		}
	}
	else
	{
		if(document.getElementById("dl1").className =='Min' && document.getElementById("dl3").className =='Min' && document.getElementById("dl4").className =='Min' && document.getElementById("dl5").className =='Min')
		{
			document.getElementById("homePage").className = "reveal";
			document.getElementById("returnHome").className = "hidden";
		}
		else
		{
			document.getElementById("homePage").className = 'hidden';
			document.getElementById("returnHome").className = 'reveal';
		}
	}
}


function detectDegree()
{
//if a degree is expanded, hide the home page text and show the "return home" link in the degree nav
//this is executed on page load in a script tag
	if(document.getElementById("dl2"))
	{
		if(document.getElementById("dl1").className =='Min' && document.getElementById("dl2").className =='Min' && document.getElementById("dl3").className =='Min' && document.getElementById("dl4").className =='Min' && document.getElementById("dl5").className =='Min')
		{
			document.getElementById("homePage").className = 'reveal';
			document.getElementById("returnHome").className = 'hidden';
		}
		else
		{
			document.getElementById("homePage").className = 'hidden';
			document.getElementById("returnHome").className = '';
		}
	}
	else
	{
		if(document.getElementById("dl1").className =='Min' && document.getElementById("dl3").className =='Min' && document.getElementById("dl4").className =='Min' && document.getElementById("dl5").className =='Min')
		{
			document.getElementById("homePage").className = "reveal";
			document.getElementById("returnHome").className = "hidden";
		}
		else
		{
			document.getElementById("homePage").className = 'hidden';
			document.getElementById("returnHome").className = 'reveal';
		}
	}
}










