// STORE REQUIRED ACTIONS IN VARIABLE //

var W3CDOM = (document.getElementsByTagName);

function init() {

	windowwidth = window.innerWidth;
	pagewidth = document.getElementById("pagewrapper").offsetWidth;

	if (!windowwidth) {
		windowwidth = document.documentElement.clientWidth;
	}

	if (!windowwidth || windowwidth == 0) {
		windowwidth = document.body.clientWidth;
		pagewidth = document.getElementById("pagewrapper").offsetWidth;
	}

	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
	}

	if(windowwidth > 900) {

		document.getElementById("pagewrapper").style.marginRight = "5%";
		document.getElementById("pagewrapper").style.marginLeft = "5%";
		document.getElementById("topfix").style.height = "10px";

	} else {

		document.getElementById("pagewrapper").style.marginRight = "0px";
		document.getElementById("pagewrapper").style.marginLeft = "0px";
		document.getElementById("topfix").style.height = "0px";

	}


	if (ieversion == 6) {

//		document.getElementById("rightside2").style.height = document.getElementById("headerwrapper").offsetHeight - 21 + "px";
//		document.getElementById("leftside2").style.height = document.getElementById("headerwrapper").offsetHeight - 21 + "px";

	} else if (ieversion == undefined) {

//		document.getElementById("rightside2").style.height = document.getElementById("headerwrapper").offsetHeight - 21 + "px";
//		document.getElementById("leftside2").style.height = document.getElementById("headerwrapper").offsetHeight - 21 + "px";

	} else {

//		document.getElementById("rightside2").style.height = document.getElementById("headerwrapper").offsetHeight - 41 + "px";
//		document.getElementById("leftside2").style.height = document.getElementById("headerwrapper").offsetHeight - 41 + "px";

	}

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

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

	if(menu) {

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

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

			ptags[i].onmouseover = testing1;
			ptags[i].onmouseout = testing2;

		}

	}

}

function testing1() {
	this.className = "over";
}

function testing2() {
	this.className = "";
}

function clearFunc(obj1,obj2) {

	var qitem = document.getElementById(obj2);

	if(qitem.value == obj1) {

		qitem.value = "";
	
	}

}





	function addEvent(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 start_left() {

		var slides1 = document.getElementById("banner1");

		var scrollbar = document.getElementById("bannerwrapper");
		maxwidth = scrollbar.offsetWidth;

		slides1width = slides1.offsetWidth;
				
		function move_left(obj1) {

			if(document.controls.status.value == 1) {

				pos1 = document.getElementById("banner1").offsetLeft;

				val1 = pos1 + 1;

				if(pos1 != 0) {
					obj1.style.left = val1 + "px";
				}
	
				setTimeout( function () { move_left(obj1) } ,1);
			}
	
		}

		move_left(slides1);

	}

	function start_right() {

		var slides1 = document.getElementById("banner1");

		var scrollbar = document.getElementById("bannerwrapper");
		maxwidth = scrollbar.offsetWidth;

		slides1width = slides1.offsetWidth;
				
		function move_right(obj1) {

			if(document.controls.status.value == 2) {

				pos1 = document.getElementById("banner1").offsetLeft;

				val1 = pos1 - 1;

				if(pos1 > -(slides1width - maxwidth)) {
					obj1.style.left = val1 + "px";
				}
	
				setTimeout( function () { move_right(obj1) } ,1);
			}
	
		}

		move_right(slides1);

	}

	function start_left3() {

		var slides1 = document.getElementById("banner1");

		var scrollbar = document.getElementById("bannerwrapper2");
		maxwidth = scrollbar.offsetWidth;

		slides1width = slides1.offsetWidth;

		pos1 = document.getElementById("banner1").offsetLeft;
		val1 = pos1 + 804

		if(val1 <= 0) {
			slides1.style.left = val1 + "px";
		}	

	}

	function start_right3() {

		var slides1 = document.getElementById("banner1");

		var scrollbar = document.getElementById("bannerwrapper2");
		maxwidth = scrollbar.offsetWidth;

		slides1width = slides1.offsetWidth;

		pos1 = document.getElementById("banner1").offsetLeft;
		val1 = pos1 - 804;			

		if(val1 > -(slides1width - maxwidth)) {
			slides1.style.left = val1 + "px";
		}

	}

	function start_left2() {

		var slides1 = document.getElementById("banner1");

		var scrollbar = document.getElementById("bannerwrapper2");
		maxwidth = scrollbar.offsetWidth;

		slides1width = slides1.offsetWidth;
				
		function move_left(obj1) {

			if(document.controls3.status3.value == 1) {

				pos1 = document.getElementById("banner1").offsetLeft;

				val1 = pos1 + 4;

				if(pos1 <= 0) {
					obj1.style.left = val1 + "px";
				}
	
				setTimeout( function () { move_left(obj1) } ,1);
			}
	
		}

		move_left(slides1);

	}

	function start_right2() {

		var slides1 = document.getElementById("banner1");

		var scrollbar = document.getElementById("bannerwrapper2");
		maxwidth = scrollbar.offsetWidth;

		slides1width = slides1.offsetWidth;
				
		function move_right(obj1) {

			if(document.controls3.status3.value == 2) {

				pos1 = document.getElementById("banner1").offsetLeft;

				val1 = pos1 - 4;

				if(pos1 > -(slides1width - maxwidth)) {
					obj1.style.left = val1 + "px";
				}
	
				setTimeout( function () { move_right(obj1) } ,1);
			}
	
		}

		move_right(slides1);

	}


	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) } ,6000);

	}

	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 + ")";
	}

	var mytimer;

	function updateTotals() {

		var totals = document.getElementById('sizes_table');

		var qty = 0;

		if(totals) {

			var itags = totals.getElementsByTagName('input');

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

				if(itags[i].value != '') {
					qty = qty + parseInt(itags[i].value);				
				}

			}

			if(document.getElementById('price_excl_vat')) {

				totalprice_exclvat = Math.round((qty * parseFloat(document.getElementById('price_excl_vat').value)) * 100) / 100;
				totalprice_inclvat = Math.round((qty * parseFloat(document.getElementById('price_incl_vat').value)) * 100) / 100;

				document.getElementById('total_excl_vat').innerHTML = totalprice_exclvat.toFixed(2);
				document.getElementById('total_incl_vat').innerHTML = totalprice_inclvat.toFixed(2);

			} else {

				var qbreaks = document.getElementById('qty_breaks');

				var intags = qbreaks.getElementsByTagName('input');

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

					if(intags[i].className == 'price_excl_vat') {

						var thisqty = intags[i].id.split("_");
						if(qty >= thisqty[1]) {
							var idofprice = thisqty[1];
						}

					}
	
				}

				if(document.getElementById('exclbreak_' + idofprice)) {				
	 				totalprice_exclvat = Math.round((qty * parseFloat(document.getElementById('exclbreak_' + idofprice).value)) * 100) / 100;		
	 				totalprice_inclvat = Math.round((qty * parseFloat(document.getElementById('inclbreak_' + idofprice).value)) * 100) / 100;
	
					document.getElementById('total_excl_vat').innerHTML = totalprice_exclvat.toFixed(2);
					document.getElementById('total_incl_vat').innerHTML = totalprice_inclvat.toFixed(2);
				}

			}

			clearTimeout(mytimer);
			mytimer = setTimeout( function () { updateTotals() } ,1000);

		}

	}

	function checkForm() {

		var totals = document.getElementById('sizes_table');

		var qty = 0;

		if(totals) {

			var itags = totals.getElementsByTagName('input');

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

				if(itags[i].value != '') {
					qty = 1;	
				}

			}

		}

		var colours = document.getElementById('colours_table');

		var cols = 0;

		if(colours) {

			var itags = colours.getElementsByTagName('input');

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

				if(itags[i].checked != '') {
					cols = 1;	
				}

			}

		}

		if(cols == 0 && qty == 0) {
			window.alert("Please choose a colour.\nPlease enter at least one quantity amount.");
		} else if(cols == 0) {
			window.alert("Please choose a colour.");
		} else if (qty == 0) {
			window.alert("Please enter at least one quantity amount.");
		} else {
			this.submit();			
		}

	}

