var startingParentId = -1;
var horizontal = false		//true for horizontal menus, false for vertical menus


var NBLeft = 5;
var NBTop = 5;
var NBHeight = 24;			//if vertical then NBHeight is the height of each menu item
var NMHeight = 24;
var startZindex = 1000;

var NBWidth = 150;  
var NMWidth = 180;

var dividerSpace = 20;
var dividerContent = '|';
var dividerClass = 'navbar';

var NBBgColor = "";
var NBBgColorOver = "#6EA446"
var NBAlign = "left"
var NBColor = "#FFFFFF";
var NBOverColor = "#FFFFFF";
var NBFontFamily = "tahoma, arial, helvetica, sans-serif";
var NBFontSize = "11px";
var NBFontWeight = "bold";
var NBBorder = true;
var NBBorderOver = true;
var NBBorderColor = "#000000";

var NMBgColor = "#6EA446";
var NMBgColorOver = "#FFFFFF"
var NMItemAlign = "left"
var NMColor = "#FFFFFF";
var NMOverColor = "#000000";
var NMFontFamily = "tahoma, arial, helvetica, sans-serif";
var NMFontSize = "11px";
var NMFontWeight = "bold";
var NMBorder = true;
var NMBorderColor = "#274F7E";

var subNavsOpen = false;
var CurrentMenuTree = Array();
var TemplatePath = ClientTemplatePath;




function NavHover(Obj, InOut, doFilter) {
	
	if (InOut) {
		if (!BIsMaccak && BVer>=5 && doFilter) {

			NavHoverOver(Obj)
			
		}

		ShowNavMenu(Obj, true);
			
		if (BIsIE) event.cancelBubble=true;

	} else {
		if (!BIsMaccak && BVer>=5 && doFilter){


			NavHoverOut(Obj)
			
			/*if (!subNavsOpen){
				for (i=0; i<NavItems.length; i++) {
					if (NavItems[i][1] == startingParentId){
						NavHoverOut(document.getElementById('Menu'+NavItems[i][0]+'Btn'));
						//document.getElementById('Menu'+NavItems[i][0]+'Btn').style.backgroundColor = NBBgColor;
					}
				}
			}*/
			
			//Obj.style.color = NBColor;
		}
	}
}

function NavHoverOver(Obj){
	Obj.style.color = NBOverColor;
	Obj.style.backgroundColor = NBBgColorOver;

	if (NBBorderOver){
/*		
		Obj.style.borderTopColor = NBBorderColor;
		Obj.style.borderTopStyle = "solid";
		Obj.style.borderTopWidth = "1px";
*/
		Obj.style.borderLeftColor = NBBorderColor;
		Obj.style.borderLeftStyle = "solid";
		Obj.style.borderLeftWidth = "1px";
/*
		Obj.style.borderRightColor = NBBorderColor;
		Obj.style.borderRightStyle = "solid";
		Obj.style.borderRightWidth = "1px";
*/
		Obj.style.borderBottomColor = NBBorderColor;
		Obj.style.borderBottomStyle = "solid";
		Obj.style.borderBottomWidth = "1px";
	}
}

function NavHoverOut(Obj){
	Obj.style.color = NBColor;
	Obj.style.backgroundColor = NBBgColor;

	if (!NBBorder){
		Obj.style.borderTopStyle = "none";

		Obj.style.borderLeftStyle = "none";

		//Obj.style.borderRightStyle = "none";

		Obj.style.borderBottomStyle = "none";
	}
}


function MenuHover(Obj, InOut) {
	with (Obj) {
		if (InOut) {
			style.color = NMOverColor;
			style.backgroundColor = NMBgColorOver;

			ShowNavMenu(Obj, false);
			
			if (BIsIE) event.cancelBubble = true;
		}
		else {
			style.color = NMColor;
			style.backgroundColor = NMBgColor;
		}
	}
}



function ShowNavMenu(Btn, TopLevelItem, Trip) {
	var Mn = document.getElementById(Btn.id.replace('Btn', 'Mn'));
	var MnC = document.getElementById(Btn.id.replace('Btn', 'MnC'));

	BIsIE?HideNavMenus(Btn.parentElement.parentElement):HideNavMenus(Btn.parentNode.parentNode);

	if (Mn==null || MnC==null) {
		return;
	}

	if (Trip!=true) {
		eval("setTimeout(\"ShowNavMenu(document.getElementById('"+Btn.id+"'), "+TopLevelItem+", true)\", 50);");
		return;
	}

	if (Mn.className=='MnAct') {
		return;
	
	} else if (Mn.className=='MnInA') {
		if (TopLevelItem) {

			if (horizontal) {
				Mn.style.top = (NBTop + NBHeight - 1)+'px';
				
				if (BIsIE) {
					Mn.style.left = (Btn.offsetLeft+Btn.parentElement.parentElement.parentElement.offsetLeft-10)+'px';
				} else {
					Mn.style.left = (Btn.offsetLeft+Btn.parentNode.parentNode.parentNode.offsetLeft-10)+'px';
				}

			} else {
				if (BIsIE) {
					Mn.style.top = (Btn.offsetTop + Btn.parentElement.parentElement.parentElement.offsetTop) + 'px';
					Mn.style.left = (Btn.parentElement.parentElement.parentElement.offsetLeft + Btn.parentElement.parentElement.parentElement.offsetWidth - 1) + 'px';

				} else {
					
					Mn.style.top = (Btn.offsetTop + Btn.parentNode.parentNode.parentNode.offsetTop) + 'px';
					Mn.style.left = (Btn.parentNode.parentNode.parentNode.offsetLeft + Btn.parentNode.parentNode.parentNode.offsetWidth) + 'px';
				}
			}
			
			CurrentMenuTree = Array(Mn);
		
		} else {
			if (BIsIE) {
				Mn.style.top = (Btn.parentElement.parentElement.offsetTop+Btn.offsetTop) + 'px';
				Mn.style.left = (Btn.parentElement.parentElement.offsetLeft+Btn.offsetWidth-1) + 'px';

			} else {
				Mn.style.top = (Btn.parentNode.parentNode.offsetTop+Btn.offsetTop) + 'px';
				Mn.style.left = (Btn.parentNode.parentNode.offsetLeft+Btn.offsetWidth) + 'px';
			}

			//top = BIsIE?Btn.parentElement.parentElement.offsetTop+Btn.offsetTop-2:Btn.parentNode.parentNode.offsetTop+Btn.offsetTop-2;
			//top = BIsIE?Btn.parentElement.parentElement.offsetTop+Btn.offsetTop:Btn.parentNode.parentNode.offsetTop+Btn.offsetTop;
			//left =  BIsIE?Btn.parentElement.parentElement.offsetLeft+Btn.offsetWidth+10:Btn.parentNode.parentNode.offsetLeft+Btn.offsetWidth+7;
			//left =  BIsIE?Btn.parentElement.parentElement.offsetLeft+Btn.offsetWidth-1:Btn.parentNode.parentNode.offsetLeft+Btn.offsetWidth;
			CurrentMenuTree[CurrentMenuTree.length] = Mn;
		}

		Mn.style.height = (MnC.offsetHeight+4) + 'px';
		Mn.style.width = (MnC.offsetWidth+4) + 'px';
		Mn.style.zIndex = startZindex + CurrentMenuTree.length + 2;


		if (BIsIE && BVer>=6 && !BIsMaccak) {
			for (i=4; i>0 && Mn.children.length<=4; i--) {
				var SdDv = document.createElement('div');
				var SdO = ("50,37,20,7").split(',');

				SdDv.style.position = 'absolute';
				SdDv.style.left = i;
				SdDv.style.top = i;
				SdDv.style.width = MnC.offsetWidth;
				SdDv.style.height = MnC.offsetHeight;
				SdDv.style.zIndex = MnC.style.zIndex - i;
				SdDv.style.backgroundColor = '#666666';
				SdDv.style.filter = 'alpha(opacity='+SdO[i-1]+')';

				Mn.insertAdjacentElement('afterBegin', SdDv);
			}
		}

		Mn.style.visibility = '';
		MnC.style.visibility = '';

		Mn.className = 'MnAct';
	}
}


function HideNavMenus(NewMenuObj) {
	var PointOfHide = -1;

	if (typeof(NewMenuObj)=="object") {
		for (i=0; i<CurrentMenuTree.length; i++) {
			if (CurrentMenuTree[i]==NewMenuObj) {
				PointOfHide=i;
			}
		}
	}

	for (x=CurrentMenuTree.length-1; x>=0; x--) {
		if (x==PointOfHide) {
			return;
		}

		with (CurrentMenuTree[x]) {
			className = 'MnInA';
			style.top = 0;
			style.left = 0;
			style.visibility = 'hidden';
		}
		CurrentMenuTree.length = x;
	}
}


function DrawNavbar() {
	var MenuHTML = Array();
	var TempHTML = "";

	NBWidth = document.getElementById("LeftColumn").offsetWidth-9;

	for (i=0; i<NavItems.length; i++) {
		var NI = NavItems[i];

		if (MenuHTML[NI[1]]==null) MenuHTML[NI[1]]="";

		if ((NI[5]+"").toUpperCase()=="_BLANK") {
			ClickCommand="window.open('"+NI[4]+"','','')";
		} else if (!NI[4]=="") {
			ClickCommand="location.href='"+NI[4]+"'";
		} else {
			ClickCommand="";
		}

		if (NI[1] == startingParentId) {

			// Top level item
			if (!horizontal){
				MenuHTML[NI[1]] += '<tr '+(horizontal ? 'height='+NBHeight : null)+'>';
			}
			
			MenuHTML[NI[1]] += "<td align='"+NBAlign+"'"+
			" id='Menu"+NI[0]+"Btn'"+
			" height='"+NBHeight+"'" +
			" width='"+NBWidth+"'" +
			" style='cursor:pointer;"+
			" background-color:"+NBBgColor+";"+
			" padding-left: 3px;"+
			" color:"+NBColor+";"+
			" font-family:"+NBFontFamily+";"+
			" font-size:"+NBFontSize+";"+
			" font-weight:"+NBFontWeight+";"+
			(NBBorder ? " border-left: solid 1px "+NBBorderColor+";" : null) + 
			(NBBorder ? " border-bottom: solid 1px "+NBBorderColor+";" : null) +"'"+
			
			" onclick=\""+ClickCommand+"\" onmouseover=NavHover(this,true,true) onmouseout=NavHover(this,false,true) nowrap>"+NI[2]+"</td>";
				
			if (horizontal){
				MenuHTML[NI[1]] += "<td align='"+NBAlign+"' width='"+dividerSpace+"' class='"+dividerClass+"'>"+dividerContent+"</td>";
			}

			if (!horizontal){
				MenuHTML[NI[1]] += '</tr>';
			}

		}
		else {
			MenuHTML[NI[1]] += "<div id='Menu"+NI[0]+"Btn'"+
			" style='background-color:"+NMBgColor+";"+
			" height:"+NMHeight+"px;" +
			" vertical-align:middle;" +
			" line-height:"+NMHeight+"px;" +
			(NMBorder ? " border-left: solid 1px "+NMBorderColor+";" : null) + 
			(NBBorder ? " border-bottom: solid 1px "+NBBorderColor+";" : null) +
			" color:"+NMColor+";"+
			" font-family:"+NMFontFamily+";"+
			" font-size:"+NMFontSize+";"+
			" font-weight:"+NMFontWeight+";"+
			" width:"+(NMWidth)+"px;"+
			" text-align: left; "+
			" cursor:pointer'"+
			" onclick=\""+ClickCommand+"\" onmouseover=MenuHover(this,true) onmouseout=MenuHover(this,false)><div style='padding-left: 3px;'>"+NI[2]+"</div></div>";
		}
	}

	for (MI in MenuHTML) {
		if (MI == startingParentId) {
			// Writes top level items
			TempHTML += "<table "+(horizontal ? 'height='+NBHeight : null)+" cellspacing=0 cellpadding=0 border=0 style='position:relative; top:"+NBTop+"px; left:"+NBLeft+"px; z-index:"+startZindex+";'>";
			TempHTML += MenuHTML[MI];
			TempHTML += "</table>";
		}
		else {
			// Writes menus
			TempHTML += "<div id=Menu"+MI+"Mn style='width:"+(NMWidth)+"px;position:absolute;visibility:hidden' onmouseover=event.cancelBubble=true class=MnInA>";
			TempHTML += "<div id=Menu"+MI+"MnC style='width:"+(NMWidth)+"px;padding:0 0 0 0;background-color:"+NMBgColor+"; '>"+MenuHTML[MI]+"</div>";
			TempHTML += "</div>";
		}
	}

	document.getElementById("Navbar").innerHTML = TempHTML;
	document.onmouseover = HideNavMenus;
}