/*
	Revision History:
	2006-09-28	ML	Added MM_preloadImages(), MM_nbGroup(), & MM_findObj() to provide menubar support.
*/

var mmOpenContainer = null;
var mmOpenMenus = null;
var mmHideMenuTimer = null;

function MM_menuStartTimeout(hideTimeout) {
	mmHideMenuTimer = setTimeout("MM_menuHideMenus()", hideTimeout);	
}

function MM_menuHideMenus() {
	MM_menuResetTimeout();
	if(mmOpenContainer) {
		var c = document.getElementById(mmOpenContainer);
		c.style.visibility = "inherit";
		mmOpenContainer = null;
	}
	if( mmOpenMenus ) {
		for(var i in mmOpenMenus) {
			var m = document.getElementById(mmOpenMenus[i]);
			m.style.visibility = "hidden";			
		}
		mmOpenMenus = null;
	}
}

function MM_menuHideSubmenus(menuName) {
	if( mmOpenMenus ) {
		var h = false;
		var c = 0;
		for(var i in mmOpenMenus) {
			if( h ) {
				var m = document.getElementById(mmOpenMenus[i]);
				m.style.visibility = "hidden";
			} else if( mmOpenMenus[i] == menuName ) {
				h = true;
			} else {
				c++;
			}
		}
		mmOpenMenus.length = c+1;
	}
}

function MM_menuOverMenuItem(menuName, subMenuSuffix) {
	MM_menuResetTimeout();
	MM_menuHideSubmenus(menuName);
	if( subMenuSuffix ) {
		var subMenuName = "" + menuName + "_" + subMenuSuffix;
		MM_menuShowSubMenu(subMenuName);
	}
}

function MM_menuShowSubMenu(subMenuName) {
	MM_menuResetTimeout();
	var e = document.getElementById(subMenuName);
	e.style.visibility = "visible";
//	e.style.visibility = "inherit";
	if( !mmOpenMenus ) {
		mmOpenMenus = new Array;
	}
	mmOpenMenus[mmOpenMenus.length] = "" + subMenuName;
}

function MM_menuResetTimeout() {
	if (mmHideMenuTimer) clearTimeout(mmHideMenuTimer);
	mmHideMenuTimer = null;
}

function MM_menuShowMenu(containName, menuName, xOffset, yOffset, triggerName) {
	MM_menuHideMenus();
	MM_menuResetTimeout();
	MM_menuShowMenuContainer(containName, xOffset, yOffset, triggerName);
	MM_menuShowSubMenu(menuName);
}

function MM_menuShowMenuContainer(containName, x, y, triggerName) {	
	var c = document.getElementById(containName);
	var s = c.style;
	s.visibility = "inherit";
	
	mmOpenContainer = "" + containName;
}

function MM_preloadImages()
	{ //v3.0
	var d=document;
	if (d.images)
		{
		if (!d.MM_p)
			d.MM_p=new Array();
			
    	var i;
		var j = d.MM_p.length;
		var a = MM_preloadImages.arguments;
		
		for (i=0; i<a.length; i++)
    		if (a[i].indexOf("#")!=0)
				{
				d.MM_p[j] = new Image;
				d.MM_p[j++].src = a[i];
				}
		}
	}

function MM_findObj(n, d)
	{ //v4.01
	var p,i,x;
	if (!d)
		d=document;
	if ((p = n.indexOf("?")) > 0  &&  parent.frames.length)
		{
		d = parent.frames[n.substring(p+1)].document;
		n = n.substring(0,p);
		}
	if (!(x = d[n])  &&  d.all)
		x = d.all[n];
	for (i = 0; !x  &&  i < d.forms.length; i++)
		x = d.forms[i][n];
  	for (i=0;!x&&d.layers&&i<d.layers.length;i++)
		x = MM_findObj(n,d.layers[i].document);
	if (!x && d.getElementById)
		x = d.getElementById(n);
	return(x);
	}

function MM_nbGroup(event, grpName)
	{ //v6.0
	var i,img,nbArr,args=MM_nbGroup.arguments;
	if (event == "init" && args.length > 2)
		{
		if ((img = MM_findObj(args[2])) != null && !img.MM_init)
			{
			img.MM_init = true;
			img.MM_up = args[3];
			img.MM_dn = img.src;
			if ((nbArr = document[grpName]) == null)
				nbArr = document[grpName] = new Array();
				nbArr[nbArr.length] = img;
			for (i=4; i < args.length-1; i+=2)
				if ((img = MM_findObj(args[i])) != null)
					{
					if (!img.MM_up)
						img.MM_up = img.src;
					img.src = img.MM_dn = args[i+1];
					nbArr[nbArr.length] = img;
					}
			}
		}
	else if (event == "over")
		{
		document.MM_nbOver = nbArr = new Array();
		for (i=1; i < args.length-1; i+=3)
			if ((img = MM_findObj(args[i])) != null)
				{
				if (!img.MM_up) img.MM_up = img.src;
				img.src = (img.MM_dn && args[i+2]) ? args[i+2] : ((args[i+1])? args[i+1] : img.MM_up);
				nbArr[nbArr.length] = img;
				}
		}
	else if (event == "out" )
		{
		for (i=0; i < document.MM_nbOver.length; i++)
			{
			img = document.MM_nbOver[i];
			img.src = (img.MM_dn) ? img.MM_dn : img.MM_up;
			}
		}
	else if (event == "down")
		{
		nbArr = document[grpName];
		if (nbArr)
			for (i=0; i < nbArr.length; i++)
				{
				img=nbArr[i]; 
				img.src = img.MM_up; 
				img.MM_dn = 0;
				}
		document[grpName] = nbArr = new Array();
		for (i=2; i < args.length-1; i+=2)
			if ((img = MM_findObj(args[i])) != null)
				{
				if (!img.MM_up) img.MM_up = img.src;
					img.src = img.MM_dn = (args[i+1])? args[i+1] : img.MM_up;
				}
		}
	}