// START SETUP CODE
var NS = (navigator.appName == "Netscape");
var IE4 = document.all;
var NS4 = document.layers;
var compliant = document.getElementById;

// DETERMINE WHETHER BROWSER IS STANDARDS COMPLIANT AND TURN DHTML ON IF COMPLIANT
if (compliant) {dhtml=1} else {dhtml=0}

var menuHeight = 20;
var numMenus = 7;
var menuOn = -1;
var flashPresent = 0;
var gatewayLock= -1;
var num = 0;
var holderRef =  refConstructor("Holder");


function MakeArray(n){
   this.length = n
   for (var i = 1; i<=n; i++) {
	  this[i] = new Image()
   }
   return this;
}

var menuOffset = new Array('0','48','95','147','196','252','299');

var minPos_x = new Array;
var maxPos_x = new Array;
var minPos_y = new Array;
var maxPos_y = new Array;
var imageName = new Array("nav0", "nav1", "nav2", "nav3", "nav4", "nav5", "nav6");

if (document.images) {
	header_Over = new MakeArray(10);
	header_Out = new MakeArray(10);

	for (imgX = 0; imgX < 10; imgX++) {
	header_Out[imgX] = new Image(); 
	header_Out[imgX].src = imagepath + "/g/m/" + imageName[imgX] + ".gif";
	header_Over[imgX] = new Image();
	header_Over[imgX].src = imagepath + "/g/m/" + imageName[imgX] + "_a.gif";
	}
}

function imgFlip(imageName, imageSrc) {
  if (document.images)
    document.images[imageName].src = eval(imageSrc + ".src");
}

function headerOver(num){
	if ((document.images) && (num != gatewayLock)){
		eval ("document." + imageName[num] + ".src ='" + header_Over[num].src +"'")
	}
}
function headerOut(num){
	if ((document.images) && (num != gatewayLock)){
	eval ("document." + imageName[num] + ".src ='" + header_Out[num].src +"'")}
	}

function headerOutX(num){
	if (document.images){
		if(dhtml==0 && (num != gatewayLock)) {
			eval ("document." + imageName[num] + ".src ='" + header_Out[num].src +"'")
		}
	}
}

// MENU FUNCTIONS

function refConstructor(menuId) {
	var prefix = "document.getElementById('menu" + menuId + "')";
	return prefix;
}

function findPosX(obj){
	var curleft = 0;
	if (obj.offsetParent){
		while (obj.offsetParent){
			curleft += obj.offsetLeft;
			obj = obj.offsetParent;
		}
	}
	else if (obj.x) curleft += obj.x;
	return curleft;
}

function findPosY(obj) {
	var curtop = 0;
	if (obj.offsetParent){
		while (obj.offsetParent){
			curtop += obj.offsetTop;
			obj = obj.offsetParent;
		}
	}
	else if (obj.y) curtop += obj.y;
	return curtop;
}
	
function menuInit() {
	for (layerInit = 1;layerInit<numMenus;layerInit++) {
		var layerRef =  refConstructor(layerInit);
		
		var layerDim_y  = eval(layerRef + ".offsetHeight + menuHeight");
		var layerDim_x  = eval(layerRef + ".offsetWidth");
		var layerPos_y = findPosY(eval(layerRef));
		var layerPos_x = findPosX(eval(layerRef));
		
		minPos_y[layerInit] = (layerPos_y);
		maxPos_y[layerInit] = (layerPos_y + layerDim_y);
		minPos_x[layerInit] = (layerPos_x);
		maxPos_x[layerInit] = (layerPos_x + layerDim_x);
	}

	if (flashPresent==1){(IE4) ? eval("document.all.flashLayer.style.visibility = 'visible'"):eval("document.flashLayer.visibility = 'visible'");}
}

function reportEvent(e) {
	var posx = 0;
	var posy = 0;
	var layerRef =  refConstructor(menuOn)

	if (!e) var e = window.event;
	if (e.pageX || e.pageY)
	{
		mousePos_x = e.pageX;
		mousePos_y = e.pageY + menuHeight;
	}
	else if (e.clientX || e.clientY)
	{
		mousePos_x = e.clientX + document.body.scrollLeft;
		mousePos_y = e.clientY + document.body.scrollTop + menuHeight;
	}

	if ((mousePos_y > maxPos_y[menuOn]) || (mousePos_x < minPos_x[menuOn]) || (mousePos_x > maxPos_x[menuOn]) ||(mousePos_y < minPos_y[menuOn]))
	{
		eval(layerRef + ".style.visibility = 'hidden'");
		v= menuOn;
		if (menuOn != gatewayLock) {headerOut(v);};
		
		menuOn = -1;
		
		if(flashPresent==1){
			eval("document.flashLayer.visibility = 'visible'");
		}

		document.onmousemove = null;
	}
}

function move() {
	if (IE4) { document.onmouseover = null }
	else{ document.releaseEvents(Event.MOUSEOVER)};
	var layerRef =  refConstructor(menuOn);
	eval(layerRef + ".style.visibility = 'visible'");
}

function xx() {
	move();
	first = 0;
	if(document.layers) {document.captureEvents(Event.MOUSEMOVE)};
	document.onmousemove = reportEvent;
}

// FIRST CALL TO THE MENU FUNCTIONS
function menu(m) {
	if (m != menuOn) {
		v = m; 
		headerOver(v);
		if(dhtml){
			var layerRef =  refConstructor(menuOn)
			if (menuOn != m && menuOn!=-1) {
				v2 = menuOn;
				if (menuOn+1 != (gatewayLock)) {headerOut(v2);};
				eval(layerRef + ".style.visibility = 'hidden'");
			}
			menuOn = m ;
		xx();
		};
	}
}
// END MENU CALLS

//for publishing
gatewayLock = null;
window.onload = menuInit;
window.onresize = menuInit;