	//prepares the on window load function
	function addLoadEvent(func) {
	  var oldonload = window.onload;
	  if (typeof window.onload != 'function') {
	    window.onload = func;
	  } else {
	    window.onload = function() {
	      oldonload();
	      func();
	    }
	  }
	}

	
	
	Object.extend(Event, {
	  _domReady : function() {
	    if (arguments.callee.done) return;
	    arguments.callee.done = true;

	    if (this._timer)  clearInterval(this._timer);

	    this._readyCallbacks.each(function(f) { f() });
	    this._readyCallbacks = null;
	},
	  onDOMReady : function(f) {
	    if (!this._readyCallbacks) {
	      var domReady = this._domReady.bind(this);

	      if (document.addEventListener)
	        document.addEventListener("DOMContentLoaded", domReady, false);

	        /*@cc_on @*/
	        /*@if (@_win32)
	            document.write("<script id=__ie_onload defer src=javascript:void(0)><\/script>");
	            document.getElementById("__ie_onload").onreadystatechange = function() {
	                if (this.readyState == "complete") domReady(); 
	            };
	        /*@end @*/

	        if (/WebKit/i.test(navigator.userAgent)) { 
	          this._timer = setInterval(function() {
	            if (/loaded|complete/.test(document.readyState)) domReady(); 
	          }, 10);
	        }

	        Event.observe(window, 'load', domReady);
	        Event._readyCallbacks =  [];
	    }
	    Event._readyCallbacks.push(f);
	  }
	});

	
	function doTables()
	{
		var sub = document.getElementById('primary');
		var sub_lis = sub.getElementsByTagName('tr');

		var get_body_id = document.getElementsByTagName('body');
		var body_id = get_body_id[0].id;




		for (var i=0; i < sub_lis.length; i++) 
		{
			
				
			sub_lis[i].onmouseover = function()
			{
				this.className= "over";
			}

			sub_lis[i].onmouseout = function()
			{
				this.className= "";
			}

			sub_lis[i].onclick = function()
			{
				var getlink = this.getElementsByTagName('a');
				var href = getlink[0].getAttribute('href');
				document.location = href;
			}

		}

	}
	
	
	function showWindow(siteroot)
	{
	//	alert('open');
		var logo = $('imagelogo');
		//if(logo) logo.className = "hide";
 		if(logo)Effect.toggle('imagelogo', 'appear');
		if(siteroot.indexOf('/proof/') != -1)
		{
			siteroot = "/proof/";
		} else {
			siteroot = "/";
		}
	
		//only allow one
		if($("window_" +123)) return false; 
	
	  win = new Window( { className: 'spread', url: siteroot+'newsletter/index.php?ajax=1',
	  width:310,
	  height:350, destroyOnClose: true, recenterAuto:false } ); 
	  win.showCenter();
	
	}
	
	function doCloaks()
	{
		var all = document.getElementsByTagName('span');
		
		for (var i = all.length - 1; i >= 0; i--){
			if(all[i].className == "cloak")
			{
			//	alert(all[i].id);
				
				var oldText = all[i].firstChild;
				var emailAddress = all[i].firstChild.nodeValue;
				var user = all[i].id;
				var website = 'bemakeshift';
				var newText = user+"@"+website+".co.uk";
				var a = document.createElement("a");
				a.href = "mailto:"+newText+"?subject=enquiry from the site";
				var address = document.createTextNode(newText);
				a.appendChild(address);
				all[i].replaceChild(a,oldText);
			}
			
		};
	}
	
	
	function fadeMessage()
	{
		//$('imagelogo').className="hide";
	//	Effect.Appear('imagelogo');
	//	new Effect.Highlight('feedback', {startcolor:'#333', endcolor:'#336633'}) 
	}
	
	function centerhome()
	{
		
		if(!$('homePageBanner')) return false;
		
		var clientheight = window.innerHeight;
		var wrapperheight = $('wrapper').getHeight();
		
		var offset = (clientheight-wrapperheight)/2;
		
		if(offset>0)
		{
		
			$('wrapper').setStyle({
		position: 'relative',  		
		top: offset+'px'
		 
			});
		}
		
		//alert("wrapper "+wrapperheight+" :: window "+clientheight + " :: offset "+offset);
	}
	
	
	function newsletter()
	{
		if(!$('x-newsletter')) return false
		
		$('x-newsletter').onclick=function() 
		{
			
			
		//	window.open("/newsletter/?ajax=1",null,"height=320,width=400,status=yes,toolbar=no,menubar=no,location=no");
			
			newWindowImage("newsletter/?ajax=1",400,320,'newsletter');
			
			return false;
		}
		//
		
		
	}
	
	function terms()
	{
		if(!$('x-smallprint')) return false
		
		$('x-smallprint').onclick=function() 
		{
			
			
		//	window.open("/newsletter/?ajax=1",null,"height=320,width=400,status=yes,toolbar=no,menubar=no,location=no");
			
			newWindowImage("terms/?ajax=1",400,240,'terms');
			
			return false;
		}
		//
		
		
	}
	
	function newWindowImage(url,w,h,name) {
		
	
	siteroot = "/";
	
	if(screen.width){
	var winl = (screen.width-w)/2;
	var wint = (screen.height-h)/2;
	}else{
	winl = 0;wint =0;
	}
	if (winl < 0) winl = 0;
	if (wint < 0) wint = 0;
	var settings = 'height=' + h + ',';
	settings += 'width=' + w + ',';
	settings += 'top=' + wint + ',';
	settings += 'left=' + winl + ',';
	settings += ''; /* !!!! put in features here to affect all windows !!!! */
	win = window.open(siteroot+url, name,settings);
	win.window.focus();
	}
	
	function arrows()
	{
		var spans = $('primary').getElementsByTagName('span');
		//alert(spans.length);
		for (var i = spans.length - 1; i >= 0; i--){
			
			if(spans[i].className == 'slashes')
			{
				spans[i].innerHTML = '>';
			}
			
			
		};
		
		var top = document.getElementsByTagName('div');
		for (var i = top.length - 1; i >= 0; i--)
		{
			
			if(top[i].className == 'sectionwrapper top')
			{
				var arrowss = "";
				for (var j=0; j < 150; j++) {
					arrowss = arrowss+ "//";
				};
				
				top[i].innerHTML = top[i].innerHTML +'<span class="arrows">'+arrowss+'</span>';
			}
			
			
		};
		
	}
	/*
	
	*/
	function doForm()
	{
		if(document.catalogueForm){
	 	//	alert('form');
			document.catalogueForm.author.onchange=function(){

				document.catalogueForm.submit();
			}	

			document.catalogueForm.orderby.onchange=function(){
				document.catalogueForm.submit();
			}

			document.catalogueForm.order.onchange=function(){
				document.catalogueForm.submit();
			}
			document.catalogueForm.category.onchange=function(){
				document.catalogueForm.submit();
			}
			document.catalogueForm.location.onchange=function(){
				document.catalogueForm.submit();
			}
		}
	
	}
	


	//calls the functions to load on page load

	 Event.onDOMReady(
		function() 
		{ 
		//	centerhome();
			doCloaks();
			doTables()
			newsletter();
			terms();
			arrows();
			doForm();
		});
	

