	var menuItems = new Array();
	window.onerror = null;
	var bName = navigator.appName;
	var bVer = parseInt(navigator.appVersion);
	var IE4 = (bName == "Microsoft Internet Explorer" && bVer >= 4);
	var menuActive = 0;
	var menuOn = 0;
	var onLayer;
	var timeOn = null;
	var item;

	function showLayer(layerName,aa){
		var x =document.getElementById(aa);
		var tt =findPosX(x);
		var ww =findPosY(x)+ objHeight(x);

		if (timeOn != null) {
			clearTimeout(timeOn);
			hideLayer(onLayer);
		}
		if (IE4) {
			var layers = eval('document.all["'+layerName+'"].style');
			layers.left = tt;
			layers.top = ww;
			eval('document.all["'+layerName+'"].style.visibility="visible"');
		} else {
			if(document.getElementById){
				var elementRef = document.getElementById(layerName);
				if((elementRef.style)&& (elementRef.style.visibility!=null)){
					elementRef.style.visibility = 'visible';
					elementRef.style.left = tt;
					elementRef.style.top = ww;
				}
			}
		}
		onLayer = layerName
	}

	function hideLayer(layerName){
		if (menuActive == 0) {
			if (IE4){
				eval('document.all["'+layerName+'"].style.visibility="hidden"');
			} else {
				if(document.getElementById){
					var elementRef = document.getElementById(layerName);
					if((elementRef.style)&& (elementRef.style.visibility!=null)){
						elementRef.style.visibility = 'hidden';
					}
				}
			}
		}
	}

	function btnTimer() {
		timeOn = setTimeout("btnOut()",200)
	}

	function btnOut(layerName){
		if (menuActive == 0){
			hideLayer(onLayer)
		}
	}

	function menuOver(itemName,ocolor){
		item=itemName;
		itemName.style.backgroundColor = ocolor; //background color change on mouse over
		clearTimeout(timeOn);
		menuActive = 1
	}

	function menuOut(itemName,ocolor){
		if(item) {
			itemName.style.backgroundColor = ocolor;
		}
		menuActive = 0
		timeOn = setTimeout("hideLayer(onLayer)", 100)
	}

	function findPosX(obj) {
		var curleft = 0;
		if (obj.offsetParent) {
			while (obj.offsetParent) {
				curleft += obj.offsetLeft
				obj = obj.offsetParent;
			}
		} else if (obj.x) {
			curleft += obj.x;
		}
		return curleft;
	}

	function findPosY(obj) {
		var curtop = 0;
		if (obj.offsetParent) {
			while (obj.offsetParent) {
				curtop += obj.offsetTop
				obj = obj.offsetParent;
			}
		} else if (obj.y) {
			curtop += obj.y;
		}
		return curtop;
	}

	function objHeight(obj) {
		var curheight = 0;
		if(obj.offsetHeight) {
			curheight =  obj.offsetHeight;
		} else if (obj.clip) {
			curheight =  obj.clip.height;
		}
		return curheight;
	}

	function objWidth(obj) {
		var curwidth = 0;
		if(obj.offsetWidth) {
			curwidth = obj.offsetWidth;
		} else if (obj.clip) {
			curwidth = obj.clip.width;
		}
		return curwidth;
	}

	function menuItem(id, caption, href) {
		this.id = id;
		this.caption = caption;
		this.href = href;
		this.subitems = new Array();
	}

	function findIndex(id) {
		for (var i=0; i<menuItems.length; i++) {
			if (menuItems[i].id == id) { return i; }
		}
		return -1;
	}

	function menuMOver(obj) {
		showLayer(obj.id + "sub", obj.id)
	}
	function menuMOut(obj) {
		btnTimer()
	}

	function itemString(obj) {
		var tout = "<a ";
		if (location.href.indexOf(obj.href) > -1) {
			tout += "href='javascript:void(0);' disabled "
		} else {
			tout += "href='" + obj.href +"' "
		}
		tout += ">" + obj.caption + "</a>"
		return tout;
	}

	function addItem(id, caption, href) {
		menuItems[menuItems.length]= new menuItem(id, caption, href);
	}
	function addSubItem(id, caption, href) {
		var idx = findIndex(id);
		if (idx > -1) {
			menuItems[idx].subitems[menuItems[idx].subitems.length] = new menuItem(id, caption, href) ;
		}
	}
	function showMenu() {
		var sout = "";
		var tout = "<table class=menubar cellspacing=0 cellpadding=0 border=0><tr>";
		for (var i=0; i<menuItems.length; i++) {
			mstring = "onmouseover=showLayer('" + menuItems[i].id + "sub','" + menuItems[i].id + "') ";
			mstring += "onmouseout=btnTimer()";

			if (menuItems[i].subitems.length > 0) {
				sout += "<table class=menuitems id='" + menuItems[i].id + "sub' style='position:absolute; visibility:hidden;' " + mstring + " >";
				for (var v=0; v<menuItems[i].subitems.length; v++) {
					sout += "<tr><td>" + itemString(menuItems[i].subitems[v]) + "</td></tr>";
				}
				sout += "</table></div>";
				tout += "<td id='" + menuItems[i].id + "' " + mstring + " >";
			} else {
				tout += "<td id='" + menuItems[i].id + "'>";
			}
			tout += itemString(menuItems[i]) + "</td>";
		}
		tout += "<td width=100%></td></tr></table>"
		document.writeln(tout + sout);
	}

	function showMiniMenu() {
		var tout = "";
		for (var i=0; i<menuItems.length; i++) {
			if ( menuItems[i].href != "javascript:void(0);" ) {
				if (tout.length>0) { tout += " | "; }
				tout += "<a href='" + menuItems[i].href + "'><nobr>"
				tout += menuItems[i].caption + "</nobr></a>";
			}
			for (var v=0; v<menuItems[i].subitems.length; v++) {
				if (tout.length>0) { tout += " | "; }
				tout += "<a href='" + menuItems[i].subitems[v].href + "'><nobr>"
				tout += menuItems[i].subitems[v].caption + "</nobr></a>";
			}
		}
		document.write("<div id=minimenu>" + tout + "</div>");
	}

	function parsehref(href) {
		var test = href.split("/");
		test = test[test.length-1];
		test = test.split("?")[0];
		return test;
	}

	/* var temp = parsehref(location.href);
	if (temp.length == 0) {
		location.href += "index.html";
	}
	*/

