/* -----------------------------------------------
   JavaScript Framework v2.0
   Copyright to James Kirby - www.jameskirby.me.uk
   Creative Commons Attribution-Noncommercial-No Derivative Works 2.0 UK: England & Wales License (http://creativecommons.org/licenses/by-nc-nd/2.0/uk/)
----------------------------------------------- */

$(document).ready(function() {
	/* Highslide */
	hs.registerOverlay({ overlayId:'closebutton', position:'top right', fade:2 });
	
	// #nav
	// sfHover()
});

/* ----------------------
   Scripts
---------------------- */

function sfHover() {
	if (document.all&&document.getElementById) {
		var sfEls = document.getElementById("nav").getElementsByTagName("LI");
		for (var i=0; i<sfEls.length; i++) {
			sfEls[i].onmouseover=function() {
				this.className+=" over";
			}
			sfEls[i].onmouseout=function() {
				this.className=this.className.replace(new RegExp(" over\\b"), "");
			}
		}
	}
}

/* Popup:
popup(URL, Width, Height, Left, Top, AutoCenter[0=False, 1=True], FullScreen[0=False, 1=True])
<a href="javascript:popUp('domain', 640, 480, 50, 50, 1, 0)">Popup!</a>
*/
function popup(URL, popWidth, popHeight, popLeft, popTop, autoCenter, fullScreen) {
	day = new Date();
	id = day.getTime();
	if ( autoCenter == 1 ) {
		var popLeft = (screen.width - popWidth) / 2;
		var popTop = (screen.height - popHeight) / 2;
	}
	if ( fullScreen == 1 ) {
		// Open in Full Screen window!
		eval("page"+id+" = window.open(URL, '"+id+"', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width="+(screen.width-10)+",height="+(screen.height-26)+",left=0,top=0');");
	} else {
		// Open in normal window!
		eval("page"+id+" = window.open(URL, '"+id+"', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width="+popWidth+",height="+popHeight+",left="+popLeft+",top="+popTop+"');");
	}
}


/* Konami Code - Just an easter egg :D */
if ( window.addEventListener ) {
	var kkeys = [], konami = "38,38,40,40,37,39,37,39,66,65";
	$(document).keydown(function(e) {
		kkeys.push( e.keyCode );
		if ( kkeys.toString().indexOf( konami ) >= 0 ){
			$(document).unbind('keydown',arguments.callee);
			alert("Created by James Kirby");
			window.location = "http://www.jameskirby.me.uk/";
		}
	});
};


/* ----------------------
   Contact Functions
---------------------- */
/*
$(document).ready(function() {

	///////////////////////////////////

	$("#formFirstName").blur(function() {
		var formFirstNameError = false;
 		if ( $(this).val().length < 3 ) {
 			formFirstNameError = true;
 		}
 		if ( formFirstNameError == true ) {
 			$("#formFirstName").css('background-color','#FFDADA');
 			$("#formFirstNameError").css('color','#D20000');
 		} else {
 			$("#formFirstName").css('background-color','#FFF');
 			$("#formFirstNameError").css('color','#666');
 		}
	});
	
	
	///////////////////////////////////
	
	$("#formLastName").blur(function() {
		var formLastNameError = false;
 		if ( $(this).val().length < 3 ) {
 			formLastNameError = true;
 		}
 		if ( formLastNameError == true ) {
 			$("#formLastName").css('background-color','#FFDADA');
 			$("#formLastNameError").css('color','#D20000');
 		} else {
 			$("#formLastName").css('background-color','#FFF');
 			$("#formLastNameError").css('color','#666');
 		}
	});
	
	
	///////////////////////////////////
	
	$("#formEmail").blur(function() {
		var formEmailError = false;
 		if ( echeck($(this).val()) == false ) {
 			formEmailError = true;
 		}
 		if ( formEmailError == true ) {
 			$("#formEmail").css('background-color','#FFDADA');
 			$("#formEmailError").css('color','#D20000');
 		} else {
 			$("#formEmail").css('background-color','#FFF');
 			$("#formEmailError").css('color','#666');
 		}
	});
	
	///////////////////////////////////
	
	$("#formTelephone").blur(function() {
		var formTelephoneError = false;
 		if ( $(this).val().length < 11 ) {
 			formTelephoneError = true;
 		}
 		if ( formTelephoneError == true ) {
 			$("#formTelephone").css('background-color','#FFDADA');
 			$("#formTelephoneError").css('color','#D20000');
 		} else {
 			$("#formTelephone").css('background-color','#FFF');
 			$("#formTelephoneError").css('color','#666');
 		}
	});
	
	$("#formTelephone").keypress(function (e) { 
	  if( e.which!=8 && e.which!=0 && (e.which<48 || e.which>57)) {
	  	$("#formTelephone").css('background-color','#FFDADA');
			$("#formTelephoneError").css('color','#D20000');
			return false;
    }	else {
			$("#formTelephone").css('background-color','#FFF');
			$("#formTelephoneError").css('color','#666');
			return true;
    }
	});
	
	///////////////////////////////////
	
	$("#formFax").keypress(function (e) { 
	  if( e.which!=8 && e.which!=0 && (e.which<48 || e.which>57)) {
			$("#formFax").css('background-color','#FFDADA');
			$("#formFaxError").css('color','#D20000');
			return false;
    }	else {
			$("#formFax").css('background-color','#FFF');
			$("#formFaxError").css('color','#666');
			return true;
    }
	});
	
	///////////////////////////////////

	$("#formHotelName").blur(function() {
		var formHotelNameError = false;
 		if ( $(this).val().length < 3 ) {
 			formHotelNameError = true;
 		}
 		if ( formHotelNameError == true ) {
 			$("#formHotelName").css('background-color','#FFDADA');
 			$("#formHotelNameError").css('color','#D20000');
 		} else {
 			$("#formHotelName").css('background-color','#FFF');
 			$("#formHotelNameError").css('color','#666');
 		}
	});
	
	///////////////////////////////////

	$("#formHotelAddress").blur(function() {
		var formHotelAddressError = false;
 		if ( $(this).val().length < 3 ) {
 			formHotelAddressError = true;
 		}
 		if ( formHotelAddressError == true ) {
 			$("#formHotelAddress").css('background-color','#FFDADA');
 			$("#formHotelAddressError").css('color','#D20000');
 		} else {
 			$("#formHotelAddress").css('background-color','#FFF');
 			$("#formHotelAddressError").css('color','#666');
 		}
	});
	
	///////////////////////////////////
	
	$("#formHotelRooms").keypress(function (e) { 
	  if( e.which!=8 && e.which!=0 && (e.which<48 || e.which>57)) {
			$("#formHotelRooms").css('background-color','#FFDADA');
			$("#formHotelRoomsError").css('color','#D20000');
			return false;
    }	else {
			$("#formHotelRooms").css('background-color','#FFF');
			$("#formHotelRoomsError").css('color','#666');
			return true;
    }
	});
	
	///////////////////////////////////
	
	$("#formMessage").blur(function() {
		var formMessageError = false;
 		if ( $(this).val().length < 3 ) {
 			formMessageError = true;
 		}
 		if ( formMessageError == true ) {
 			$("#formMessage").css('background-color','#FFDADA');
 			$("#formMessageError").css('color','#D20000');
 		} else {
 			$("#formMessage").css('background-color','#FFF');
 			$("#formMessageError").css('color','#666');
 		}
	});
	
	///////////////////////////////////
	
	$("#submit").click(function() {
		formSubmitError = false;
		
		if ( $("#formFirstName").val().length < 3 ) {
			formSubmitError = true;
		}
		if ( $("#formLastName").val().length < 3 ) {
			formSubmitError = true;
		}
		if ( echeck($("#formEmail").val()) == false ) {
			formSubmitError = true;
		}
		if ( $("#formTelephone").val().length < 3 ) {
			formSubmitError = true;
		}
		if ( $("#formHotelName").val().length < 3 ) {
			formSubmitError = true;
		}
		if ( $("#formHotelAddress").val().length < 3 ) {
			formSubmitError = true;
		}
		if ( $("#formMessage").val().length < 3 ) {
			formSubmitError = true;
		}
		if ( formSubmitError == true ) {
			return false;
		} else {
			return true;
		}
	});
});

function echeck(str) {
	var at="@";
	var dot=".";
	var lat=str.indexOf(at);
	var lstr=str.length;
	var ldot=str.indexOf(dot);
	if (str.indexOf(at)==-1) { return false; }
	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr) { return false; }
	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr) { return false; }
	if (str.indexOf(at,(lat+1))!=-1) { return false; }
	if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot) { return false; }
	if (str.indexOf(dot,(lat+2))==-1) { return false }
	if (str.indexOf(" ")!=-1) { return false; }
	return true;				
}
*/


function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}


var urlParams = {};
(function () {
    var e,
        a = /\+/g,  // Regex for replacing addition symbol with a space
        r = /([^&;=]+)=?([^&;]*)/g,
        d = function (s) { return decodeURIComponent(s.replace(a, " ")); },
        q = window.location.search.substring(1);

    while (e = r.exec(q))
       urlParams[d(e[1])] = d(e[2]);
})();

if(urlParams['ref'] && urlParams['ref']!=''){

	createCookie('ref',urlParams['ref'],30);

}
