function limitDate(){
	if($(this).attr('id') == "arrivalDate"){
		var dateMin = 0;
	}else if($("#arrivalDate").val() != ""){
		var dateMin = $("#arrivalDate").datepicker("getDate");
	}else{
		var dateMin = 0;
	}
	return{
		minDate: dateMin
	};
}

function updateNights(){
	if($("#arrivalDate").val() != "" && $("#departureDate").val() != ""){
		$(".dateWrapper").addClass("filled");
		var arrivalDate = transferDateString($("#arrivalDate").val());
		var departureDate = transferDateString($("#departureDate").val());
		var nights = Math.floor( ( Date.parse(departureDate) - Date.parse(arrivalDate) ) / 86400000);		
		$(".dateWrapper span#nights").html("<span>"+nights+"</span><br />nights");
	}
}

function transferDateString(originalDate){
	 var date =originalDate.substring(0,originalDate.indexOf("/"));
	 var month = originalDate.substring(originalDate.indexOf("/")+1,originalDate.lastIndexOf("/"));
	 var year = originalDate.substring(originalDate.lastIndexOf("/")+1);
	 return month+"/"+date+"/"+year;
}

$(document).ready(function(){
	// Lightbox
	$("a.lightbox, #gallerySlider .thumb a").fancybox();
	// Main nav hover 
	$("ul#mainNav li a").hover(function(){
		if(!$(this).parent().hasClass("active")){
			$(this).animate({color:'#a0271f'},250);
		}
	},function(){
		if(!$(this).parent().hasClass("active")){
			$(this).animate({color:'#752822'},250);
		}
	});
	
	if($("select#rateSelector").length > 0){
		// Get prices
		var prices = new Array();
		function setPrices(data){
			prices = data;
		}
		$.ajax({  
			url: "process.php",
			type: "POST",
			async: false,
			data: "action=getPrices",
			success: function(data){
				var result = jQuery.parseJSON(data);
				setPrices(result);
			}
		});
		
		// Set rates
		var initialIndex = $("select#rateSelector option:selected").index();
		$("table#rateTable tr#weekday td.price span").html(prices[initialIndex]["weekday"]);
		$("table#rateTable tr#weekend td.price span").html(prices[initialIndex]["weekend"]);
		
		// Rates switcher
		$("select#rateSelector").change(function(){
			var selectedIndex = $(this).children("option:selected").index();
			var weekdayElement = $("table#rateTable tr#weekday td.price span");
			var weekendElement = $("table#rateTable tr#weekend td.price span");
			$(weekdayElement).fadeOut(500,function(){
				$(weekdayElement).html(prices[selectedIndex]["weekday"]);
				$(weekdayElement).fadeIn(500);
			});
			$(weekendElement).fadeOut(500,function(){
				$(weekendElement).html(prices[selectedIndex]["weekend"]);
				$(weekendElement).fadeIn(500);
			});
		});
	}
	
	// Set datepicker
	$("#arrivalDate,#departureDate").datepicker({
		showOn: 'both',
		buttonImage: 'images/icon-calendar.gif',
		buttonImageOnly: true,
		changeMonth: true,
		changeYear: true,
		firstDay: 1,
		beforeShow: limitDate,
		onClose: updateNights,
		dateFormat: 'dd/mm/yy',
		showAnim: 'slideDown',
		duration: 'fast'					 
	});
	
	if($("#arrivalDate").length > 0 && $("#departureDate").length > 0){
		updateNights();
	}
	
	// Handle booking form
	$(".add a").click(function(){
		$(this).parent().before("<div class=\"rooms added\"><input type=\"text\" name=\"quantity[]\" class=\"quantity\" value=\"1\" /><select id=\"room\" name=\"room[]\" class=\"room\"><option value=\"0\" selected=\"selected\">Single</option><option value=\"1\">Double</option><option value=\"2\">Twin</option><option value=\"3\">Double for Single Occupancy</option><option value=\"4\">Family</option></select><a href=\"#\" class=\"remove\" title=\"Remove\"><img src=\"images/icon-delete.gif\" alt=\"Remove\" /></a></div>");
		/*if($("#bookForm div.rooms").length > 1){
			$(".rooms	label").text("Rooms:");
		}*/
		return false;
	});
	
	$(".rooms a.remove").live("click", function(){
		$(this).parent().remove();
		/*if($("#bookForm div.rooms").length <= 1){
			$(".rooms	label").text("Room:");
		}*/
		return false;
	});
	
	$(".rooms input.quantity").live("focus", function(){
		if($(this).val() == "1"){
			$(this).val("");
		}
	});
	
	$(".rooms input.quantity").live("blur", function(){
		if($(this).val() == ""){
			$(this).val("1");
		}
	});
	
	// Handle directions form
	$("#drivingDirections").submit(function(){
		var thisLocation = $("#drivingDirections input#postcode").val();
		if(thisLocation != ""){
			var genLink = "http://maps.google.com/maps?&saddr="+thisLocation+",UK&daddr=Oaklea+Guest+House,+London+Road,+Hook,+Hampshire+RG27+9LA";
			var newWindow = window.open(genLink, '_blank');
			newWindow.focus();
		}
		return false;																			
	});
	
	// External links
	$("a[title^='External Link']").attr("rel","external");
  $("a[rel*='external']").attr("target","_blank");
	
	// Set form validation
	$("#bookForm").validate();
	$("#contactForm").validate();
	$("#drivingDirections").validate();
	
});
