
var Rorientation=1	// 0-horizontal 1-vertical
var RimgPath = "img/"

/////////////////////////////////////////////////////////////////////////////

var	ie=(navigator.appName=='Microsoft Internet Explorer')
var	ns=(navigator.appName=='Netscape')
var	dom=document.getElementById
var rw_menuId, rw_trigger, Rto1
var Rs1

/////////////////////////////////////////////////////////////////////////////

function RTmenu (id, parentId, url, description, img) {
	this.id = id
	this.parentId = parentId
	this.url = url
	this.description = description
	this.numChild = 0
	this.levelId = 0
	this.img = img
}

/////////////////////////////////////////////////////////////////////////////

var Rmenu = new Array()
var RmenuCounter = 0
var RnumLevel = 0
var RprevMenuId = -1
var RnNowAt = 0

function RdisplayMenuItem(menuId) {
	var sHTML
	
	if (Rmenu[menuId].parentId>0)
	{
		ItemForeground = subItemForeground 
		Border = subItemBorder 
		Background = subItemBackground 

		HoverForeground = subItemHoverForeground 
		HoverBorder = subItemHoverBorder 
		HoverBackground = subItemHoverBackground 
	}
	else
	{
		ItemForeground = mainItemForeground 
		Border = mainItemBorder 
		Background = mainItemBackground 

		HoverForeground = mainItemHoverForeground 
		HoverBorder = mainItemHoverBorder 
		HoverBackground = mainItemHoverBackground 
	}

	if ((Rorientation==1)||(Rmenu[menuId].levelId>0))
	{
		sHTML += "<tr>"
	}	

	if (Rmenu[menuId].description!='-')
	{
		sHTML = "<td id='Rmenu_"+menuId+"' style='cursor:pointer;cursor:hand;border-style:solid;border-width:1px;background-color:"+ Background +";color=\""+ ItemForeground +"\";border-color:"+ Border +"' onmouseover='clearInterval(Rs1);this.style.backgroundColor=\"" + HoverBackground + "\";this.style.color=\"" + HoverForeground + "\";this.style.borderColor=\"" + HoverBorder + "\";"

		if (Rmenu[menuId].numChild!=0) {
			sHTML += "RshowSubmenu("+Rmenu[menuId].id+",this);RhideSubmenu(Rmenu["+menuId+"].levelId+1);"
		}
		else
		{
			sHTML += "RprevMenuId = "+menuId+";RhideSubmenu(Rmenu["+menuId+"].levelId);"
		}

		sHTML += ";RnNowAt="+menuId+";RclearAll("+Rmenu[menuId].levelId+","+Rmenu[menuId].parentId+")' onclick='document.location.href=\""+Rmenu[menuId].url+"\"' onmouseout='Rs1=setInterval(\"RresetMenu();RhideSubmenu(0)\",1000);'><table cellpadding=0 cellspacing=0 border=0 width='100%'><tr>"

		if (Rmenu[menuId].levelId>0)
		{
			sHTML += "<td style='padding-left:3px' width=20><img src='"
			if (Rmenu[menuId].img=="")
			{
				sHTML += RimgPath + "trans.gif"
			}
			else
			{
				sHTML += RimgPath + Rmenu[menuId].img
			}
			sHTML += "' width=16 height=16 border=0></td>"
		}

		if ((Rorientation==0) && (Rmenu[menuId].levelId==0))
		{
			nArrowWidth = 0
		}
		else
		{
			nArrowWidth = 25
		}

		sHTML += "<td style='padding-left:5px;padding-right:5px' align=left width=80>" + Rmenu[menuId].description.replace(" ","&nbsp;") + "</td><td style='padding-right:2px' align=right width="+nArrowWidth+">"
		if (Rmenu[menuId].numChild>0)
		{
			if ((Rorientation==0)&&(Rmenu[menuId].levelId==0))
			{
				sHTML += "<img src='" + RimgPath + "arrow_down.gif'>"
			}
			else
			{
				sHTML += "<img src='" + RimgPath + "arrow_right.gif'>"
			}
		}
		else
		{
			sHTML += "&nbsp;"
		}
		sHTML += "</td></tr></table></td>"
	}
	else
	{
		sHTML = "<td><img src='" + RimgPath + "trans.gif' height=2></td></tr><tr><td onmouseover='' bgcolor='#d0d0d0'><img src='" + RimgPath + "trans.gif' height=1></td></tr><tr><td><img src='" + RimgPath + "trans.gif' height=2></td>"
	}

	if ((Rorientation==1)||(Rmenu[menuId].levelId>0))
	{
		sHTML += "</tr>"
	}	
	return sHTML
}

function RclearAll(levelId, parentId) {

	if (levelId>0)
	{
		Border = subItemBorder 
		Background = subItemBackground 
	}
	else
	{
		Border = mainItemBorder 
		Background = mainItemBackground 
	}

	for (i=0;i<RmenuCounter;i++)
	{
		if (Rmenu[i].levelId==levelId)
		{
			if ((i!=RnNowAt) && (Rmenu[i].parentId==parentId) && (Rmenu[i].description!="-")) {
				lw_getObj("Rmenu_"+i).backgroundColor=Background;
				lw_getObj("Rmenu_"+i).borderColor=Border
			}
		}
	}

}

function RmapID (id) {
	for (var i=0;i<RmenuCounter;i++)
	{
		if (Rmenu[i].id==id)
		{
			return i
		}
	}
	return -1
}

function RshowSubmenu(menuId,trigger) {
	rw_menuId = menuId
	rw_trigger = trigger

	if (ns)
	{
		Rto1 = setTimeout("RshowActualSubmenu(rw_menuId,rw_trigger)",50)			
	}
	else
	{
		RshowActualSubmenu(rw_menuId,rw_trigger)
	}
}

function RshowActualSubmenu(menuId,trigger) {
	var nLevel = 0
	var leftpos = 0 
	var nIndex=0

	if (menuId>0)
	{
		lw_calcpos(trigger)

		for (var i=0;i<RmenuCounter;i++)
		{
			if (Rmenu[i].id==menuId)
			{	
				nLevel = Rmenu[i].levelId
				nIndex = i
			}
		}

		if ((Rorientation==1)||(Rmenu[nIndex].parentId>0))
		{
			lw_getObj("Rmenu_level_"+nLevel).top=lw_toppos
			leftpos = lw_leftpos + lw_width - 275

			if (nLevel==0) {
				leftpos -= 3
			}
		}
		else {
			lw_getObj("Rmenu_level_"+nLevel).top = lw_toppos + lw_height + 2
			leftpos = lw_leftpos
		}

		lw_getObj("Rmenu_level_"+nLevel).left=leftpos

		sHTML = "<table cellpadding=0 cellspacing=0 border=0>"
		for (var i=0;i<RmenuCounter;i++)
		{
			if (Rmenu[i].parentId==menuId)
			{
				sHTML += RdisplayMenuItem (i)
			}
		}
		sHTML += "</table>"

		document.getElementById("Rmenu_level_"+nLevel+"_content").innerHTML=sHTML
		lw_showLayer('Rmenu_level_'+nLevel)
	} 
}

function RhideSubmenu(levelId) {
	for (var cnt=levelId; cnt<RnumLevel; cnt++)
	{
		lw_hideLayerName("Rmenu_level_"+cnt)
	}
}

function RDrawMenu ()  {

	for (var i=0; i<RnumLevel ; i++)
	{
		lw_createLayer("Rmenu_level_"+i,0,0,0,0,"#000000","",100)
	}
	
	sHTML="<table width=100% cellpadding=2 cellspacing=0>"
	for (var i=0; i<RmenuCounter; i++)
	{
		if (Rmenu[i].parentId==0)
		{		
			sHTML += RdisplayMenuItem (i)
		}
		else if (Rmenu[i].parentId==-1)
		{		
			sHTML += "<tr><td><img src='trans' height=2></td></tr><tr bgcolor='"+mainItemBackground+"'><td style='padding:5px'><b>" + Rmenu[i].description + "</b></td></tr>"
		}
	}
	sHTML += "</table>"

	document.writeln(sHTML)

}

function RgetLevel (menuId) {
	var pId=menuId
	var nLevel=0

	while (pId!=0)
	{
		nLevel++
		for (var i=0;i<RmenuCounter;i++)
		{
			if (Rmenu[i].id==pId)
			{	
				pId = Rmenu[i].parentId
			}
		}
	}

	return nLevel
}

function RAddMenuItem (id, parentId, url, description, img)  {

	Rmenu[RmenuCounter++] = new RTmenu (id, parentId, url, description, img)

	if (parentId>0)
	{
		for (i=0;i<RmenuCounter;i++)
		{
			if (Rmenu[i].id==parentId)
			{
				Rmenu[i].numChild++
			}
		}
		Rmenu[RmenuCounter-1].levelId = RgetLevel(parentId)

		if ( RnumLevel < Rmenu[RmenuCounter-1].levelId)
		{	
			RnumLevel = Rmenu[RmenuCounter-1].levelId
		}
	}	 
	else if (parentId==0)
	{
		Rmenu[RmenuCounter-1].levelId = 0
	}
	else
	{
		Rmenu[RmenuCounter-1].levelId = -1
	}
}

function Rhandleonclick() {
	if (ns)
	{
		lw_closeAllLayers()
	}
	else
	{
		lw_closeAllLayers(event)
	}

	RresetMenu()
}

function Rhandlekeypress(e) {
	if (ns)
	{
		var keyCode = e.keyCode?e.keyCode:e.which?e.which:e.charCode;
		if ((keyCode==27)||(keyCode==1))
		{
			Rhandleonclick()
		}
	}
	else
	if ((event.keyCode==0)||(event.keyCode==27))
	{
		Rhandleonclick()
	}
	RresetMenu()
}

function RresetMenu () {
	for (i=0;i<RmenuCounter;i++)
	{
		if (Rmenu[i].levelId==0)
		{
			lw_getObj("Rmenu_"+i).backgroundColor=mainItemBackground
			lw_getObj("Rmenu_"+i).borderColor=mainItemBorder
		}
	}
}

document.onkeypress = Rhandlekeypress
document.onclick = Rhandleonclick

