// Set dropdown menus to inactive - onload makes them active

	var menuSystemActive = false;

// Set the window name

	window.name = "main";

// onload triggers

	function homepageTrigger() {
		menuSystemActive = true;
	}
	
	function subpageTrigger() {
		menuSystemActive = true;
	}


// Function to make DIV area act as its child A tag

	function doDivLink(getDiv) {
		if(document.getElementsByTagName) {
			newLocation = getDiv.getElementsByTagName('A').item(0).href;
			newTarget = getDiv.getElementsByTagName('A').item(0).target;
			if(newTarget == "_blank") {
				window.open(newLocation);
			} else window.location = newLocation;
		}
	}
	
	function clearDivLink() {
		if(document.getElementsByTagName) return false;
	}


// Browser detection bits

	if(navigator.userAgent.indexOf("Opera")!=-1) GetBrowserType = "opera"
	else if(navigator.appName == "Microsoft Internet Explorer") GetBrowserType = "ie"
	else if(navigator.appName == "Netscape") GetBrowserType = "ns";
	
	safariMode = false;
	if(navigator.userAgent.indexOf("AppleWebKit")!=-1) safariMode = true;
	
	GetBrowserPlatform = "";
	if(navigator.userAgent.indexOf("Mac_PowerPC")!=-1 || navigator.userAgent.indexOf("Macintosh")!=-1) GetBrowserPlatform = "mac";


// Menu Stuff

	storeMenuIndex = null;
	storeButtonState = null;
	storeThisElement = null;
	menuActive = false;
	menuTimeout = null;
	
	function getMenuClass(src,hoverState) {
		if(src.className.indexOf("FirstMenu") > -1) {
			if(hoverState) return "FirstMenuOver"
			else {
				if(storeButtonState) return "FirstMenuOn"
				else return "FirstMenuOff";
			}
		} else if(src.className.indexOf("LastMenu") > -1) {
			if(hoverState) return "LastMenuOver"
			else {
				if(storeButtonState) return "LastMenuOn"
				else return "LastMenuOff";
			}
		} else {
			if(hoverState) return "MenuOver"
			else {
				if(storeButtonState) return "MenuOn"
				else return "MenuOff";
			}
		}
	}
	
	function showMenu(menuIndex,buttonState,thisElement) {
		if(menuSystemActive) {
			cancelHideMenu();
			if(menuActive && menuIndex!= storeMenuIndex) doHideMenu();
			if(!menuActive) {
				storeMenuIndex = menuIndex;
				storeButtonState = buttonState;
				storeThisElement = thisElement;
				thisElement.className = getMenuClass(thisElement,true);
				
				// work out menu bar width
				menuAreaWidth = -10;
				for(i=0;i<MenuTotal;i++) {
					menuAreaWidth += document.getElementById('menu'+i).offsetWidth;
				}
				
				if(SubMenuStrings[menuIndex]) {
					
					// Work out menu position
					SubMenuWidth = document.getElementById('dropDownMenu').offsetWidth;
					MenuOffset = document.getElementById('headerArea').offsetLeft + document.getElementById('menuArea').offsetLeft;
					ButtonOffset = thisElement.offsetLeft;
					xPos = ButtonOffset + MenuOffset;
					MenuAlign = "alignLeft";
					//align div
					if(menuIndex == 0) {
						xPos += 1;
					} else if(menuIndex == (MenuTotal-1)) {
						// last menu position aligned right
						xPos = (MenuOffset + menuAreaWidth) - (SubMenuWidth-16);
						MenuAlign = "alignRight";
					} else if((ButtonOffset + SubMenuWidth) > menuAreaWidth) {
						// menu position aligned right
						ButtonOffset = thisElement.offsetLeft + thisElement.offsetWidth;
						xPos = (ButtonOffset + MenuOffset) - (SubMenuWidth-6);
						MenuAlign = "alignRight";
					} else {
						xPos -= 7;
					}
				
					// Write menu links
					buildMenu = "<DIV class='" + MenuAlign + "'><dl>" + SubMenuStrings[menuIndex] + "</dl></DIV>";
					document.getElementById('dropDownMenu').innerHTML = buildMenu;
					
					// Set position of menu + make visible
					if(GetBrowserType == "ns" || GetBrowserType == "opera") {
						document.getElementById('dropDownMenu').style.left = xPos + "px";
					} else {
						document.getElementById('dropDownMenu').style.posLeft = xPos;
					}
					document.getElementById('dropDownMenu').style.zIndex = 100;
					document.getElementById('dropDownMenu').style.visibility = "visible";
				
				}
				menuActive = true;
			}
		}
	}
	
	function hideMenu() {
		if(menuSystemActive) {
			refreshMenu();
			menuTimeout = setTimeout("doHideMenu();",200);
		}
	}
	
	function doHideMenu() {
		if(menuSystemActive && storeThisElement != null) {
			storeThisElement.className = getMenuClass(storeThisElement,false);
			document.getElementById('dropDownMenu').style.visibility = "hidden";
			storeMenuIndex = null;
			storeButtonState = null;
			storeThisElement = null;
			menuActive = false;
		}
	}
	
	function cancelHideMenu() {
		if(menuSystemActive) {
			clearTimeout(menuTimeout);
			menuTimeout = null;
		}
	}
	
	function doNoLink() {
		if(menuSystemActive) {
			clearTimeout(menuTimeout);
		}
	}
	
	function refreshMenu() {
		if(menuSystemActive && safariMode) document.getElementById('dropDownMenu').style.zIndex += 1;
	}
	

// Image Panel Code

	var activePanel = "A";
	var totalImages;
	var topPanel;

	function setupImagePanel() {
		totalImages = qImages.length;
		topPanel = document.getElementById("panelA");
		// populate panel B
		document.getElementById("panelB").innerHTML = "<p id=\"panelImageB\" class=\"panelImage\"><\/p><div class=\"panelText\"><p id=\"panelAltB\" class=\"panelAlt\"><\/p><\/div>";
		buildPanel("B");
	}
	
	function buildPanel(panelLetter) {
		qIndex += 1;
		if(qIndex >= totalImages) qIndex = 0;
		// image
		writeImageCode = "";
		if(qURLs[qIndex] != "") writeImageCode = "<a href=\"" + qURLs[qIndex] + "\" target=\"" + qTargets[qIndex] + "\">";
		writeImageCode += "<img src=\"" + qImages[qIndex] + "\" alt=\"" + qAlts[qIndex] + "\" width=\"550\" height=\"182\" border=\"0\" onload=\"imageDelay();\" \/>";
		if(qURLs[qIndex] != "") writeImageCode += "<\/a>";
		// populate
		document.getElementById("panelImage" + panelLetter).innerHTML = writeImageCode;
		document.getElementById("panelAlt" + panelLetter).innerHTML = qAlts[qIndex];
	}
	
	function imageDelay() {
		// set timeout
		setTimeout("swapImagePanels();",6000);
	}
	
	function swapImagePanels() {
		if(activePanel=="A") {
			if(Spry) {
				Spry.Effect.DoFade(topPanel, {duration: 2000, from: 100, to: 0, toggle: false, finish: function() {setTopPanelDisplay(false);buildPanel("A");}});
			} else {
				setTopPanelDisplay(false);
				buildPanel("A");
			}
			activePanel = "B";
		} else {
			setTopPanelDisplay(true);
			if(Spry) {
				Spry.Effect.DoFade(topPanel, {duration: 2000, from: 0, to: 100, toggle: false, finish: function() {buildPanel("B");refreshIeContent();}});
			} else {
				buildPanel("B");
			}
			activePanel = "A";
		}
	}
	
	function setTopPanelDisplay(getMode) {
		if(getMode) topPanel.style.display = "block"
		else topPanel.style.display = "none";
	}
	
	function refreshIeContent() {
		// fix for ie cleartype rendering
		if(navigator.appName == 'Microsoft Internet Explorer') topPanel.style.removeAttribute('filter');
	}
	