function initMenues () {
	initMenu();
	initSubMenu();
}

var m_count = 0;
var m_clicked = 0;
var menu = new Array();
function clickMainMenu (number){
	if (menu[number].activLink && m_clicked!=number) {m_click(number);}
}
function menuObj(name, status, href, target, bolActivLink, bolHasSubmenu, bolIsCodeOnly, strAdditionalOnclickCode){
	this.name = name;
	if (bolActivLink) {
		this.out = new Image();
		this.out.src = m_dir + name + m_out + m_type;
		this.over = new Image();
		this.over.src = m_dir + name + m_ovr + m_type;
		this.sel = new Image ();
		this.sel.src = m_dir + name + m_sel + m_type;
	}
	else {
		this.out = new Image();
		this.out.src = m_dir + name;
	}
	this.activLink = bolActivLink;
	this.status = status;
	this.target = target;
	this.href = href;
	this.clicked = false;
	this.hasSubmenu = bolHasSubmenu;
	this.isCodeOnly = bolIsCodeOnly;
	this.AdditionalOnclickCode = strAdditionalOnclickCode;
}
function preloadMenuItem(name, status, href, target, bolActivLink, bolHasSubmenu, bolIsCodeOnly, strAdditionalOnclickCode){
	m_count++;
	menu[m_count] = new menuObj(name, status, href, target, bolActivLink, bolHasSubmenu, bolIsCodeOnly, strAdditionalOnclickCode);
}
function generateMenu () {
	var retValue = "";
	for (i=1;i<=m_count;i++) {
		retValue = retValue + "<td class=\"mainnavi\">";
		if (menu[i].activLink) {
			retValue = retValue + "<A HREF=\"" + menu[i].href + "\" target=\"" + menu[i].target + "\" onClick=\"menu[" + i + "].clicked=true;m_click(" + i + ");" + menu[i].AdditionalOnclickCode + "\" ";
			retValue = retValue + " onMouseOver=\"m_over(" + i + ");\" 	onMouseOut=\"m_doout(" + i + ");\" title=\"" + menu[i].status + "\">";
			retValue = retValue + "<IMG SRC=\"" + menu[i].out.src + "\" border=\"0\" name=\"" + menu[i].name + "\" height=\"" + m_imgHeight + "\"></A>";
		}
		else {
			if (!menu[i].isCodeOnly) {
				retValue = retValue + "<IMG SRC=\"" + menu[i].out.src + "\" width=\"" + menu[i].target + "\" height=\"" + m_imgHeight + "\" border=\"0\" name=\"" + menu[i].name + "\">";
			}
			else {
				retValue = retValue + menu[i].target;
			}
		}
		retValue = retValue + "</TD><td width=\"1\"><img src=\"grafx/whiteline.gif\" width=\"1\" height=\"18\"></td>";
	}
	return retValue;
}
function m_over (num) {
	if (document.images) {
		if (document.images[menu[num].name]) document.images[menu[num].name].src = menu[num].over.src;
	}
}
function m_doout (num) {
	if (document.images) {
		if (document.images[menu[num].name] && menu[num].clicked==false) document.images[menu[num].name].src = menu[num].out.src;
	}
}
function m_click(num) {
	if (document.images) {
		if (document.images[menu[num].name]) {
			if (m_clicked>0) {
				menu[m_clicked].clicked = false;
				if (document.images[menu[m_clicked].name]) document.images[menu[m_clicked].name].src = menu[m_clicked].out.src;
				if (menu[m_clicked].hasSubmenu) hide_layer("sm" + m_clicked + "x");
			}
			document.images[menu[num].name].src = menu[num].sel.src;
			if (menu[num].hasSubmenu) show_layer("sm" + num + "x");
			menu[num].clicked = true;
			var temp_m = m_clicked;
			var temp_s = s_clicked;
			m_clicked = num;
			s_clicked = "";
			if (temp_s!="") sm_doout (temp_m, temp_s, s_clicked_mNum, s_clicked_butNum);
			top.focus();
		}
	}	
}
var s_clicked = "";
var s_clicked_butNum = 0;
var s_clicked_mNum = 0;
var s_count = 0;
var subMenu = new Array();
function preloadSubMenu(menuItemNumber, toppos, leftpos){
	s_count++;
	var counter = 0;
	subMenu[s_count] = new subMenuObj(menuItemNumber, toppos, leftpos, s_count);
	for (i=3; i < preloadSubMenu.arguments.length; i++) {
		subMenu[s_count][i-3] = preloadSubMenu.arguments[i];
		if ((i-3)%4==0) { 
			subMenu[s_count].imgout[counter] = new Image ();
			subMenu[s_count].imgout[counter].src = s_dir + preloadSubMenu.arguments[i] + s_out + s_type; 
			subMenu[s_count].imgovr[counter] = new Image ();
			subMenu[s_count].imgovr[counter].src = s_dir + preloadSubMenu.arguments[i] + s_ovr + s_type; 
			subMenu[s_count].imgsel[counter] = new Image ();
			subMenu[s_count].imgsel[counter].src = s_dir + preloadSubMenu.arguments[i] + s_sel + s_type;
			subMenu[s_count].name[counter] = preloadSubMenu.arguments[i];
			counter ++;
		}
	}
	subMenu[s_count].length = preloadSubMenu.arguments.length-3;
}
function clickSubMenu (subMenuName) {
	// find main menu
	for (var i=1;i<=m_count;i++) {
		for (j=1;j<=s_count;j++) {
			if (i==subMenu[j].menuItem) {
				var counter = 1;
				for (k=1;k<=subMenu[j].length;k=k+4) {
					if (subMenuName == subMenu[j].name[counter-1]) {
						clickMainMenu (i);
						sm_click(i, subMenuName, subMenu[j].menuNumber, counter-1);
						break;
					}
					counter++;
				}
			}
		}
	}
}
function subMenuObj(menuItemNumber, toppos, leftpos, MenuNr){
	this.menuItem = menuItemNumber;
	this.top = toppos;
	this.left = leftpos;
	this.menuNumber = MenuNr;
	this.imgout = new Array ();
	this.imgovr = new Array ();
	this.imgsel = new Array ();
	this.name = new Array ();
}
function generateSubMenu() {
	var retValue = "";
	for (i=1;i<=s_count;i++) {
		retValue = retValue + renderLayerStartup("sm" + subMenu[i].menuItem + "x", subMenu[i].top, subMenu[i].left);
		retValue = retValue + "<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0><TR>";
		for (j=0;j<subMenu[i].length;j=j+4) {
			retValue = retValue + "<TD><A HREF=\"" + subMenu[i][j+1] + "\" target=\"" + subMenu[i][j+2] + "\" onClick=\"sm_click(" + subMenu[i].menuItem + ", '" + subMenu[i][j] + "', " + subMenu[i].menuNumber + ", " + (j/4) + ");\" ";
			retValue = retValue + " onMouseOver=\"sm_over(" + subMenu[i].menuItem + ", '" + subMenu[i][j] + "', " + subMenu[i].menuNumber + ", " + (j/4) + ");\"";
			retValue = retValue + "	onMouseOut=\"sm_doout(" + subMenu[i].menuItem + ", '" + subMenu[i][j] + "', " + subMenu[i].menuNumber + ", " + (j/4) + ");\" Title=\"" + subMenu[i][j+3] + "\">";
			retValue = retValue + "<IMG SRC=\"" + subMenu[i].imgout[j/4].src + "\" border=\"0\" name=\"" + subMenu[i][j] + "\"></A></TD>";
		}
		retValue = retValue + "</TR></TABLE>";
		retValue = retValue + renderLayerEnd();
	}
	return retValue;
}
function sm_over (menuNum, butName, mNum, butNum) {
	var l = "sm" + menuNum + "x";
	var d = (isNS) ? document.layers[l].document : document;
	if (d.images[butName]) d.images[butName].src = subMenu[mNum].imgovr[butNum].src;
}
function sm_doout (menuNum, butName, mNum, butNum) {
	var l = "sm" + menuNum + "x";
	var d = (isNS) ? document.layers[l].document : document;
	if (d.images[butName] && s_clicked!=butName) d.images[butName].src = subMenu[mNum].imgout[butNum].src;

}
function sm_click(menuNum, butName, mNum, butNum) {
	var l = "sm" + menuNum + "x";
	var d = (isNS) ? document.layers[l].document : document;
	if (s_clicked != "") {
		if (d.images[s_clicked]) d.images[s_clicked].src = subMenu[s_clicked_mNum].imgout[s_clicked_butNum].src;
	}
	if (d.images[butName]) d.images[butName].src = subMenu[mNum].imgsel[butNum].src;
	s_clicked = butName;
	s_clicked_mNum = mNum;
	s_clicked_butNum = butNum;
	top.focus();
}

