﻿/* Copyright Jonathan Young 2010 */
function selectMenu( menu )
{
var pName = document.title;
var aLi = menu.getElementsByTagName("LI");
var anchor;
for ( var i = 0; i< aLi.length; i++ )
  {
  anchor = aLi[i].getElementsByTagName( "A" );
  if ( anchor[0] )
	aLi[i].className= ( anchor[0].innerHTML == pName )?"currentPage":"";
  }
}
function ajaxMenu(uri, ob, resizeM )
{
var divOb = ( ob?ob:"siteNav" );
var navOb = document.getElementById( divOb );
//document.title += typeof lightBox;
if ( typeof lightBoxObject != "undefined" && typeof lightBox != "object" )
 lightBox = new lightBoxObject();

// code for IE7+, Firefox, Chrome, Opera, Safari. Then for IE6, IE5 etc...
var xmlhttp = (window.XMLHttpRequest)?new XMLHttpRequest():((window.ActiveXObject)?new ActiveXObject("Microsoft.XMLHTTP"):null);
  if (!xmlhttp)
	{
	navOb.innerHTML = "The browser you are using does not support XMLHTTP!<br>Please try a different one that does such as Internet Explorer, Safari, Opera, Chrome, Seamonkey or FireFox.<br>";
	}
  else
	{
	xmlhttp.onreadystatechange=function()
		{
		if(xmlhttp.readyState==4)
		  {
		  if ( xmlhttp.status < 300 ) // success msg start at 200 and stop at 300
		    {
		  	navOb.innerHTML=xmlhttp.responseText; 
		  	selectMenu( document.getElementById( divOb ) );
		  	if ( resizeM )
		  	 resizeM( document.getElementById( divOb ) );
		    }
		  else
		    navOb.innerHTML=xmlhttp.status + ": Please try loading this page again, if the error keeps happening, please report it via the webmaster link at the foot of any page.";
		  }
		}
	xmlhttp.open("GET", uri, true); // True does asynchronous requests.
	xmlhttp.send(null);
	}
}

function ajaxRawPage(uri, ob, handler, corners)
{
// code for IE7+, Firefox, Chrome, Opera, Safari. Then for IE6, IE5
var xmlhttp = (window.XMLHttpRequest)?new XMLHttpRequest():((window.ActiveXObject)?new ActiveXObject("Microsoft.XMLHTTP"):null);
var navOb = document.getElementById(ob);
  if (!xmlhttp)
	{
	navOb.innerHTML = "The browser you are using does not support XMLHTTP!<br>Please try a different one that does such as Internet Explorer, Safari, Opera, Chrome, Seamokey or FireFox.<br>";
	}
  else
	{
	xmlhttp.onreadystatechange=function ()
	{
	if(xmlhttp.readyState==4)
	  {
	  if ( xmlhttp.status < 300 ) // success msg start at 200 and stop at 300
	  	{
	  	navOb.innerHTML=xmlhttp.responseText;
	  	if (handler)
	  		eval( handler(uri) );
	  	if (corners)
			eval(corners());
		navOb.className=""; // Switch off the background whirlygig.
	  	}
	  else
	    navOb.innerHTML=xmlhttp.status + ": Please report this error.";
	  }
	}
//	navOb.className="ajaxLoading"; // Switch on the background whirlygig.
	xmlhttp.open("GET", uri, true); // True for asynchronous requests.
	xmlhttp.send(null);
	}
}


function ajaxPage(uri, ob, handler, corners)
{
// code for IE7+, Firefox, Chrome, Opera, Safari. Then for IE6, IE5
var xmlhttp = (window.XMLHttpRequest)?new XMLHttpRequest():((window.ActiveXObject)?new ActiveXObject("Microsoft.XMLHTTP"):null);
var navOb = document.getElementById(ob);
  if (!xmlhttp)
	{
	navOb.innerHTML = "The browser you are using does not support XMLHTTP!<br>Please try a different one that does such as Internet Explorer, Safari, Opera, Chrome, Seamokey or FireFox.<br>";
	}
  else
	{
	xmlhttp.onreadystatechange=function ()
	{
	if(xmlhttp.readyState==4)
	  {
	  if ( xmlhttp.status < 300 ) // success msg start at 200 and stop at 300
	  	{
	  	var re = new RegExp( "^.*<body>(.*)<\/body>.*$", "i");
		var validatedXML=xmlhttp.responseText.replace(re, "$1");
	  	navOb.innerHTML=validatedXML;
	  	if (handler)
	  		eval( handler(uri) );
	  	if (corners)
			eval(corners());
	  	}
	  else
	    navOb.innerHTML=xmlhttp.status + ": Please report this error.";
	  }
	}
	xmlhttp.open("GET", uri, true); // True for asynchronous requests.
	xmlhttp.send(null);
	}
}
var Count = 0;
var Text = "The Stow Longa Village Community Committee organise social events for both fun and funds. We would like you to take advantage of the event diary to get together with your neighbours and keep the life in the village.";
var Speed = 100;
var timerID = null;
var TimerRunning = false;

var i = 0;
while (i ++ < 140)
Text = " " + Text;

function Scroll(){
window.status = Text.substring(Count++, Text.length);
if (Count == Text.length)
 Count = 0;
TimerRunning = true;
timerID = setTimeout("Scroll()", Speed);
}

function Start(){
Stop();
Scroll();
}

function Stop(){
if(TimerRunning)
 clearTimeout(timerID);
TimerRunning = false;
}

function resizeMenu(_menu)
{
var totalWidth=0;
var menuItem = _menu.getElementsByTagName( "LI" )[0];
while (menuItem)
 {
  totalWidth += menuItem.offsetWidth;
  menuItem = menuItem.nextSibling;
 }
 var ulItem = _menu.children[0];
 ulItem.style.minWidth = (totalWidth+20)+"px";
 ulItem.style.width = totalWidth+"px";
}

function preload(img) 
{
  var a=new Image(); a.src=img; return a; 
}