/*
	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)
			{
			if (!img.MM_init)
				{
				img.MM_init = true;
				img.MM_up = args[3];
				img.MM_dn = img.src;
				if ((nbArr = document[MM_findObj(grpName)]) == null)
					nbArr = document[MM_findObj(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[MM_findObj(grpName)];
		if (nbArr)
			for (i=0; i < nbArr.length; i++)
				{
				img=nbArr[i]; 
				img.src = img.MM_up; 
				img.MM_dn = 0;
				}
//	ML: Non-IE browsers are smart enough to figure out the enum index into document w/o MM_findObj, so I should 
//		probably check the browser here...
//		document[grpName] = nbArr = new Array();
		document[MM_findObj(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;
				}
		}
	}

function browserType()
	{
	var version = 0;
	var versionindex;
	var browser_string = "unknown";
	
	if (navigator.userAgent.indexOf("Firefox") != -1)
		{
		versionindex = navigator.userAgent.indexOf("Firefox") + 8
		if (parseInt(navigator.userAgent.charAt(versionindex)) >= 1)
			alert("You are using Firefox 1.x or above")
		browser_string = "Firefox";
		}
	else if (navigator.userAgent.indexOf("Opera")!=-1)
		{
		var versionindex=navigator.userAgent.indexOf("Opera")+6
		if (parseInt(navigator.userAgent.charAt(versionindex))>=8)
		alert("You are using Opera 8 or 9")
		browser_string = "Opera";
		}
	//Detect IE5.5+
	else if (navigator.appVersion.indexOf("MSIE")!=-1)
		{
		temp = navigator.appVersion.split("MSIE")
		version = parseFloat(temp[1])

		if (version>=5.5) //NON IE browser will return 0
			{
			alert("You're using IE5.5+")
			browser_string = "MSIE";
			}
		}
	else
		{
		alert( "Unknown browser" );
		}
	return( browser_string );
	}
