		<!-- Scripts for the menu scrolling
		//
		var init=-13; // initial div height (distance from top)
		var endpos=init; // the end position for the div to get to
		var devide=6; // easing speed
		var loop_run=0; // 0 = false, 1 = true - is the loop running or not
		
		//------------------------------
		function setInit(){
			// reset the initial y position of the menu div on page-load
			var menu = document.getElementById('menu');
			menu.style.top = init+"px";
			scrollIt();
		}

		function scrollIt(){
			if(document.all){//for IE
				var scrl = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop
				endpos = init+scrl;
			} else {//For the rest
				endpos = init+window.pageYOffset;
			}
			//alert('endpos = '+endpos);
			if (loop_run == 0){
				loop_run=1;
				looper();
			}
		}

		function looper(){
			// runs untill the div gets to its end position
			var menu = document.getElementById('menu');
			
			var StrPos = new String(menu.style.top); // current div position
			nowpos = new Number(StrPos.substring(0,StrPos.length - 2));
			//alert("nowpos = "+nowpos);
			
			var dis = endpos - nowpos; // distance from end position
			var jump = Math.round(dis/devide); // length (in pixels) of next jump
			//alert('jump = '+jump);
			//alert("dis = "+dis);
			if (jump == 0){
				if (dis > 0)
				{jump=1;}
				else
				{jump=-1;}
			}
			var newpos = jump + nowpos; // the new calculated div position
			if (Math.abs(dis) <= 1){
			
				// if the div has reached it's end position
				menu.style.top = endpos+"px";
				loop_run=0;
			} else {
				// go to new position, and loop.
				menu.style.top = newpos+"px";
				mytimer = setTimeout("looper()", 40);
			}	
		}
		
		//End menu scroll scripts
		
		function FixLayout(){
			//detect browser and correct style sheet accordingly - needed for mozilla and IE
			var ver = new String(navigator.appVersion);
			var ua = new String(navigator.userAgent);
			if(ver.indexOf("Safari") == -1 && navigator.appName == "Netscape"){
				//fix for mozilla/netscape
				//document.getElementById("main").style.width = "728px";
			} else if (navigator.appName == "Microsoft Internet Explorer" && ua.indexOf("Opera") == -1 && navigator.platform == "Win32"){
				//Fix for IE/Mac
				//document.getElementById("main").style.padding = "0 0 0 2px";
			}
		}
		
		function SwapImg(id,state){
			var img = document.getElementById(id);
			if(state == "on"){
				myString = new String(img.src);
				rExp = /_off/gi;
				newString = new String ("_over");
				results = myString.replace(rExp, newString);
				img.src = results;
			} else if (state == "off"){
				myString = new String(img.src);
				rExp = /_over/gi;
				newString = new String ("_off");
				results = myString.replace(rExp, newString);
				img.src = results;
			} 
		}
		
		function CheckForm(){
			var form = document.forms[0];
			var errors = false;
			var feedback = "";
			//Check booking type

			//check name
			if(form.elements[0].value == ""){
				errors = true;
				feedback += "Please enter your First Name\n";
			}
			//check family name
			if(form.elements[1].value == ""){
				errors = true;
				feedback += "Please enter your Surname\n";
			}
			//check email
			if(form.elements[2].value == ""){
				errors = true;
				feedback += "Please enter your email\n";
			} else if (form.elements[2].value != ""){
				var pattern = /[A-Za-z0-9._-]+@[^.]+\..+/;
				if (!pattern.test(form.elements[2].value)){
					errors = true;
					feedback += "Please enter a valid email address\n";
				}
			}
			//In case user is making a booking
			if(form.elements[0].value == "Booking"){
				//check phone
				if(form.elements[3].value == 0){
					errors = true;
					feedback += "Please enter a telephone number\n";
				}
				//check arrival
				if(form.elements[4].value == ""){
					errors = true;
					feedback += "Please enter an arrival date\n";
				}
				//check departure
				if(form.elements[5].value == ""){
					errors = true;
					feedback += "Please enter a departure date\n";
				}
				//check time
				if(form.elements[6].value == ""){
					errors = true;
					feedback += "Please enter an arrival time\n";
				}
				//check studio type
				if(form.elements[7].value == 0){
					errors = true;
					feedback += "Please select Apartment Type\n";
				}
				//check number of studios
				if(form.elements[8].value == 0){
					errors = true;
					feedback += "Please select number of required studios\n";
				}
				//check card type
				if(form.elements[10].value == 0){
					errors = true;
					feedback += "Please select a card type\n";
				}
				//check card number
				if(form.elements[11].value == ""){
					errors = true;
					feedback += "Please enter card number\n";
				}
				//check expiry date
				if(form.elements[12].value == ""){
					errors = true;
					feedback += "Please enter expiry date\n";
				}
				//check security code
				if(form.elements[13].value == ""){
					errors = true;
					feedback += "Please enter security code\n";
				}
				//check issue
				if(form.elements[10].value == "Switch" && form.elements[16].value == "" && form.elements[15].value == ""){
					errors = true;
					feedback += "Please enter issue number or start date\n";
				}
				//check terms agree
				if(form.elements[16].checked == false){
					errors = true;
					feedback += "You need to agree to terms and conditions\n";
				}
			}//end if making a booking

			//if no errors were made
			if(!errors){
				var conf = confirm("Send form?");
				if(conf){
					document.forms[0].submit();
				} else {
					return false;
				}
			} else {
				alert(feedback);
				return false;
			}
		}

		//Similar function but opens the form submission page in a new window
		function SendForm(){

			var form = document.forms[0];
			var errors = false;
			var feedback = "";
			var j = new RegExp();
			//check name
			if(form.elements[0].value == ""){
				errors = true;
				feedback = "Please enter your name\n";
			}
			//check email
			if(form.elements[1].value == ""){
				errors = true;
				feedback += "Please enter your email\n";
			} else if (form.email.value != ""){
				var pattern = /[A-Za-z0-9._-]+@[^.]+\..+/;
				if (!pattern.test(form.email.value)){
					errors = true;
					feedback += "Please enter a valid email address\n";
				}
			}
			//In case user is making a booking

			//if no errors were made
			if(!errors){
				var conf = confirm("Send form?");
				if(conf){
					//document.getElementById("ContactForm").setAttribute('target','_blank');
					document.forms[0].submit();
				} else {
					return false;
				}
			} else {
				alert(feedback);
				return false;
			}
		}
		function WinOpen(url,w,h){
			window.open(url,'PopUp','width='+w+',height='+h+',toolbar=0,scrollbars=0,status=0,top=10,left=10');
		}
		
		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];
					}
				}
			}
		}
		