<!--

// Set dropdown menus to inactive - onload makes them active

	var menuSystemActive = false;
	

// Set the window name

	window.name = "main";
	


// onload triggers

	function pageTrigger() {
		if(graphicVersion) {
			menuSystemActive = true;
			if(document.getElementById("coversScroller")) initCoverScroller();
			// add xmas theming
			if (xmasTheme) xmasSetup();
			
			// fix for submit forms by hitting 'return'
			inputSubmitByReturn();
		}
	}
	
// fix for submit forms by hitting 'return'

	function addInputSubmitEvent(form, input) {
		input.onkeydown = function(e) {
			e = e || window.event;
			if (e.keyCode == 13) {
				form.submit();
				return false;
			}
		};
	}

	function inputSubmitByReturn() {
		var forms = document.getElementsByTagName('form');
		for (var i=0;i < forms.length;i++) {
			var inputs = forms[i].getElementsByTagName('input');
			for (var j=0;j < inputs.length;j++) {
				addInputSubmitEvent(forms[i], inputs[j]);
			}
		}
	}
	
// Function to track links with Google Analytics

	function trackLink(linkSrc) {
		try { pageTracker._trackPageview(linkSrc); } // New Google tracking code
		catch(e) {
			try { urchinTracker(linkSrc); } // Legacy Google tracking code
			catch(e) { }
		}
	}
	
// Funciton to open a pop-up window

	function openPopUp(myUrl,myWidth,myHeight) {
		window.open(myUrl, "popup", "width=" + myWidth + ",height=" + myHeight + ",left=" + ((screen.width / 2) - (myWidth / 2)) + ",top=" + ((screen.height / 2) - (myHeight / 2)) + ",status=no,scrollbars=yes,titlebar=no,toolbar=no");
		return false;
	}

// Function to check if a field string is empty
	
	function isEmptyField(srcField) {
		srcText = srcField.value;
		srcText = srcText.replace(/^\s+/g, '').replace(/\s+$/g, '');
		if(srcText == "") {
			srcField.value = "";
			return true;
		} else return false;
	}
	
// Email address validation
	
	function isValidEmail(src) {
		var emailReg = "^\\w+[\\+\\.\\w-]*@([\\w-]+\\.)*\\w+[\\w-]*\\.([A-Za-z]{2,4}|\\d+)$";
		var regex = new RegExp(emailReg);
		return regex.test(src);
	}
	
	
// Image size checking + resizing

	function checkImageSize(srcImage,maxWidth,maxHeight) {
		if(document.images) {
			getWidth = srcImage.width;
			getHeight = srcImage.height;
			if(getWidth>maxWidth || getHeight>maxHeight) {
				widthVariance = maxWidth/getWidth;
				heightVariance = maxHeight/getHeight;
				if(widthVariance<=heightVariance) scalePercentage = getWidth/maxWidth;
				else scalePercentage = getHeight/maxHeight;
				srcImage.width = getWidth/scalePercentage;
				srcImage.height = getHeight/scalePercentage;
			}
		}
	}


// Header search form stuff

	var initSearchText = "Search for...";
	
	function checkSearchField(fieldMode) {
		if(fieldMode) {
			// enters field
			if(document.getElementById("headerSearchText").value == initSearchText) document.getElementById("headerSearchText").value = "";
		} else {
			// exits field
			if(isEmptyField(document.getElementById("headerSearchText"))) document.getElementById("headerSearchText").value = initSearchText;
		}
	}

	function validateHeaderSearch() {
		if(isEmptyField(document.getElementById("headerSearchText")) || document.getElementById("headerSearchText").value == initSearchText) {
			alert("You have not entered anything to search for!");
			return false;
		} else return true;
	}
	
	function submitHeaderSearch() {
		if(validateHeaderSearch()) document.getElementById("headerSearch").submit();
	}
	
	
// Sidepanel form stuff

	function checkSubmitField(fieldElement,initValue,fieldMode) {
		if(fieldMode) {
			// enters field
			if(fieldElement.value == initValue) fieldElement.value = "";
		} else {
			// exits field
			if(isEmptyField(fieldElement)) fieldElement.value = initValue;
		}
	}


// Print function

	function printPage() {
		if(window.print) {
			window.print();
		} else {
			alert("Your browser does not support the javascript 'print' function.\nPlease use your operating system's print menu to print this page.")
		}
		return false;
	}


// Menu Stuff

	if(navigator.userAgent.indexOf("Opera")!=-1) GetBrowserType = "opera"
	else if(navigator.appName == "Microsoft Internet Explorer") GetBrowserType = "ie"
	else if(navigator.appName == "Netscape") GetBrowserType = "ns";
	
	// playstation
	if(navigator.userAgent.indexOf("PLAYSTATION 3")!=-1) 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";
	
	storeMenuIndex = null;
	storeButtonState = null;
	storeThisElement = null;
	menuActive = false;
	menuTimeout = null;
	
	function getMenuClass(src,hoverState) {
		if(src.className.indexOf("first") > -1) {
			if(hoverState) return "firstMenuOver"
			else {
				if(storeButtonState) return "firstMenuOn"
				else return "firstMenuOff";
			}
		} else if(src.className.indexOf("last") > -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);
				
				if(SubMenuStrings[menuIndex]) {
					
					// Work out menu position
					SubMenuWidth = parseFloat(document.getElementById('DropDownMenu').offsetWidth);
					MenuOffset = parseFloat(document.getElementById('centeredPage').offsetLeft) + parseFloat(document.getElementById('menuArea').offsetLeft);
					MenuAreaWidth = parseFloat(document.getElementById('menuArea').offsetWidth);
					ButtonOffset = thisElement.offsetLeft;
					menuTop = parseFloat(document.getElementById('menuArea').offsetTop) + parseFloat(document.getElementById('menuArea').offsetHeight);
					xPos = ButtonOffset + MenuOffset - 7;
					MenuAlign = "left";
					if((ButtonOffset + SubMenuWidth) > MenuAreaWidth) {
						// Work menu position aligned right to next spacer div
						ButtonOffset = thisElement.offsetLeft + thisElement.offsetWidth;
						xPos = (ButtonOffset + MenuOffset) - (SubMenuWidth - 7);
						MenuAlign = "right";
					}
				
					// Write menu links
					buildMenu = "<div align='" + MenuAlign + "'><div id='DropDownMenuTop'></div><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.top = menuTop + "px";
						document.getElementById('DropDownMenu').style.left = xPos + "px";
					} else {
						document.getElementById('DropDownMenu').style.posTop = menuTop;
						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 menuAreaClick(menuIndex,buttonState,thisElement) {
		if(menuSystemActive) {
			if(menuActive && storeThisElement == menuIndex) {
				doHideMenu();
			} else if(!menuActive) {
				showMenu(menuIndex,buttonState,thisElement);
			}
		}
	}
	
	function refreshMenu() {
		if(menuSystemActive && safariMode) document.getElementById('DropDownMenu').style.zIndex += 1;
	}


// -->