function ie4() {
// Purpose	: Checks if the visitor is using Microsoft Internet Exporer v4.0 or later
// In		: None
// Out		: True if the user is using Microsoft Internet Exporer v4.0 or later

var BlnReturn;
var Version;
var Temp;

 // set default values
 BlnReturn = false;
 Version=0;
 Temp="";
 

  // check if definitely MSIE and NOT Opera in disguise!
  if ((navigator.userAgent.indexOf("MSIE")!=-1) && (navigator.userAgent.indexOf("Opera")==-1)) {

     // strip out the version bit if MSIE
     Temp=navigator.appVersion.split("MSIE");
     Version=parseFloat(Temp[1]);

     if (Version>=4.0) {
        BlnReturn = true;
     }   // version number check
  }      // browser type check

   return BlnReturn;

}  // end function



function NN4() {
// Purpose	: Checks if the user is using Netscape Navigator v4.0 or later
// In		: None
// Out		: True if the user is using NN4 v4.0 or later

var BlnReturn;

  // set default return value
  BlnReturn = false;

   if (navigator.appName=="Netscape" && parseFloat(navigator.appVersion) >= 4.0) {
       BlnReturn = true;
   }

   return BlnReturn;

}



function Opera() {
// Purpose	: Checks if the visitor is using the Opera browser
// In		: None
// Out		: True if the user is using the Opera browser

var BlnReturn;

  // set default return value
  BlnReturn = false;

   // Opera found in the userAgent string
   if ((navigator.userAgent.indexOf("Opera")!=-1)) {
      BlnReturn = true;
   }

   return BlnReturn;

}

function ShowTicker() {
// Purpose	: Shows either a scrolling or static news ticker
// In		: None
// Out		: None

	if (ie4()) {	// only show scrolling ticker if browser is Microsoft Internet Explorer v4.0 or later
		document.write('<marquee direction="LEFT" loop="99" height="23" width="550" scrollamount="3" behavior="SCROLL">');
		}

	// document.write('<span class="cssstyle"> | <a href="/add_link_page.php" class="cssstyle"> Add link text</a></span>');
	// document.write('<span class="cssstyle"> | <a href="http://www.external_link_page.html" class="cssstyle" target="_blank"> Add link text </a></span>');
	// document.write('<span class="cssstyle"> | <a href="/add_link_page.php" class="cssstyle"> Add link text</a></span>');

	if (ie4()) {
		document.write('</marquee></div>');
		}
}

function putFocus(formInst, elementInst) {
// Purpose	: Puts the cursor focus onto a field on a form
// In		: formInst    - index of form in form collection, e.g. 0=first form etc.
// In		: elementInst - index of field in field collection, e.g. 0=first field etc.
// Out		: None

  if (document.forms.length > 0) {	// the page has at least 1 form on it
     document.forms[formInst].elements[elementInst].focus();	// put focus on the required control on the given form
  }
 }


function addbookmark() {
// Purpose	: bookmarks the site, MSIE only
// In		: None
// Out		: None

	if (ie4()) {

	   bookmarkurl="http://www.oadbymethodist.org.uk"
	   bookmarktitle="Oadby Trinity Methodist Church"
	   if (document.all)
	      window.external.AddFavorite(bookmarkurl,bookmarktitle)
        }
        else
        alert("Sorry, but this option is only available if you are using Microsoft Internet Explorer")
}



function PopUpImageWindow(imageName,imageWidth,imageHeight,alt,bgcolor,hugger,hugMargin) {
// Purpose	: shows a new window with an image in it

var lift

	if (bgcolor=="default") {
		bgcolor="#FFFFFF";
	}
	var adj=10
	var w = screen.width;
	var h = screen.height;
	var byFactor=1;


	if(w<740){
	  lift=0.90;
	}
	if(w>=740 & w<835){
	  lift=0.91;
	}
	if(w>=835){
	  lift=0.93;
	}
	if (imageWidth>w){	
	  byFactor = w / imageWidth;			
	  imageWidth = w;
	  imageHeight = imageHeight * byFactor;
	}
	if (imageHeight>h-adj){
	  byFactor = h / imageHeight;
	  imageWidth = (imageWidth * byFactor);
	  imageHeight = h; 
	}
	   
	var scrWidth = w-adj;
	var scrHeight = (h*lift)-adj;

	if (imageHeight>scrHeight){
  	  imageHeight=imageHeight*lift;
	  imageWidth=imageWidth*lift;
	}

	var posLeft=0;
	var posTop=0;

	if (hugger == "default"){
	  if (hugMargin == ""){
	    hugMargin = 0;
	  }
	  var scrHeightTemp = imageHeight - 0 + 2*hugMargin;
	  if (scrHeightTemp < scrHeight) {
		scrHeight = scrHeightTemp;
	  } 
	  var scrWidthTemp = imageWidth - 0 + 2*hugMargin;
	  if (scrWidthTemp < scrWidth) {
		scrWidth = scrWidthTemp;
	  }
	  
	  if (scrHeight<100){scrHeight=100;}
	  if (scrWidth<100){scrWidth=100;}

	  posTop =  ((h-(scrHeight/lift)-adj)/2);
	  posLeft = ((w-(scrWidth)-adj)/2);
 	}

	if (imageHeight > (h*lift)-adj || imageWidth > w-adj){
		imageHeight=imageHeight-adj;
		imageWidth=imageWidth-adj;
	}
	posTop = parseInt(posTop);
	posLeft = parseInt(posLeft);		
	scrWidth = parseInt(scrWidth); 
	scrHeight = parseInt(scrHeight);
	
	var agt=navigator.userAgent.toLowerCase();
	if (agt.indexOf("opera") != -1){
	  var args= new Array();
	  args[0]='parent';
	  args[1]=imageName;
	  var i ; document.MM_returnValue = false;
	  for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
	} else {
	newWindow = window.open("/Popups/PopUpImage.htm","newWindow","width="+scrWidth+",height="+scrHeight+",left="+posLeft+",top="+posTop);
	newWindow.document.open();
	newWindow.document.write('<html><title>'+alt+'</title><body leftmargin="0" topmargin="0" marginheight="0" marginwidth="0" bgcolor='+bgcolor+' onBlur="self.close()" onClick="self.close()">');  
	newWindow.document.write('<table width='+imageWidth+' border="0" cellspacing="0" cellpadding="0" align="center" height='+scrHeight+' ><tr><td>');
	newWindow.document.write('<img src="'+imageName+'" width='+imageWidth+' height='+imageHeight+' alt="Click screen to close" >'); 
	newWindow.document.write('</td></tr></table></body></html>');
	newWindow.document.close();
	newWindow.focus();
	}
}

function PopUpWindow(PageName,PageWidth,PageHeight) {
// Purpose	: shows a new pre-defined pop-up window
// In		: PageName	- the path & filename of the page to show
//		: PageWidth	- the width of the page to show
//		: PageHeight	- the height of the page to show

	// get users screen size
	var w = screen.width;
	var h = screen.height;

	// convert to Integers
	w = parseInt(w);
	h = parseInt(h);

	// calculate the position of the new window, (centre screen)
	var posLeft=(w-PageWidth)/2;
	var posTop=(h-PageHeight)/2;

	// convert to Integers
	posTop = parseInt(posTop);
	posLeft = parseInt(posLeft);		
	

	// build string to represent the new page layout
	var sParams = "height="+PageHeight+",width="+PageWidth+",left="+posLeft+",top="+posTop;
	    sParams=sParams+",toolbar=no,status=no,scrollbars=yes,location=no,menubar=no,directories=no,resizable=yes"

	// show the new pop-up window
	var newWindow=window.open(PageName,'newWindow',sParams)
	newWindow.focus();

}

function ShowDate() {
// Purpose	: shows the current date
// Note         : Does not seem to work in Netscape 4.0, todo check later versions

       var d=new Date()
       // day not used var weekday=new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday")

       var monthname=new Array("January","February","March","April","May","June","July","August","September","October","November","December")

       // day not used document.write(weekday[d.getDay()] + " ")
       document.write(d.getDate() + " ")
       document.write(monthname[d.getMonth()] + " ")
       document.write(d.getFullYear())

}

function ShowYear() {
// Purpose	: shows the current year

var d=new Date()

	document.write(d.getFullYear())
}


function isMac() {
// Purpose	: Checks if the user is using an Apple Mac machine
// In		: None
// Out		: True if the user is using an Apple Mac machine

var BlnReturn;

  // set default return value
  BlnReturn = false;

   if (navigator.userAgent.indexOf('Mac') != -1) {
       BlnReturn = true;
   }

   return BlnReturn;

}


function isUnix() {
// Purpose	: Checks if the user is using a Unix machine
// In		: None
// Out		: True if the user is using a Unix machine

var BlnReturn;

  // set default return value
  BlnReturn = false;

   if (navigator.userAgent.indexOf('X11') != -1) {
       BlnReturn = true;
   }

   return BlnReturn;

}


function isPC() {
// Purpose	: Checks if the user is using a PC machine, e.g. not Unix or Mac
// In		: None
// Out		: True if the user is using a PC machine

var BlnReturn;

  // set default return value
  BlnReturn = false;


   if (!isMac() && !isUnix()) {
       BlnReturn = true;
   }

   return BlnReturn;

}


function preloadImages() {
// Purpose	: Preloads images into the browser cache
// Usage	: Call the function by placing SCRIPT element somewhere in the
//		  document, which passes each image path & name as an argument
// Example	: <script language="JavaScript">preloadImages("imagedefault.gif","imagemouseover.gif") </script>
// In		: List of image paths/names
// Out		: None

var loadedImages = new Array;

   // loop over each passed image var argument
   for (i=0; i < preloadImages.arguments.length; i++) {
       loadedImages[i] = new Image();
       loadedImages[i].src = preloadImages.arguments[i];
   }
}

function RTrim(string) {
// Parameters in: string type string - string to have characters removed            
//           out: string - 'string' with trailing spaces removed;

string += ""; //Explicit cast to string
var j = string.length-1;

while(j >= 0 && string.charAt(j)== " ") {
j--;
}

return string.substring(0,j+1);
}


function LTrim(string) {
// Parameters in: string type string - string to have characters removed            
//           out: string - 'string' with leading spaces removed;

string += ""; //Explicit cast to string
var j = 0;
var len = string.length;

while(string.charAt(j)== " " && j < len) {
j++;
}

return string.substring(j,len);
}

function Trim(string) {
// Parameters in: string type string - string to have characters removed            
//           out: string - 'string' with leading and trailing spaces removed;

return LTrim(RTrim(string));
}

function gethema44(m,fw,w,p,pn,rn,dm) {

   document.write("<a h"+"re"+"f="+"m"+"a"+"il"+"t"+"o:"+w+"@"+pn+fw+" class="+dm+">"+rn+"</a>")

}

function MM_reloadPage(init) {
// reloads the window if Nav4 resized

  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function blockError(){return true;}
window.onerror = blockError;



