// Set dropdown menus to inactive - onload makes them active

	var menuSystemActive = false;

// onload triggers

	function homepageTrigger() {
		menuSystemActive = true;
		iePNG();
		showHeaderEvent();
		// hide social bookmarking links initially
		document.getElementById("linkList").style.display = "none";
	}
	
	function subpageTrigger() {
		menuSystemActive = true;
		iePNG();
		showHeaderEvent();
		// hide social bookmarking links initially
		document.getElementById("linkList").style.display = "none";
	}

// 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";
	
	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 = document.getElementById('DropDownMenu').offsetWidth;
					MenuOffset = document.getElementById('headerArea').offsetLeft + document.getElementById('menuArea').offsetLeft;
					MenuAreaWidth = document.getElementById('menuArea').offsetWidth;
					ButtonOffset = thisElement.offsetLeft;
					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.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 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;
	}


// show header event panel

	var eventX = 300;
	var eventY = 0;
	
	var eventList;
	var allEvents;
	var edgeMask;
	var eventIndex = 0;
	
	function setPos(getObject,getX,getY) {
		if(getObject.style.posTop) {
			getObject.style.posLeft = getX;
			getObject.style.posTop = getY;
		} else {
			getObject.style.left = getX + "px";
			getObject.style.top = getY + "px";
		}
	}

	function showHeaderEvent() {
		if(document.getElementById("headerEventList")) {
			// get objects
			eventList = document.getElementById("headerEventList");
			allEvents = eventList.getElementsByTagName("DD");
			edgeMask = document.getElementById("headerEventRightEdge");
			// loop through all events
			for(i=0;i<allEvents.length;i++) {
				if(i==0) {
					setPos(allEvents[i],0,0);
				} else {
					setPos(allEvents[i],0,70);
				}
				allEvents[i].style.display = "block";
			}
			// show events panel
			setTimeout("initHeaderEvent()",1000);
		}
	}
	
	function initHeaderEvent() {
		// make right edge mask visible
		edgeMask.style.display = "block";
		// call function to move event panel to the left
		showEventPanel();
	}
	
	function showEventPanel() {
		if(eventX > 0) {
			eventX -= 10;
			setPos(eventList,eventX,eventY);
			setTimeout("showEventPanel()",30);
		} else {
			// make right edge mask hidden
			edgeMask.style.display = "none";
			// set trigger for next event
			if(allEvents.length > 1) setTimeout("nextEvent()",6000);
		}
	}
	
	function nextEvent() {
		oldEvent = eventIndex;
		newEvent = eventIndex + 1;
		if(newEvent >= allEvents.length) newEvent = 0;
		slideEvent(oldEvent, false);
		slideEvent(newEvent, true);
	}
	
	function slideEvent(getIndex,slideMode) {
		thisX = allEvents[getIndex].offsetLeft; 
		thisY = allEvents[getIndex].offsetTop; 
		if(slideMode) {
			// new event
			thisY -= 5;
			setPos(allEvents[getIndex],thisX,thisY);
			if(thisY > 0) {
				setTimeout("slideEvent(" + getIndex + ",true)",30);
			} else {
				eventIndex = getIndex;
				setTimeout("nextEvent()",6000);
			}
		} else {
			// old event
			thisY -= 5;
			setPos(allEvents[getIndex],thisX,thisY);
			if(thisY <= -70) {
				setPos(allEvents[getIndex],0,70);
			} else {
				setTimeout("slideEvent(" + getIndex + ",false)",30);
			}
		}
	}
	

	function showHideSocialLinks() {
		if(document.getElementById("linkList").style.display == "none") {
			document.getElementById("linkList").style.display = "block";
			document.getElementById("bookmarkFullLink").className = "bookmarkMinusIcon";
		} else {
			document.getElementById("linkList").style.display = "none";
			document.getElementById("bookmarkFullLink").className = "";
		}
		
	}
	
	// Bookmark functions
	function addBookmark() {
		if (window.sidebar) {
			// firefox
			window.sidebar.addPanel(document.title, location.href, "");
		} else if(window.opera && window.print) {
			// opera
			var elem = document.createElement('a');
			elem.setAttribute('href',location.href);
			elem.setAttribute('title',document.title);
			elem.setAttribute('rel','sidebar');
			elem.click();
		} else if(window.external) {
			// ie
			window.external.AddFavorite(location.href, document.title);
		} else {
			alert("Please bookmark this page manually as your browser does not support javascript bookmark creation.");
		}
	}	





