<!--
ajaxPageTimer = new __ajaxTimer('ajaxPageTimerBox',100);

Ajax.Responders.register({
  onCreate: function(){
	if (!ajaxPageTimer.animating)	ajaxPageTimer.startAnimation();
  }, 
  onComplete: function(){
	ajaxPageTimer.stopAnimation();
  }
});

  
var mainPages = Array();
var myRequests = new Object;

function loadPages(pageSource, page)	{
	var url;
	var i = 1;
	loadPage();
	function loadPage()	{
		url = "incfiles/main" + i + ".php";
		myRequests[i] = new Ajax.Request(url,	{
    		onSuccess: function(transport){
				if (page != i)	{
					pasteMainContent.defer(transport.responseText, i);
					mainPages[i] = url;
				}
				else	{
					mainPages[i] = pageSource;
				}
				i++;
				if (i<menu.num+1)	loadPage();	//so this is faux asyncronous
    		}			
		});
	}
}
/*
function loadPages(pageSource, page)	{


	//loads mainX.php for all pages (number defined by global menuNum) except identified page
	for(i=1;i<menu.num+1;i++)	{	//note this deliberately misses the unanchored mainPage[0]
		if (i == page)	mainPages[i] = pageSource;	//write loaded mainpage to page library
		else	{
			getPageData("incfiles/main" + i + ".php", pasteMainContent, i);
		}
	}	

}
*/

function getAjaxJSON(url, processFn) {
	new Ajax.Request(url,
	{
    onSuccess: function(transport){
		//eval(transport.responseText);
		//transport.responseText.evalJSON();
		processFn(transport.responseText);
    }
	});
}

function divMenuClickHandler(url, page, subMenu, defaultUrl) {
	
	subMenu = (subMenu)? subMenu : false;	//assigns false if no value
	
	defaultUrl = (defaultUrl)? defaultUrl : "index.php";	//assigns false if no value
	
	if (mainPages[page] == url) {
		menuChange(page, subMenu);
		return false;	//do not send an ajax request when one the page is already loaded
	}
	
	new Ajax.Request(url,
	{
    method:'post',
    onSuccess: function(transport){
		mainPages[page] = url;
		menuChange(page, subMenu);
		pasteMainContent(transport.responseText, page)
		return true;
    },
    onFailure: function(){ 
		//alert(transport.responseText);
		location = defaultUrl;
		return false;
	}
	});

	return false;	//cancels original target
}

function pasteMainContent(content, page){
	//document.getElementById('main' + page).innerHTML = content;
	$('main' + page).update(content);
}

function menuChange(n, subMenu)	{
	  
	DeSelectAll()
	
	//this is if you wish no menuitems to be displayed (i.e. disclaimer)
	if(n == 0)	{	
		document.getElementById("main0").style.display = "block";
		return
	}
	
	//changes class of clicked menu item
	document.getElementById("menu" + n).className = "menuSelect" + n;
	document.getElementById("link" + n).className = "linkSelect" + n;  
	
	if (menu[n].length > 0)	menuExpand("subMenu" + n);	//expands menu if has submenus
	if (subMenu)	document.getElementById("menu"+n+subMenu).style.textDecoration = "underline";	//add text decoration

	//changeColourScheme(n) //changes colour scheme of footer bar
	document.getElementById("main" + n).style.display = "block";
	return;
}
  
  
function DeSelectAll()	{

	document.getElementById("main0").style.display = "none";	//first display div is special case as has no associated menu
	
	for (i=1; i<menu.num+1; i++)	{
		
		if (!menu[i])	continue;	//if menu is listed as false then ignore this loop iteration
		
		document.getElementById("main" + i).style.display = "none";
		document.getElementById("menu" + i).className = "menuLink";
		document.getElementById("link" + i).className = "menuitem";
		
		if (menu[i].length > 0)	{
			menuCollapse("subMenu" + i);	//collapse all menus with a submenu
			for (q=0; q<menu[i].length; q++)	{	//get suffices of all submenu's add them to root (eg main+6+a) 
				document.getElementById("menu"+i+menu[i][q]).style.textDecoration = "";	//remove text decoration if php link
				document.getElementById("menu"+i+menu[i][q]).className = "menuLink";	//reset all submenu classes to default
			}
		}
	}

	return;
}
//-->
