function checkFooter() {

		windowheight = window.innerHeight;
		pageheight = document.getElementById("pagewrapper").offsetHeight;
		footerheight = document.getElementById("footerwrapper").offsetHeight;

		if (!windowheight) { 
			windowheight = document.documentElement.clientHeight;
		}

		if (!windowheight || windowheight == 0) { 
			windowheight = document.body.clientHeight;
			pageheight = document.getElementById("pagewrapper").offsetHeight;
		}

		difference = windowheight - pageheight;

		if(difference > 0) {
			pageheight = pageheight - footerheight;
			document.getElementById('pagewrapper').style.height = pageheight + difference + "px";
		} else if (difference < 0) {
			pageheight = pageheight - footerheight;
			if((pageheight + difference) > 650) {
				document.getElementById('pagewrapper').style.height = pageheight + difference + "px";
			}
		}
}


// STORE REQUIRED ACTIONS IN VARIABLE //

var W3CDOM = (document.getElementsByTagName);

function init(secure) {

        atags = document.getElementsByTagName("li");

        i=0;
        while (atag = atags[i]) {
                if (atag.className == "topcat") {
			atag.onclick = expandfunc;
		}
                i++;
        }

	document.onclick = clickhidefunc;

        function expandfunc(e) {
                if (!e) var e = window.event;

                target = e.target;
                if (!target) target = e.srcElement;
		if (target.nodeType == 3) // defeat Safari bug
                        target = target.parentNode;

		if(target.className != "subcat") {
	                hidefunc();
		}
		
		while (target.id == "" && target.nodeName != "BODY") { target = target.parentNode; }

		if (document.getElementById(target.id+"_sub")) {
	                document.getElementById(target.id+"_sub").style.display = "BLOCK";
		}

        }

	function clickhidefunc(e) {
                if (!e) var e = window.event;
                target = e.target;
                if (!target) target = e.srcElement;
		if (target.nodeName != "LI") hidefunc();
	}


        function hidefunc() {
            trtags = document.getElementsByTagName("ul");

            i=0;
            while (trtag = trtags[i])
            {
            if (trtag.className == "showhide") trtag.style.display = "none";
                i++;
            }	

	

        }

	function colorfunc() {
		this.style.backgroundColor = "#006A2C";
		this.style.color = "#fff";
	}

	function reversecolorfunc() {
		this.style.backgroundColor = "#00679F";
		this.style.color = "#fff";
	}

	function colorfunc2() {
		this.style.backgroundColor = "#A4DEC1";
		this.style.color = "#00679F";
	}

	function reversecolorfunc2() {
		this.style.backgroundColor = "#006A2C";
		this.style.color = "#fff";
	}


	image1 = new Image();
	image1.src = "/images/menuover.gif";
	image2 = new Image();
	image2.src = "/images/menuoverfirst.gif";
	image3 = new Image();
	image3.src = "/images/menuoverlast.gif";
	image4 = new Image();
	image4.src = "/images/menuedgeright.gif";
	image5 = new Image();
	image5.src = "/images/menuedgeleft.gif";
	image6 = new Image();
	image6.src = "/images/menuleftoveron.gif";
	image7 = new Image();
	image7.src = "/images/menurightoveron.gif";
	image8 = new Image();
	image8.src = "/images/menu_back.gif";
	image9 = new Image();
	image9.src = "/images/menuonleft2.gif";
	image10 = new Image();
	image10.src = "/images/menu_left.gif";
	image11 = new Image();
	image11.src = "/images/menu_both.gif";
	image12 = new Image();
	image12.src = "/images/menu_right.gif";
	image13 = new Image();
	image13.src = "/images/menuonright2.gif";


	// IF ACTIONS ARE NOT SUPPORTED STOP SCRIPT //
	if (!W3CDOM) return;

	var menu = document.getElementById('menu');

	if(menu) {

		menubut = new Array();

		for(i=1; i < 14; i++) {
			menubut[i] = document.getElementById("menu"+i);
		}

		var litags = menu.getElementsByTagName('li');

		for (var i=0;i<litags.length;i++) {

			if(litags[i].className != "on" && litags[i].className != "onlast" && litags[i].className != "onfirst" && litags[i].className != "onleft" && litags[i].className != "onright") {



				if(litags[i].id == "menu4" || litags[i].id == "menu6" || litags[i].id == "menu8" || litags[i].id == "menu10") {
					litags[i].onmouseover = mousegoesover;
					litags[i].onmouseout = mousegoesout;					
				}

				if(litags[i].id == "menu2") {
					litags[i].onmouseover = mousegoesover2;
					litags[i].onmouseout = mousegoesout2;
				}

				if(litags[i].id == "menu12") {
					litags[i].onmouseover = mousegoesover3;
					litags[i].onmouseout = mousegoesout3;
				}



			}

		}



	}

	if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){ //test for MSIE x.x;
		var ieversion=new Number(RegExp.$1) // capture x.x portion and store as a number
	}


}

function mousegoesover2() {
	if(document.getElementById("menu3").className == 'onleft') {
		document.getElementById("menu3").className = "overrighton";
		document.getElementById("menu3").style.backgroundImage = "url('"+image7.src+"')";
	} else {
		document.getElementById("menu3").className = "overright";
		document.getElementById("menu3").style.backgroundImage = "url('"+image5.src+"')";
	}
	document.getElementById("menu1").className = "overfirst";
	document.getElementById("menu1").style.backgroundImage = "url('"+image2.src+"')";
	document.getElementById("menu2").className = "over";
	document.getElementById("menu2").style.backgroundImage = "url('"+image1.src+"')";
}

function mousegoesout2() {
	if(document.getElementById("menu3").className == 'overrighton') {
		document.getElementById("menu3").className = "onleft";
		document.getElementById("menu3").style.backgroundImage = "url('"+image9.src+"')";
	} else {
		document.getElementById("menu3").className = "";
		document.getElementById("menu3").style.backgroundImage = "url('"+image11.src+"')";
	}

	this.className = "";
	this.style.backgroundImage = "url('"+image8.src+"')";

	document.getElementById("menu1").className = "";
	document.getElementById("menu1").style.backgroundImage = "url('"+image10.src+"')";
}

function mousegoesover3() {
	if(document.getElementById("menu11").className == 'onright') {
		document.getElementById("menu11").className = "overlefton";
		document.getElementById("menu11").style.backgroundImage = "url('"+image6.src+"')";
	} else {
		document.getElementById("menu11").className = "overleft";
		document.getElementById("menu11").style.backgroundImage = "url('"+image4.src+"')";
	}
	document.getElementById("menu12").className = "over";
	document.getElementById("menu12").style.backgroundImage = "url('"+image1.src+"')";
	document.getElementById("menu13").className = "overlast";
	document.getElementById("menu13").style.backgroundImage = "url('"+image3.src+"')";
}

function mousegoesout3() {
	if(document.getElementById("menu11").className == 'overlefton') {
		document.getElementById("menu11").className = "onright";
		document.getElementById("menu11").style.backgroundImage = "url('"+image13.src+"')";
	} else {
		document.getElementById("menu11").className = "";
		document.getElementById("menu11").style.backgroundImage = "url('"+image11.src+"')";
	}
	this.className = "";
	this.style.backgroundImage = "url('"+image8.src+"')";
	document.getElementById("menu13").className = "";
	document.getElementById("menu13").style.backgroundImage = "url('"+image12.src+"')";
}

function mousegoesover() {
	var menuid = this.id;
	var menuid = menuid.replace(/[a-z]/g,'')
	menuid = Number(menuid);
	previd = menuid - 1;
	nextid = menuid + 1;
	if(menubut[previd].className == "onright") {
		document.getElementById("menu"+previd).className = "overlefton";
		document.getElementById("menu"+previd).style.backgroundImage = "url('"+image6.src+"')";
	} else {
		document.getElementById("menu"+previd).className = "overleft";
		document.getElementById("menu"+previd).style.backgroundImage = "url('"+image4.src+"')";
	}

	if(menubut[nextid].className == "onleft") {
		document.getElementById("menu"+nextid).className = "overrighton";
		document.getElementById("menu"+nextid).style.backgroundImage = "url('"+image7.src+"')";
	} else {
		document.getElementById("menu"+nextid).className = "overright";
		document.getElementById("menu"+nextid).style.backgroundImage = "url('"+image5.src+"')";
	}

	this.className = "over";
	this.style.backgroundImage = "url('"+image1.src+"')";
}

function mousegoesout() {
	var menuid = this.id;
	var menuid = menuid.replace(/[a-z]/g,'')
	menuid = Number(menuid);
	previd = menuid - 1;
	nextid = menuid + 1;
	if(menubut[previd].className == "overlefton") {
		document.getElementById("menu"+previd).className = "onright";
		document.getElementById("menu"+previd).style.backgroundImage = "url('"+image13.src+"')";
	} else {
		document.getElementById("menu"+previd).className = "";
		document.getElementById("menu"+previd).style.backgroundImage = "url('"+image11.src+"')";
	}

	if(menubut[nextid].className == "overrighton") {
		document.getElementById("menu"+nextid).className = "onleft";
		document.getElementById("menu"+nextid).style.backgroundImage = "url('"+image9.src+"')";
	} else {
		document.getElementById("menu"+nextid).className = "";
		document.getElementById("menu"+nextid).style.backgroundImage = "url('"+image11.src+"')";
	}

	this.className = "";
	this.style.backgroundImage = "url('"+image8.src+"')";
}


	function addEvent2(obj,type,func) {
		if (obj.addEventListener) { obj.addEventListener(type,func,false); return true; }
		if (obj.attachEvent) { return obj.attachEvent("on"+type,func); }
		return false;
	}

	function removeEvent(obj,type,func) {
		if (obj.removeEventListener) { obj.removeEventListener(type,func,false); return true; }
		if (obj.detachEvent) { return obj.detachEvent("on"+type,func); }
		return false;
	}

	function findEvent(e) {
		if (!e) var e = window.event;
		return e;
	}
			
	function findTarget(e) {
		if (e.target) t = e.target;
		else if (e.srcElement) t = e.srcElement;
		while (t.nodeType != 1) {
			document.title += t;
			t = t.parentNode;
		}
		return t;
	}

	function findPos(obj) {
		var x = y = 0;
		if (obj.offsetParent) {
			x = obj.offsetLeft;
			y = obj.offsetTop;
			while (obj = obj.offsetParent) {
				x += obj.offsetLeft
				y += obj.offsetTop
			}
		}
		return [x,y];
	}

	function findViewportSize() {
		var x = y = 0;
		if (self.innerHeight) { // if !ie
			x = self.innerWidth;
			y = self.innerHeight;
		} else if (document.documentElement && document.documentElement.clientHeight) { // if ie6 strict
			x = document.documentElement.clientWidth;
			y = document.documentElement.clientHeight;
		} else if (document.body) { // all other ie
			x = document.body.clientWidth;
			y = document.body.clientHeight;
		}
		return [x,y];
	}

	function findPageSize() {
		var x = y = 0;
		var test1 = document.body.scrollHeight;
		var test2 = document.body.offsetHeight
		if (test1 > test2) { // if !ie mac
			x = document.body.scrollWidth;
			y = document.body.scrollHeight;
		} else { // if ie mac
			x = document.body.offsetWidth;
			y = document.body.offsetHeight;
		}
		return [x,y];
	}

	function findPageOffset() {
		var x = y = 0;
		if (self.pageYOffset) { // if !ie 
			x = self.pageXOffset;
			y = self.pageYOffset;
		} else if (document.documentElement && document.documentElement.scrollTop) { // if ie6 strict
			x = document.documentElement.scrollLeft;
			y = document.documentElement.scrollTop;
		} else if (document.body) { // all other ie
			x = document.body.scrollLeft;
			y = document.body.scrollTop;
		}
		return [x,y];
	}

	function findMousePos(e)
	{
		var x = y = 0;
		if (e.pageX || e.pageY) {
			x = e.pageX;
			y = e.pageY;
		} else if (e.clientX || e.clientY) 	{
			x = e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
			y = e.clientY + document.body.scrollTop + document.documentElement.scrollTop;
		}
		return [x,y];
	}

	function vector() {
		this.x = 0; this.y = 0; this.z = 0;
	}

	function addClass(object,classname) {
		object.className += " "+classname;
	}

	function checkClass(object,classname) {
		classes = object.className.split(' ');
		var i;
		for (i=0;i<classes.length;i++) {
			if (classes[i] == classname) return true;
		}
		return false;
	}

	function removeClass(object,classname)
	{
		classes = object.className.split(' ');
		var i; var newclass = "";
		for (i=0;i<classes.length;i++) {
			if (classes[i] != classname) newclass += " "+classes[i];
		}
		object.className = newclass;
	}

	function MM_findObj(n) {
	var p,i,x; d=document; if(!(x=d[n])&&d.all)x = d.all[n];
	for(i=0;!x&&d.layers&&i<d.layers.length;i++)x=MM_findObj(n,d.layers[i].document);
	if(!x&&document.getElementById)x=document.getElementById(n);return x; }

	function MM_showHideLayers() {
	var i,p,v,obj,args=MM_showHideLayers.arguments; i=0;
	if((obj=MM_findObj(args[i]))!=null) { v=args[i+1];
	if(obj.style) {obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v;
	} obj.visibility=v; } }

	function show_layer (thislayer) {


		if (thislayer != 'none') {
			MM_showHideLayers(thislayer, 'show');
			if (thislayer != 'our_service') {
				myobj = MM_findObj('option_' + thislayer);
				myobj.className = 'navlinktableon';
			}
			if(document.forms[1]) {			
				for(a=0;a<=document.forms[1].length;a++) {
					if(document.forms[1][a]) {
						document.forms[1][a].style.visibility = 'hidden';
					}
				}
			}
			if(document.forms[3]) {			
				for(a=0;a<=document.forms[3].length;a++) {
					if(document.forms[3][a]) {
						document.forms[3][a].style.visibility = 'hidden';			
					}
				}
			}
		} else {
			if(document.forms[1]) {		
				for(a=0;a<=document.forms[1].length;a++) {
					if(document.forms[1][a]) {
						document.forms[1][a].style.visibility = 'visible';
					}
				}
			}
			if(document.forms[3]) {	
				for(a=0;a<=document.forms[3].length;a++) {
					if(document.forms[3][a]) {
						document.forms[3][a].style.visibility = 'visible';			
					}
				}
			}
		}
	}

	function addToFavorites() { 
		var url = "http://www.waudbys.co.uk"; 
		var title = "Waudbys"; 

		if (window.sidebar) { 
			// Mozilla Firefox Bookmark		
			window.sidebar.addPanel(title, url,"");	
		} else if( window.external ) { 
			//IE Favorite		
			window.external.AddFavorite( url, title); 
		}
	}





	function runSlideShow(backid, imageid, imagearray,d) {

		if (!d) var d = 0;

		nextPic = d + 1; if (nextPic >= imagearray.length) nextPic = 0; 

		fadelength = 2000;
		steps = 100;

		// Set Background Image To Match Foreground
		document.getElementById(backid).style.background = "url('"+document.getElementById(imageid).src+"')";

		// Set Foreground Opacity to Transparent
		setTimeout('setOpacity("'+imageid+'",0)',50);

		// Set Foreground to the next Picture
		setTimeout('document.getElementById(\''+imageid+'\').src = \''+imagearray[nextPic]+'\'',100);

		// Loop through changing the Opacity
		for(i = 0; i <= steps; i++) {
			opacity = i/steps * 100;
			setTimeout('setOpacity("'+imageid+'",'+opacity+')',((i*(fadelength/steps))+150));
		}

		d++;
		
		if (d >= imagearray.length) d=0;

		setTimeout( function () { runSlideShow(backid,imageid,imagearray,d) } ,3000);

	}

	function arrayToString(arr) {
		return str = 'new Array("' + arr.join('", "') + '")';
	}

	function setOpacity(id,value) {
		document.getElementById(id).style.opacity = (value / 100);
		document.getElementById(id).style.MozOpacity = (value / 100);
		document.getElementById(id).style.KhtmlOpacity = (value / 100);
		document.getElementById(id).style.filter = "alpha(opacity=" + value + ")";
	}

function displayWarranty(formid,warrantyid) {

	if(document.getElementById("warranty" + warrantyid)) {

		topdistance = findPageOffset();
		document.getElementById("warranty" + warrantyid).style.top = parseInt(topdistance[1]) + 10 + "px";
		document.getElementById("fade").style.display = "block";

		document.getElementById("warranty" + warrantyid).style.display = "block";
		document.getElementById("warranty" + warrantyid + "_button").className = formid;

	} else {

		document.getElementById(formid).submit();

	}

}
