/*

   mirtol.menu.js
  =--------------=


  ©2002 Mirtol IST
  Menu Script

*/

// Global vars
var mm_MENU;
var mm_MENUS;
var mm_MB;
var mm_MBS;
var mm_To, mm_cMnu;

var Netscape = 1;
var Explorer = 2;


if(navigator.appName == "Netscape")
    var Browser = Netscape;
else
    var Browser = Explorer;			// Default to Explorer settings as more standard

var sBG = 'background-color';
var sVis = 'visible';
var sInvis = 'hidden';

function mm_Start()
{
	mm_MENU = new Array();
	mm_MENUS = 0;
	mm_MB = new Array();
	mm_MBS = 0;

	mm_cMnu = -1;

	return;
}

function mm_CreateMenu(tCaption, tComment, iImage, tHREF, tTARGET)
{
	var h;

	h = mm_MENUS++;
	mm_MENU[h] = new Object();
	mm_MENU[h].Caption = tCaption;
	mm_MENU[h].Comment = tComment;
	mm_MENU[h].Image = iImage;
	mm_MENU[h].ItemCount = 0;
	mm_MENU[h].HREF = tHREF;
	mm_MENU[h].TARGET = tTARGET;
	mm_MENU[h].Item = new Array();
	mm_MENU[h].cMnu = -1;

	return h;
}

function mm_InsertMenuItem(h, iIndex, tCaption, tComment, iImage, tHREF, tTARGET, hSubMenu)
{
	if(iIndex < mm_MENU[h].ItemCount)
	{
		var n;

		for(n = mm_MENU[h].ItemCount; n > iIndex; n--)
		{
			mm_MENU[h].Item[n] = mm_MENU[h].Item[n-1];
			delete mm_MENU[h].Item[n-1];
		}
	}
	if(iIndex > mm_MENU[h].ItemCount)
		iIndex = mm_MENU[h].ItemCount;

	mm_MENU[h].ItemCount++;

	mm_MENU[h].Item[iIndex] = new Object();
	mm_MENU[h].Item[iIndex].Caption = tCaption;
	mm_MENU[h].Item[iIndex].Comment = tComment;
	mm_MENU[h].Item[iIndex].Image = iImage;
	mm_MENU[h].Item[iIndex].HREF = tHREF;
	mm_MENU[h].Item[iIndex].TARGET = tTARGET;
	mm_MENU[h].Item[iIndex].SubMenu = hSubMenu;

	return;
}

function mm_AddToMenuBar(hMenu)
{
	mm_MB[mm_MBS++] = hMenu;

	return;
}

function mm_ShowMenu()
{
	var n, m, sz;
	var styles, divs;

	styles = "\n\n<STYLE TYPE=\"text/css\">\n";
	divs = "\n";
	for(n = 0; n < mm_MENUS; n++)
	{
		styles += "#mm_styleMENU_" + n + "\t{position:absolute; " + sBG + ":"
				+ mm_styleMenuBackgroundColour + "; border-color:" + mm_styleMenuBorderColour
				+ "; border-width:" + mm_styleMenuBorderWidth + "; border-style:" + mm_styleMenuBorderStyle
				+ "; visibility:" + sInvis + ";}\n";
		styles += "#mm_styleMENU_" + n + "__\t{border-color:" + mm_styleMenuBorder2Colour
				+ "; border-width:" + mm_styleMenuBorder2Width + "; border-style:" + mm_styleMenuBorder2Style
				+ ";}\n";
		divs += "\t<DIV ID=\"mm_styleMENU_" + n + "\"><DIV ID=\"mm_styleMENU_" + n + "__\"><TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0><TR><TD>\n";
		for(m = 0; m < mm_MENU[n].ItemCount; m++)
		{
			styles += "#mm_styleMENU_" + n + "_ITEM_" + m + "\t{"
					+ " background-color:" + mm_styleMenuItemBackgroundColour
					+ "; layer-background-color:" + mm_styleMenuItemBackgroundColour + "; padding:" + mm_styleMenuItemPadding + "; border-width:"
					+ mm_styleMenuItemBorderWidth + "; border-color:" + mm_styleMenuItemBorderColour + "; border-style:"
					+ mm_styleMenuItemBorderStyle + "; cursor:pointer; white-space:nowrap; text-align:left;"
					+ (mm_MENU[n].Item[m].SubMenu == null ? "" : " background-image:url(" + mm_imageSubmenu
					+ "); background-repeat:no-repeat; background-position:right center;") + " }\n";
//			divs += "\t\t<DIV ID=\"mm_styleMENU_" + n + "_ITEM_" + m + "\" onMouseOver=\"return mm_overItem(" + n
//					+ ", " + m + ");\" onMouseOut=\"return mm_leftItem(" + n + ", " + m
//					+ ");\" onClick=\"mm_styleMENU_" + n + "_ITEMANCHOR_" + m + ".click();\"><TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR VALIGN=Center><TD ALIGN=Left STYLE='white-space:nowrap;'><A HREF=\""
//					+ mm_MENU[n].Item[m].HREF + "\" ID=\"mm_styleMENU_" + n + "_ITEMANCHOR_" + m + "\""
//					+ " TARGET=\"" + mm_MENU[n].Item[m].TARGET + "\" CLASS=\"mm_styleMenuItem\">"
//					+ mm_MENU[n].Item[m].Caption + "</A></TD><TD ALIGN=Right CLASS=\"mm_styleMenuItem\">"
//					+ (mm_MENU[n].Item[m].SubMenu == null ? "" : "&nbsp;<IMG SRC=\"" + mm_imageSubmenu	+ "\" BORDER=0 ALT=\"\">")
//					+ "</TD></TR></TABLE></DIV>\n";

			divs += "\t\t<div id=\"mm_styleMENU_" + n + "_ITEM_" + m + "\" onmouseover=\"return mm_overItem(" + n
					+ ", " + m + ");\" onmouseout=\"return mm_leftItem(" + n + ", " + m
					+ ");\" onclick=\"window.open('" + mm_MENU[n].Item[m].HREF + "', '" + mm_MENU[n].Item[m].TARGET + "');\">"
//					+ (mm_MENU[n].Item[m].SubMenu == null ? "" : "<div style=\"position:absolute; float:right; left:12px;\"><IMG SRC=\"" + mm_imageSubmenu	+ "\" BORDER=0 ALT=\"\"></div>")
					+ "<A HREF=\""
					+ mm_MENU[n].Item[m].HREF + "\" ID=\"mm_styleMENU_" + n + "_ITEMANCHOR_" + m + "\""
					+ " TARGET=\"" + mm_MENU[n].Item[m].TARGET + "\" CLASS=\"mm_styleMenuItem\">"
					+ mm_MENU[n].Item[m].Caption + "</A>"
					+ "</DIV>\n";

		}
		divs += "</TD></TR></TABLE>\t</DIV></DIV>\n";
	}
	styles += ".mm_styleMenuItem\t{" + mm_styleMenuItem_NORM + "}\n";
	styles += ".mm_styleMenuItem:HOVER\t{" + mm_styleMenuItem_HOVR + "}\n";
	styles += ".mm_styleMenuItem:LINK\t{" + mm_styleMenuItem_LINK + "}\n";
	styles += ".mm_styleMenuItem:VISITED\t{" + mm_styleMenuItem_VIST + "}\n";
	styles += ".mm_styleMenu\t{" + mm_styleMenu_NORM + "}\n";
	styles += ".mm_styleMenu:HOVER\t{" + mm_styleMenu_HOVR + "};\n";
	styles += ".mm_styleMenu:LINK\t{" + mm_styleMenu_LINK + "}\n";
	styles += ".mm_styleMenu:VISITED\t{" + mm_styleMenu_VIST + "}\n";
	styles += ".mm_styleMenuBar\t{" + mm_styleMenuBar_NORM + "}\n";
	styles += ".mm_styleMenuBar:HOVER\t{" + mm_styleMenuBar_HOVR + "}\n";
	styles += ".mm_styleMenuBar:LINK\t{" + mm_styleMenuBar_LINK + "}\n";
	styles += ".mm_styleMenuBar:VISITED\t{" + mm_styleMenuBar_VIST + "}\n";

	styles += "#mm_styleMB\t{position:absolute; left:0; top:0; border-width:"
					+ mm_styleMenuBarBorderWidth + "; padding:" + mm_styleMenuBarPadding + "; margin:" + mm_styleMenuBarMargin + "; border-color:" + mm_styleMenuBarBorderColour + "; border-style:"
					+ mm_styleMenuBarBorderStyle + "; background-color:" + mm_styleMenuBarBackgroundColour
					+ "; white-space:nowrap;}\n";
	divs += "\t<DIV ID=\"mm_styleMB\" VALIGN=Top>\n";
	for(n = 0; n < mm_MBS; n++)
	{
		styles += "#mm_styleMB_" + n + "\t{position:relative; display:inline; padding:" + mm_styleMenuBarItemPadding + "; cursor:pointer; white-space:nowrap; background-color:" + mm_styleMenuBarBackgroundColour
					+ "; border-style:" + mm_styleMenuBarItemBorderStyle + "; border-width:" + mm_styleMenuBarItemBorderWidth
					+ "; border-color:" + mm_styleMenuBarItemBorderColour + ";}\n"; 
		divs += "<DIV ID=\"mm_styleMB_" + n
					+ "\" onMouseOver=\"return mm_dropMenu(" + n + ");\" onMouseOut=\"return mm_leftMenu(" + n
					+ ");\" onclick=\"window.open('" + mm_MENU[mm_MB[n]].HREF + "', '" + mm_MENU[mm_MB[n]].TARGET + "');\"><A HREF=\""
					+ mm_MENU[mm_MB[n]].HREF + "\" TARGET=\"" + mm_MENU[mm_MB[n]].TARGET + "\" CLASS=\"mm_styleMenuBar\">"
					+ mm_MENU[mm_MB[n]].Caption + "</A></DIV>";
	}
	divs += "\t</DIV>\n";

	styles += "</STYLE>\n\n";
	
	document.write(styles);
	document.write(divs);

return;
	// resize items :o)
	for(n = 0; n < mm_MENUS; n++)
	{
		mnu = document.getElementById("mm_styleMENU_" + n);
		ww = mnu.offsetWidth;
		for( m = 0; m < mm_MENU[n].ItemCount; m++)
		{
			mi = document.getElementById("mm_styleMENU_" + n + "_ITEM_"+m);
			mi.style.width = ww;
		}
	}

	return;
}

function mm_dropMenu(nMB)
{
	if(mm_cMnu != -1)
		mm_hideMenu(mm_cMnu);
	clearTimeout(mm_To);

	mnu = document.getElementById("mm_styleMENU_" + mm_MB[nMB]);
	mbo = document.getElementById("mm_styleMB_" + nMB);

	mbo.style.backgroundColor = mm_styleMenuHighlightBackgroundColour;
	if(mm_MENU[mm_MB[nMB]].ItemCount)
	{
		mnu.style.left = mbo.offsetLeft + "px";
		mnu.style.top = mbo.offsetTop + mbo.offsetHeight + (Browser == Netscape ? 1 : 0) + "px";
		mnu.style.visibility = sVis;
	}
	mm_MENU[mm_MB[nMB]].nMB = nMB;
	mm_MENU[mm_MB[nMB]].ParentMenu = -1;
	mm_cMnu = mm_MB[nMB];

	window.status = mm_MENU[mm_MB[nMB]].Comment;

	return true;
}

function mm_leftMenu(nMB)
{
	clearTimeout(mm_To);
	mm_To = setTimeout("mm_hideMenu(" + mm_MB[nMB] + ");", 800);
	window.status = "";

	return true;
}

function mm_hideMenu(n)
{
	if(mm_MENU[n].ParentMenu != -1)
	{
		mm_hideMenu(mm_MENU[n].ParentMenu);
		return;
	}
	if(mm_MENU[n].cMnu != -1)
		mm_hideSubMenu(n, mm_MENU[n].cMnu);
	mbo = document.getElementById("mm_styleMB_" + mm_MENU[n].nMB);
	mnu = document.getElementById("mm_styleMENU_" + n);

	mbo.style.backgroundColor = mm_styleMenuBarBackgroundColour;
	mnu.style.visibility = sInvis;
	mm_cMnu = -1;

	return true;
}

function mm_overItem(n, m)
{
	clearTimeout(mm_To);

	mi = document.getElementById("mm_styleMENU_" + n + "_ITEM_" + m);
	mi.style.backgroundColor = mm_styleMenuItemHighlightBackgroundColour;

	if(mm_MENU[n].Item[m].SubMenu != null)
	{	
		clearTimeout(mm_MENU[n].To);
		mm_MENU[n].To = setTimeout("mm_showSubMenu(" + n + ", " + m + ");", 200);
	}
	else
		if(mm_MENU[n].cMnu != -1 && mm_MENU[n].cMnu != m)
			mm_MENU[n].To = setTimeout("mm_hideSubMenu(" + n + ", " + mm_MENU[n].cMnu + ");", 400);

	window.status = mm_MENU[n].Item[m].Comment;

	return true;
}

function mm_showSubMenu(n, m)
{
	if(mm_MENU[n].cMnu != -1 && mm_MENU[n].cMnu != m)
		mm_hideSubMenu(n, mm_MENU[n].cMnu);

	mnu = document.getElementById("mm_styleMENU_" + mm_MENU[n].Item[m].SubMenu);
	mo = document.getElementById("mm_styleMENU_" + n);
	mio = document.getElementById("mm_styleMENU_" + n + "_ITEM_" + m);

	if(mo.style.visibility != sVis)
		return;

	mnu.style.left = mo.offsetLeft + mio.offsetLeft + mio.offsetWidth + 1 + "px";
	mnu.style.top = mo.offsetTop + mio.offsetTop + "px";
	mnu.style.visibility = sVis;
	mm_MENU[n].cMnu = m;
	mm_MENU[mm_MENU[n].Item[m].SubMenu].ParentMenu = n;

	window.status = mm_MENU[n].Comment;

	return true;
}

function mm_leftItem(n, m)
{
	clearTimeout(mm_To);
	clearTimeout(mm_MENU[n].To);
	mm_To = setTimeout("mm_hideMenu(" + n + ");", 800);
	
	mi = document.getElementById("mm_styleMENU_" + n + "_ITEM_" + m);
	mi.style.backgroundColor = mm_styleMenuItemBackgroundColour;

	window.status = "";

	return true;
}

function mm_hideSubMenu(n, m)
{
	if(mm_MENU[mm_MENU[n].Item[m].SubMenu].cMnu != -1)
		mm_hideSubMenu(mm_MENU[n].Item[m].SubMenu, mm_MENU[mm_MENU[n].Item[m].SubMenu].cMnu);

	mnu = document.getElementById("mm_styleMENU_" + mm_MENU[n].Item[m].SubMenu);
	mnu.style.visibility = sInvis;
	if(m == mm_MENU[n].cMnu)
		mm_MENU[n].cMnu = -1;

	return true;
}