/********************************************
*  InitRowEvents()
*
********************************************/
function InitRowEvents()
{
	// Table rows
	var arrRows = document.getElementsByTagName("tr");
	for (i=0; i<arrRows.length; i++)
	{
	  if (arrRows[i].className == "")
		{
		  arrRows[i].onmouseover = Over;
			arrRows[i].onmouseout = Out;
		}
	}
	function GetTarget(e)
	{
		if (!e) return (window.event.srcElement);
		else return e.target;
	}
	function Over(e)
	{
		//if (GetTarget(e).tagName == "TD") GetTarget(e).parentNode.bgColor = "#dddddd";
		//else GetTarget(e).parentNode.parentElement.bgColor = "#dddddd"; // link or image
		if (GetTarget(e).tagName == "TD") GetTarget(e).parentNode.bgColor = "";
		else GetTarget(e).parentNode.parentElement.bgColor = ""; // link or image
	}
	function Out(e)
	{
		if (GetTarget(e).tagName == "TD") GetTarget(e).parentNode.bgColor = "";
		else GetTarget(e).parentNode.parentNode.bgColor = ""; // link or image
	}
}

/********************************************
*  InitButtonEvents()
*
********************************************/
function InitButtonEvents()
{
	// Buttons
	var arrButtons = document.getElementsByTagName("input");
	for (i=0; i<arrButtons.length; i++)
	{
	  if (arrButtons[i].className == "button")
		{
		  arrButtons[i].onmouseover = Over;
			arrButtons[i].onmouseout = Out;
		}
		else if (arrButtons[i].parentElement.className == "button")
		{
		  arrButtons[i].onmouseover = Over2;
			arrButtons[i].onmouseout = Out2;
		}
		else if (arrButtons[i].className == "tabButton")
		{
		  arrButtons[i].onmouseover = OverTab;
			arrButtons[i].onmouseout = OutTab;
		}
	}
	function GetTarget(e)
	{
		if (!e) return (window.event.srcElement);
		else return e.target;
	}
	function Over(e)
	{
		if (GetTarget(e).tagName == "INPUT") GetTarget(e).className = "buttonOver";
	}
	function Out(e)
	{
		if (GetTarget(e).tagName == "INPUT") GetTarget(e).className = "button";
	}
	function Over2(e)
	{
		if (GetTarget(e).tagName == "INPUT") GetTarget(e).parentElement.className = "buttonOver";
	}
	function Out2(e)
	{
		if (GetTarget(e).tagName == "INPUT") GetTarget(e).parentElement.className = "button";
	}
	function OverTab(e)
	{
		if (GetTarget(e).tagName == "INPUT") GetTarget(e).className = "tabButtonOver";
	}
	function OutTab(e)
	{
		if (GetTarget(e).tagName == "INPUT") GetTarget(e).className = "tabButton";
	}
}

/********************************************
*  InitPage()
*
********************************************/
function InitPage()
{
  InitRowEvents();
	InitButtonEvents();
}
//onload = InitPage;  // Call the functions separately in each page instead

/********************************************
*  ToggleTable()
*
********************************************/
function ToggleTable(tableID, iconID)
{  
  var tableRef = document.getElementById(tableID);
	var iconRef = document.getElementById(iconID);
	var strIconSource = new String(iconRef.src);
	tableRef.style.display = (tableRef.style.display == "block") ? "none" : "block";
	if (strIconSource.indexOf('minus') != -1)
		strIconSource = strIconSource.replace("minus", "plus");
	else
	  strIconSource = strIconSource.replace("plus", "minus");
	iconRef.src = strIconSource;
	iconRef.alt = (iconRef.alt == "Collapse") ? "Expand" : "Collapse";
}

/********************************************
*  ToggleHelp()
*
********************************************/
function ToggleHelp(tableID, iconID)
{
  var tableRef = document.getElementById(tableID);
	var iconRef = document.getElementById(iconID);
	var strIconSource = new String(iconRef.src);
	tableRef.style.display = (tableRef.style.display == "block") ? "none" : "block";
	if (strIconSource.indexOf('plus') != -1)
	  strIconSource = strIconSource.replace("plus", "minus");
	else
	  strIconSource = strIconSource.replace("minus", "plus");
	iconRef.src = strIconSource;
	iconRef.alt = (iconRef.alt == "Hide Help") ? "Show Help" : "Hide Help"; 	
}
