
var isNav 			= false;
var isIE 				= false;
var initialized = false;
var obj;
var pathPrefix;

var menus = new Array(5);

var TITLE1_ON = "assets/images/menus/menu-inside-ovr.gif";
var TITLE1_OFF = "assets/images/dot_clear.gif";
var TITLE2_ON = "assets/images/menus/menu-games-ovr.gif";
var TITLE2_OFF = "assets/images/dot_clear.gif";
var TITLE3_ON = "assets/images/menus/menu-store-ovr.gif";
var TITLE3_OFF = "assets/images/dot_clear.gif";
var TITLE4_ON = "assets/images/menus/menu-downloads-ovr.gif";
var TITLE4_OFF = "assets/images/dot_clear.gif";
var TITLE5_ON = "assets/images/menus/menu-support-ovr.gif";
var TITLE5_OFF = "assets/images/dot_clear.gif";


// This function is used to preload images that are accessed
// on the page later. The image objects are not really used but
// ensure the images are properly cached.
//
function preload()
{
	if( document.images )
	{
		var image1 = new Image();
		image1.src = pathPrefix + "assets/images/menus/pulldown-inside-off.gif";
		var image2 = new Image();
		image2.src = pathPrefix + "assets/images/menus/pulldown-inside-pressreleases.gif";
		var image3 = new Image();
		image3.src = pathPrefix + "assets/images/menus/pulldown-inside-contact.gif";
		var image4 = new Image();
		image4.src = pathPrefix + "assets/images/menus/pulldown-inside-about.gif";
		var image5 = new Image();
		image5.src = pathPrefix + "assets/images/menus/pulldown-inside-jobs.gif";
		var image6 = new Image();
		image6.src = pathPrefix + "assets/images/menus/pulldown-inside-newsletter.gif";
		var image7 = new Image();
		image7.src = pathPrefix + "assets/images/menus/menu-inside-ovr.gif";
		var image8 = new Image();
		image8.src = pathPrefix + "assets/images/menus/menu-games-ovr.gif";
		var image9 = new Image();
		image9.src = pathPrefix + "assets/images/menus/menu-store-ovr.gif";
		var image10 = new Image();
		image10.src = pathPrefix + "assets/images/menus/menu-downloads-ovr.gif";
		var image11 = new Image();
		image11.src = pathPrefix + "assets/images/menus/menu-support-ovr.gif";
		var image12 = new Image();
		image12.src = pathPrefix + "assets/images/menus/pulldown-games-off.gif";
		var image13 = new Image();
		image13.src = pathPrefix + "assets/images/menus/pulldown-games-bjpro.gif";
		var image14 = new Image();
		image14.src = pathPrefix + "assets/images/menus/pulldown-inside-inpress.gif";
		var image15 = new Image();
		image15.src = pathPrefix + "assets/images/menus/pulldown-games-nshift.gif";
		var image16 = new Image();
		image16.src = pathPrefix + "assets/images/menus/pulldown-games-flipit.gif";
		var image17 = new Image();
		image17.src = pathPrefix + "assets/images/menus/pulldown-games-cleopatra.gif";
		var image18 = new Image();
		image18.src = pathPrefix + "assets/images/menus/pulldown-games-sas.gif";
		var image19 = new Image();
		image19.src = pathPrefix + "assets/images/menus/pulldown-games-bobby3.gif";
	}
}

function menu( styletitle, styledrop, styleitem, title_on, title_off )
{
	this.title				= styletitle;
	this.drop 				= styledrop;
	this.item 				= styleitem;
	this.inDrop 			= false;
	this.titleoff 		= new Image();
	this.titleoff.src = title_off;
	this.titleon 			= new Image();
	this.titleon.src	= title_on;
}

function init( prefix )
{
	pathPrefix = prefix;

	if ( navigator.appName.indexOf( "Microsoft" ) != -1 )  				// Detect the browser
	{
		isIE = true;
	}
	else
	{
		if ( parseInt( navigator.appVersion ) >= 5 )
		{
			isIE = true;
		}
		else
		{
			isNav = true;
		}
	}


//	else
//	{
//		window.location.href = "http://www.g3studios.com/navigator.html";
//	}

	if ( parseInt( navigator.appVersion ) > 3 )
	{
		menus[1] = new menu( 'menu1', 'mdrop1', 'mitems1', pathPrefix + TITLE1_ON, pathPrefix + TITLE1_OFF );
		menus[2] = new menu( 'menu2', 'mdrop2', 'mitems2', pathPrefix + TITLE2_ON, pathPrefix + TITLE2_OFF );
		menus[3] = new menu( 'menu3', 'mdrop3', 'mitems3', pathPrefix + TITLE3_ON, pathPrefix + TITLE3_OFF );
		menus[4] = new menu( 'menu4', 'mdrop4', 'mitems4', pathPrefix + TITLE4_ON, pathPrefix + TITLE4_OFF );
		menus[5] = new menu( 'menu5', 'mdrop5', 'mitems5', pathPrefix + TITLE5_ON, pathPrefix + TITLE5_OFF );


		// Center menus depending on browser width. Note, may not work in a frame.
		// setCenters();

		// After centering locations, display all menu titles.

		if ( isIE )
		{
			obj = document.getElementById('menu1');
			obj.style.visibility = "visible";

			obj = document.getElementById('menu2');
			obj.style.visibility = "visible";

			obj = document.getElementById('menu3');
			obj.style.visibility = "visible";

			obj = document.getElementById('menu4');
			obj.style.visibility = "visible";

			obj = document.getElementById('menu5');
			obj.style.visibility = "visible";
		}
		else
		{
			document.menu1.visibility = "visible";
			document.menu2.visibility = "visible";
			document.menu3.visibility = "visible";
			document.menu4.visibility = "visible";
			document.menu5.visibility = "visible";
		}

		// Cache items in background
		preload();

		// Let everyone know menus are set to go.
		initialized = true;
	}
}

function showmenu( menuid )
{
	if( isIE )
	{
		var num;

		for ( num=1; num<=5 ; ++num )
		{
			if ( isIE )
			{
				obj = eval( "document.all.menu" + num + "" );
				obj.style.zIndex = 100;
			}
			else
			{
				if ( document.layers )
				{
					obj = eval( "document.layers['menu" + num +"']" );
					obj.style.zIndex = 100;
				}
			}

			obj = document.getElementById( menus[num].drop );
			obj.style.visibility = "hidden";
			obj = document.getElementById( menus[num].item );
			obj.style.visibility = "hidden";
			toggletitle( num, 'off' );
		}

		obj = document.getElementById( "mousetrap" );
		obj.style.visibility = "hidden";

		toggletitle( menuid, 'on' );

		if ( isIE )
		{
			obj = eval( "document.all.menu" + menuid + "" );
			obj.style.zIndex = 150;
		}
		else
		{
			if ( document.layers )
			{
				obj = eval( "document.layers['menu" + menuid +"']" );
				obj.style.zIndex = 150;
			}
		}

		obj = document.getElementById( menus[menuid].drop );
		obj.style.visibility = "visible";

		obj = document.getElementById( menus[menuid].item );
		obj.style.visibility = "visible";
	}
	else
	{
		toggletitle( menuid, 'on' );
		eval( "document." + menus[menuid].drop + ".visibility = 'visible'" );
		eval( "document." + menus[menuid].item + ".visibility = 'visible'" );
	}

	if ( parseInt( navigator.appVersion ) >= 5 )
	{
		obj = document.getElementById("mousetrap");
		obj.style.visibility = "visible";
	}
}

function toggletitle( menuid, value )
{
	var target = eval( "menus[menuid].title" + value );

	var currentimage = null;

	if ( document.images )
	{
		if( isIE )
		{
			currentimage = eval( "document.images['m" + menuid +"']" );
		}
		else
		{
			if ( document.layers )
			{
				currentimage = eval( "document.layers['menu" + menuid +"'].document.images['m" + menuid +"']" );
			}
		}

		if ( currentimage )
		{
			currentimage.src = target.src;
		}
	}
}

function hidemenu( menuid, event )
{
	if( isIE )
	{
		iehidemenu( menuid );
	}
	else if ( event.pageY < 68 )
	{
		nshidemenus( menuid );
	}
}

function iehidemenu( menuid )
{
	var target;

	if ( window.event.toElement && ( window.event.toElement.name != null ) )
	{
		target = window.event.toElement.name.substring( 0, 6 );
	}

	if ( target != "m" + menuid + "item" )
	{
		obj = document.getElementById( menus[menuid].drop );
		obj.style.visibility = "hidden";

		obj = document.getElementById( menus[menuid].item );
		obj.style.visibility = "hidden";
		toggletitle( menuid, 'off' );
	}
}

function nshidemenus()
{
	for( i=1; i<menus.length; i++ )
	{
		eval( "document." + menus[i].drop + ".visibility = 'hidden'" );
		eval( "document." + menus[i].item + ".visibility = 'hidden'" );
		toggletitle( i, 'off' );
	}
}

function swapimage( objname, imgname, context )
{
	if ( document.images )
	{
		if ( isIE )
		{
			if ( ( parseInt( navigator.appVersion ) >= 5 ) && ( objname == "store" ) )
			{
				var num;

				for ( num=1; num<=5; ++num )
				{
					obj = document.getElementById( menus[num].drop );
					obj.style.visibility = "hidden";
					obj = document.getElementById( menus[num].item );
					obj.style.visibility = "hidden";
					toggletitle( num, 'off' );
				}

				obj = document.getElementById( "mousetrap" );
				obj.style.visibility = "hidden";

				document.images[objname].src = imgname;
			}
			else
			{
				document.images[objname].src = imgname;
			}
		}
		else
		{
			document.layers[context].document.images[objname].src = imgname;
		}
	}
}

function ns5hidemenu()
{
	var num;

	for ( num=1; num<=5; ++num )
	{
		obj = document.getElementById( menus[num].drop );
		obj.style.visibility = "hidden";
		obj = document.getElementById( menus[num].item );
		obj.style.visibility = "hidden";
		toggletitle( num, 'off' );
	}
	obj = document.getElementById( "mousetrap" );
	obj.style.visibility = "hidden";
}

