var isNetscape=false;
var isNS4 = false;
//typeOfCursor="hand";
if (navigator.appName=='Netscape'){isNetscape = true;if (navigator.product!='Gecko'){isNS4=true;}else{document.all=document.getElementsByTagName('*');}}
var agent=navigator.userAgent
var opera=(agent.indexOf("Opera")!=-1)?true:false
var isNS61 = isNetscape? ((parseInt(navigator.productSub)<=20021119)?true:false) : false
var ie5gt = (navigator.appVersion.indexOf("MSIE 5.0")>0 || (!document.getElementById&&document.all) )? false: true
var mDS={
	color:{
		normal:"#676767",
		hover:"#676767",
		selected:"#676767"
	},
	bgColor:{
		normal:"#ffffff",
		hover:"#bcd5bc",
		selected:"#ffffff"
	},
	font:{
		family:"Tahoma, Verdana, Geneva, Arial, Helvetica, sans-serif",
		size:12,
		weight:"normal",
		style:"normal"
	},
	padding:{
		vertical:5,
		left:4
	},
	border:{
		width:1,
		color:"#65C1FF"
	},
	separator:{
		width:1,
		color:"#65C1FF"
	}//,
//	submenu:{
//		img:"/images/navigate/arrow.gif",
//		imghi:"/images/navigate/arrow.gif",
//		width:7,
//		height:7
//	}//,
//	nosubmenu:{
///		img:"/images/empty.gif",
//		imghi:"/images/empty.gif",
//		width:0,
//		height:0
//	}
}

function MeMenu(label, width, x, y, style, doHide, onHide ) {
this.parent = null
this.items = new Array()

this.label=label
this.width=width||100
this.height=0
style=style||mDS;
if(!style.padding)style.padding={}
style.padding.vertical=style.padding.vertical||(mDS.padding&&mDS.padding.vertical)||0;
style.padding.vertical=style.padding.left||(mDS.padding&&mDS.padding.left)||0;
if(!style.border)style.border={}
style.border.width=style.border.width||(mDS.border&&mDS.border.width)||0;
if(!style.separator)style.separator={}
style.separator.width=style.separator.width||(mDS.separator&&mDS.separator.width)||0;
if(!style.submenu)style.submenu={}
style.submenu.width=style.submenu.width||(mDS.submenu&&mDS.submenu.width)||0;
style.submenu.imghi=style.submenu.imghi||style.submenu.img
if(!style.nosubmenu)style.nosubmenu={}
if(style.nosubmenu.img&&!style.nosubmenu.imghi)style.nosubmenu.imghi=style.nosubmenu.img
this.style=style
this.doHide=doHide
this.onHide=onHide||null
this.px=x||0
this.py=y||0

if (!window.MeMenus) window.MeMenus=new Array()
this.menuId=window.MeMenus.length
window.MeMenus[window.MeMenus.length]=this

this.addItem=addMeMenuItem
this.writeMenu=writeMenu
this.menuOn=memeActiveMenu
this.menuOnXY=memeActiveMenuXY
this.menuOff=memePassiveMenu
}
function Item(){};

function addMeMenuItem(label, click, isCurrent) {
var ii=new Item()
ii.menu=this
ii.label=label
ii.click=click||""
isCurrent=isCurrent||false
ii.ncolor=isCurrent?this.style.color.selected:this.style.color.normal
ii.nbgcolor=isCurrent?this.style.bgColor.selected:this.style.bgColor.normal

if (label.items) {
	ii.hasSubmenu=true
	ii.hasSImage=true
	ii.label=label.label
	label.parent=ii
	ii.submenu=label
} else {
	ii.hasSubmenu=false
	ii.hasSImg=this.style.nosubmenu.img!=null
	ii.label=label
	ii.submenu=null
}
ii.isSeparator=false
var ind=this.items.length
ii.ind=ind
this.items[ind]=ii
}

function writeMenu(menu) {
var m=menu||this
if (!window.MeMenuRoots) window.MeMenuRoots=new Array()
var root=window.MeMenuRoots.length
window.MeMenuRoots[root]=new Array()
MeMeWriteMenu(m,root)
}

function MeMeWriteMenu(menu, root, xx, yy, zz) {
var m=menu||this
var typeOfCursor=isNetscape?"pointer":"hand";
m.root=root
window.MeMenuRoots[root][window.MeMenuRoots[root].length]=m
var x=xx||0
var y=yy||0
var z=zz||100
if (null==m.parent) {
	x=m.px; y=m.py;
} else {
	x+=m.px; y+=m.py;
}
var i, ii, k, kk
var s=m.style
var w=m.width + 2*s.border.width
var hi=2*s.padding.vertical+s.font.size+(s.font.size%2)
var h=m.items.length*(hi+s.separator.width)-s.separator.width
m.height=isNS4?(h+2*s.border.width):h

for (i=0; i<m.items.length; ++i) {
	ii=m.items[i]
	if (ii.hasSubmenu)
		MeMeWriteMenu(ii.submenu, root, x+w, y+s.border.width + (hi+s.separator.width)*i, z+10)
}


var outText="<div id='mecont"+m.menuId+
	"' style='position:absolute;top:"+y+";left:"+x+
	";width:"+w+";height:"+(h+2*s.border.width)+
	";visibility:"+((1==m.doHide)?"hidden":"visible")+";z-index:"+(196+z)+";'>"
if (ie5gt && !opera && !isNS61)
	outText+="<iframe id='iff"+m.menuId+"' name='iff"+m.menuId+"' frameborder='0' src='' style='position:absolute;border-width:0;border-style:none;width:"+ w + ";height:"+ (h+2*s.border.width) +"px;z-index:"+(0+z)+";'></iframe>"
document.writeln(outText)
outText="<div oncontextmenu='return false;'"+
	" style='position:absolute"+
	";width:"+ w + ";height:"+ (h+2*s.border.width) +
	";background-color:"+ s.border.color +
	";z-index:"+(198+z)+";'>" +
	"<div id='meins"+m.menuId+
	"' style='position:relative;top:"+ s.border.width +
	";left:"+ s.border.width +";width:"+ m.width +
	";height:"+ h + ";background-color:"+ s.separator.color +";'>"
document.writeln(outText)

for (k=0; k<m.items.length; ++k) {
kk = m.items[k]

if (kk.isSeparator) {
	document.write(ll.label)
} else {
		document.write("<div id='meitem-"+m.menuId+"-"+k+
"' onMouseOver='memeOn("+m.menuId+","+k+
")' onMouseOut='memeOff("+m.menuId+","+k+
")' oncontextmenu='return false;' onClick=\"memeHideAll(-1);"+kk.click+
"\" style='position:absolute;top:"+(k*(hi+s.separator.width))+
";left:"+0+
";width:"+m.width+
";height:"+hi+
";cursor:"+typeOfCursor+";background-color:"+kk.nbgcolor+
";'>"+
"<div id='memeitem-"+m.menuId+"-"+k+
"' style='position:absolute;top:"+(s.padding.vertical-2)+
";left:"+s.padding.left+
";color:"+kk.ncolor+
";font-size:"+s.font.size+
"px;font-family:"+s.font.family+
";font-weight:"+s.font.weight+
";font-style:"+s.font.style+
";width:"+m.width+
//";text-align:center"+
";'>"+kk.label+"</div></div>"+
"<DIV"+
" onMouseOver='memeOn("+m.menuId+","+k+
")' onMouseOut='memeOff("+m.menuId+","+k+
")' oncontextmenu='return false;' onClick=\"memeHideAll(-1);"+kk.click+
"\" STYLE='position:absolute;cursor:"+typeOfCursor+";left:"+(m.width-(kk.hasSImg?s.submenu.width:0)+s.border.width)+
";top:"+(k*(hi+s.separator.width)+s.padding.vertical-2)+";'>"+
(kk.hasSImg?("<IMG alt='' SRC='"+(kk.hasSubmenu?s.submenu.img:s.nosubmenu.img)+
"' name='meimg-"+m.menuId+"-"+k+
"' width='"+(kk.hasSubmenu?s.submenu.width:(s.nosubmenu.width?s.nosubmenu.width:s.submenu.width))+
"' height='"+(kk.hasSubmenu?s.submenu.height:(s.nosubmenu.height?s.nosubmenu.height:s.submenu.height))+
"' />"):"")+
"</DIV>")
kk.l=document.all["meitem-"+m.menuId+"-"+k]
kk.l1=document.all["memeitem-"+m.menuId+"-"+k]
kk.img=document.images["meimg-"+m.menuId+"-"+k]
document.all["meitem-"+m.menuId+"-"+k].item=kk
}
}
document.write("</div></div></div>")
m.cont = document.all["mecont"+m.menuId]
}
var memeTimeout=null

function memeHi(ii) {
clearTimeout(memeTimeout)
ii.l.style.backgroundColor=ii.menu.style.bgColor.hover
ii.l1.style.color=ii.menu.style.color.hover
if(ii.hasSImg)
	ii.img.src=ii.hasSubmenu?ii.menu.style.submenu.imghi:ii.menu.style.nosubmenu.imghi
ii.menu.hilited=ii
}

function memeLo(ii) {
ii.l.style.backgroundColor=ii.nbgcolor
ii.l1.style.color=ii.ncolor
if(ii.hasSImg)
	ii.img.src=ii.hasSubmenu?ii.menu.style.submenu.img:ii.menu.style.nosubmenu.img
ii.menu.hilited=null
if (ii.hasSubmenu)
	memeHide(ii.submenu)
}

var MeMeRootHi = null;

function memeOn(menuId, it) {
var m=window.MeMenus[menuId]
if (m.root!=MeMeRootHi)
	memeHideAll(m.root)
MeMeRootHi=m.root
var ii=m.items[it]
var hi=m.hilited
if (hi!=null) {
	if (ii!=hi && hi.hasSubmenu)
		memeHide(hi.submenu)
	memeLo(m.hilited)
}
memeHi(ii)
if(m.parent!=null)
	memeHi(m.parent)
clearTimeout(memeTimeout)
if(ii.hasSubmenu)
	memeActivateMenu(ii.submenu)
}

var memeDefTimeout=1000

function memeActiveMenu(ev, rightClick) {
clearTimeout(memeTimeout)
var m=this
if (m.root!=MeMeRootHi)
memeHideAll(m.root)
MeMeRootHi=m.root
if (ev != null) {
	if (rightClick && ev.button!=2) return true
	var cy=ev.clientY+m.py+m.height
	cy=(cy>document.body.clientHeight)?(document.body.clientHeight-cy-2):0
	var cx=ev.clientX+m.px+m.width;
	cx=(cx>document.body.clientWidth)?(document.body.clientWidth-cx-2):0
	m.cont.style.left=ev.clientX+document.body.scrollLeft+m.px+cx
	m.cont.style.top=ev.clientY+document.body.scrollTop+m.py+cy
}
memeActivateMenu(m)
clearTimeout(memeTimeout)
return false
}

function memeActiveMenuXY(x, y) {
clearTimeout(memeTimeout)
var m=this
if (m.root!=MeMeRootHi)
memeHideAll(m.root)
MeMeRootHi=m.root
m.cont.style.left=x
m.cont.style.top=y
memeActivateMenu(m)
clearTimeout(memeTimeout)
return false
}

function memeActivateMenu(m) {
m.cont.style.visibility="visible"
if (m.hilited!=null)
	memeLo(m.hilited)
}

function memePassiveMenu() {
clearTimeout(memeTimeout)
memeTimeout=setTimeout("memeHideAll(-1)",memeDefTimeout)
}

function memeOff(menuId, it) {
var m=window.MeMenus[menuId]
var ii=window.MeMenus[menuId].items[it]
var hi=m.hilited
memeTimeout = setTimeout("memeHideAll(-1)",memeDefTimeout)
}

function memeHide(m) {
if (1==m.doHide)
	m.cont.style.visibility="hidden"
if (m.onHide!=null) eval(m.onHide)
if (m.hilited!=null) {
	if (m.hilited.hasSubmenu)
		memeHide(m.hilited.submenu)
	memeLo(m.hilited)
}
}

function memeHideAll(root) {
for (var i=0; i<window.MeMenuRoots.length; ++i)
	if (i!=root)
		for (var j=0; j<window.MeMenuRoots[i].length; ++j)
			memeHide(window.MeMenuRoots[i][j])
MeMeRootHi = null
}
