// ------------- SETTINGS ------------- //

cVertical = false;
cArrow = "images/arrow.gif";
// ------------- CLASSES REQUIRED -------------- //
// MenuMainTable, MenuSubTableTop, MenuMain, MenuMainOverTop, MenuSub, MenuSubOver //


// ----------------------------------- //


function fnMenuClick(arg,pageid,xtarget,linktitle)
	{
	for (cnt = 1 ; cnt < aTablesTop.length ; cnt++)
		{
		oTableTop = eval("document.getElementById(\"oNavTable" + aTablesTop[cnt] + "\")");
		oTableTop.style.visibility = "hidden";
		}
	if (arg != "*")
		{
		window.open("content.asp?PageID=" + pageid +"&__"+linktitle, xtarget);
		}
	}

function fnInArray(array,string)
	{
	var isTrue;
	isTrue = 0;
	for (inArrayCnt = 0 ; inArrayCnt < array.length ; inArrayCnt ++)
		{
		if (array[inArrayCnt] == string)
			{
			isTrue = 1;
			break;
			}
		}
	if (isTrue == 1) return true;
	else return false;
	}

function fnXOffset(obj)
	{
	var iXValue;
	iXValue = -1;
	while (obj)
		{
		iXValue += obj.offsetLeft;
		obj = obj.offsetParent;
		}
	return iXValue;
	}
	
function fnYOffset(obj)
	{
	var iYValue;
	iYValue = -1;
	while (obj)
		{
		iYValue += obj.offsetTop;
		obj = obj.offsetParent;
		}
	return iYValue;
	}
	
	
function fnCellOverTop(id,source)
{
	if (aNavDataTop[id][0] == 0) 
	{	
		source.className = "MenuMainOverTop";
	}
	else 
	{
		source.className = "MenuSubOverTop";		
	}
}

function fnCellOutTop(id,source)
{
	if (aNavDataTop[id][0] == 0) 
	{	
		source.className = "MenuMainTop";		
	}
	else 
	{
		source.className = "MenuSubTop";		
	}
}

	
function fnMenuOverTop(id,source)
	{

	if (!window.inTimer) window.inTimer = window.setInterval("fnCloser()",100);

	iCell = id;
	iPanel = aNavDataTop[id][0];
	clearTimeout(window.toPanel);
	
	if (aNavDataTop[iCell][3])
		{
		document.getElementById("navDescript").innerHTML = aNavDataTop[iCell][3];
		}
	
	if(fnInArray(aTablesTop,iCell))
		{
		oTableTop = eval("document.getElementById(\"oNavTable" + id + "\")");
		
		if (oTableTop.style.visibility == "hidden")
			{
			if ((cVertical == false)&&(iPanel == 0))
				{
				oTableTop.style.left = (fnXOffset(source) - 0);
				oTableTop.style.top = (fnYOffset(source) + source.offsetHeight);
				}
			else
				{
				oTableTop.style.top = (fnYOffset(source) - 0);

				if ((fnXOffset(source) + source.offsetWidth + oTableTop.offsetWidth) > document.body.clientWidth)
					{
					oTableTop.style.left = (fnXOffset(source) - oTableTop.offsetWidth);
					oTableTop.style.top = (fnYOffset(source) + 3);
					}
				else
					{
					oTableTop.style.left = (fnXOffset(source) + source.offsetWidth);
					oTableTop.style.top = (fnYOffset(source) - 0);
					}
				}
			if (window.toFirsttime) clearTimeout(window.toFirsttime);
			window.toFirsttime = window.setTimeout("document.getElementById(\"oNavTable" + id + "\").style.visibility = \"visible\"",100);
			}
		}		
	}

function fnMenuOutTop(out,source)
	{
	if (window.toFirsttime) clearTimeout(window.toFirsttime);	
	window.toPanel = window.setTimeout("iPanel = -1",300);
	}

function fnCloser()
	{
	if (iPanel == -1)
		{
		for (cnt = 1 ; cnt < aTablesTop.length ; cnt++)
			{
			oTableTop = eval("document.getElementById(\"oNavTable" + aTablesTop[cnt] + "\")");
			oTableTop.style.visibility = "hidden";
			}
		}
	else
		{
		for (cnt = 1 ; cnt < aTablesTop.length ; cnt++)
			{
			if (!fnInArray(aNavDataTop[iCell][13],aTablesTop[cnt]))
				{
				oTableTop = eval("document.getElementById(\"oNavTable" + aTablesTop[cnt] + "\")");
				oTableTop.style.visibility = "hidden";				
				}
			}
		}
	}

var aTablesTop, aTableDataTop, iCell, iPanel, oSource, strTemp;

aTablesTop = Array();
aTableDataTop = Array();

for (cnt = 1 ; cnt < aNavDataTop.length ; cnt++)
	{
	if (aNavDataTop[cnt])
		{
		if (!fnInArray(aTablesTop,aNavDataTop[cnt][0]))
			{
			aTablesTop[aTablesTop.length] = aNavDataTop[cnt][0];
			strTemp = "";
			if (aNavDataTop[cnt][0] != 0)strTemp += "<table cellpadding=\"0\" cellspacing=\"0\" class=\"MenuSubTableTop\" border=\"0\"";
			else strTemp += "<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" class=\"MenuMainTableTop\"";
			
			strTemp += " id=\"oNavTable" + aNavDataTop[cnt][0] + "\">";
			if ((cVertical == false)&&(aNavDataTop[cnt][0] == 0)) strTemp += "<tr>";
			aTableDataTop[aNavDataTop[cnt][0]] = strTemp;
			}
		}	
	}

for (cnt = 1 ; cnt < aNavDataTop.length ; cnt++)
	{
	if (aNavDataTop[cnt])
		{
		strTemp = "";
		if ((cVertical == true)||(aNavDataTop[cnt][0] != 0)) strTemp += "<tr>";

		if (aNavDataTop[cnt][0] == 0)
			{
			cnfClass = "MenuMainTop";
			}
		else
			{
			cnfClass = "MenuSubTop";
			}
		strTemp += "<td class=\"" + cnfClass + "\" onmouseover=\"fnMenuOverTop(" + cnt + ",this);fnCellOverTop(" + cnt + ",this);\"  onmouseout=\"fnMenuOutTop(" + cnt + ",this);fnCellOutTop(" + cnt + ",this);\" style=\"cursor:pointer;width:20%\"";
		if (aNavDataTop[cnt][2]) strTemp += " onClick=\"fnMenuClick('" + aNavDataTop[cnt][2] + "','" + aNavDataTop[cnt][4] + "','" + aNavDataTop[cnt][5] + "','" + aNavDataTop[cnt][1] + "')\"";
		strTemp += ">";
		if (fnInArray(aTablesTop,cnt) && aNavDataTop[cnt][0] != 0)	strTemp += "<img src=\"" + cArrow + "\" align=\"right\">";		
		strTemp += aNavDataTop[cnt][1];
		strTemp += "</td>";
		if ((cVertical == true)||(aNavDataTop[cnt][0] != 0)) strTemp += "</tr>";
		aTableDataTop[aNavDataTop[cnt][0]] += strTemp;
		id = cnt;
		aNavDataTop[cnt][13] = Array();
		while (id > 0)
			{
			for (x = 1 ; x < aNavDataTop.length ; x++)
				{
				if (aNavDataTop[x])
					{
					if (x == id)
						{
						aNavDataTop[cnt][13][aNavDataTop[cnt][13].length] = id; 

						id = aNavDataTop[x][0];
						break;
						}
					}
				}
			}
		}
	}	

strTemp = "";

for (cnt = 0 ; cnt < aTableDataTop.length ; cnt++)
	{
	if (aTableDataTop[cnt])
		{
		strTemp += aTableDataTop[cnt];
		if ((cVertical == false)&&(aNavDataTop[cnt][0] == 0)) strTemp += "</tr>";
		strTemp += "</table>";
		}
	}


//window.clipboardData.setData("Text", strTemp);
document.write(strTemp);
