// Top-navigation
$(document).ready(function() {

	//Top navagtion
	if(document.all) {
		$('#Menu li.HasSubMenu').hover(function() {
			$(this).addClass('over');
			return false;
		},
		function() {
			$(this).removeClass('over');
		});
	}
	
	//$("#menu_67 a").html("Beschikbaarheid");
	
	$("#menu_202 a").addClass("iframe");
	$("#menu_202 a").fancybox({
		        'hideOnContentClick': false,
		        'zoomSpeedIn':		0, 
		        'zoomSpeedOut':	0, 
		        'overlayShow':		true,
		        'width': '75%',
		        'height': '75%',
		        'scrolling': 'no',
		        'autoScale': false
	});
	
	var highestCol = Math.max($(".leftCol").height(),$(".rightCol").height());
	$(".leftCol").css("height",highestCol);
	$(".rightCol").css("height",highestCol);
	
	$('#arrangements img').hover(function(){
    	$(this).stop().animate({backgroundColor: '#7a6a60'});
	}, function() {
    	$(this).stop().animate({backgroundColor: '#402A1B'});
	});
	
	$('.date-pick').datePicker({clickInput:true});
	
	$('#dateFrom').bind(
		'dpClosed',
		function(e, selectedDates)
		{
			//var d = selectedDates[0];
			//if (d) {
				//d = new Date(d);
				//$('#dateTo').dpSetStartDate(d.addDays(1).asString());
			//}
			getAvailableRooms();
			checkSummerMonths();
		}
	);
	$('#dateTo').bind(
		'dpClosed',
		function(e, selectedDates)
		{
			//var d = selectedDates[0];
			//if (d) {
				//d = new Date(d);
				//$('#dateFrom').dpSetEndDate(d.addDays(-1).asString());
			//}			
			getAvailableRooms();
			checkSummerMonths();
		}
	);	
	
	$(".gallery a").lightBox({fixedNavigation:true});
	$("a.lightbox").lightBox();
	
	var panoramic = $("#panoramic").html();
	
	$(".gallery").after(panoramic);
	$("#panoramic").remove();
	
	// Get reservation-calendar
	if ( $("#calendarTable").length > 0 ) {		
		getCalendar("/ajax/getCalendar.php");
	}

	// Get guestbook entries
	if ( $("#guestbookEntries").length > 0 ) {		
		//getGuestbookEntries("/ajax/getGuestbookEntries.php");	
		$("#guestbookEntries .paging a").bind("click", function(e){
      		getGuestbookEntries("/ajax/getGuestbookEntries.php?page=" + $(this).attr("rel"));
    	});
		
	}
	
	$(".teaser .teaser_thumb img").removeAttr("width");
	$(".teaser .teaser_thumb img").removeAttr("height");
	$(".contentSection .teaser_thumb img").removeAttr("width");
	$(".contentSection .teaser_thumb img").removeAttr("height");

	
	$( ".teaser h3" ).each(
		function( intIndex ){
			var teaserTitle = $(this).text();
			$("<h3>"+teaserTitle+"</h3>").insertAfter($(this).parent().find(".teaser_thumb"));
			$(this).remove();
		}
	);
	
	
	$(".teaser").find("p:last").css("text-align","right");
	
	
	// Process reservation form
	$("#reservationForm").submit(function(){
							  
		var str = $("#reservationForm").serialize();

   		$.ajax({
   			type: "POST",
   			url: "/ajax/process_reservation.php",
   			data: str,
   			success: function(msg){    
				$("#feedback").ajaxComplete(function(event, request, settings){
					if(msg == 'OK'){ // Message Sent? Show the 'Thank You' message and hide the form
						result = '<div class="notification_ok"><p>Bedankt! Uw reservatie werd goed verwerkt.</p></div>';
						$("#reservationForm").hide();
						_gaq.push(['_trackEvent', 'Reservation Form', 'Submit']);
					}
					else{
						result = msg;
						newCaptcha();
					}
					$(this).html(result);
				});
			}
 		});
		return false;
	});
	
	//Activate or deactivate all rooms in reservation form
	$("#bookAll").change(
		function(){	
			if($(this).is(':checked')){
				$(":checkbox[name='room[]']").attr('checked', true);
			}
			else{
				$(":checkbox[name='room[]']").attr('checked', false);
			}
		}
	);
	
	// Process guestbook form	
	$("#guestbookForm").submit(function(){
							  
		var str = $("#guestbookForm").serialize();

   		$.ajax({
   			type: "POST",
   			url: "/ajax/process_guestbook.php",
   			data: str,
   			success: function(msg){    
				$("#feedback").ajaxComplete(function(event, request, settings){
					if(msg == 'OK'){ // Message Sent? Show the 'Thank You' message and hide the form
						result = '<div class="notification_ok"><p>Bedankt! Uw bericht werd goed verwerkt.</p></div>';
						$("#guestbookForm").hide();
						$("#guestbookEntries").hide();
						_gaq.push(['_trackEvent', 'Guestbook', 'Submit']);
					}
					else{
						result = msg;
						newCaptcha();						
					}
					$(this).html(result);
				});
			}
 		});		
		return false;
	});
	
	

	// Process contact form	
	$("#contactForm").submit(function(){
							  
		var str = $("#contactForm").serialize();

   		$.ajax({
   			type: "POST",
   			url: "/ajax/process_contact.php",
   			data: str,
   			success: function(msg){    
				$("#feedback").ajaxComplete(function(event, request, settings){
					if(msg == 'OK'){ // Message Sent? Show the 'Thank You' message and hide the form
						result = '<div class="notification_ok"><p>Bedankt! Uw bericht werd goed verwerkt.</p><p>Wij nemen zo snel mogelijk contact met u op.</p></div>';
						$("#contactForm").hide();
						_gaq.push(['_trackEvent', 'Contact Form', 'Submit']);
					}
					else{
						result = msg;
						newCaptcha();
					}
					$(this).html(result);
				});				
			}
 		});
		return false;
	});
	
	// Process magazine form	
	$("#magazineForm").submit(function(){
							  
		var str = $("#magazineForm").serialize();

   		$.ajax({
   			type: "POST",
   			url: "/ajax/process_magazine.php",
   			data: str,
   			success: function(msg){    
				$("#feedback").ajaxComplete(function(event, request, settings){
					if(msg == 'OK'){ // Message Sent? Show the 'Thank You' message and hide the form
						result = '<div class="notification_ok"><p>Bedankt! Uw aanvraag werd goed verwerkt.</p><p>Wij nemen zo snel mogelijk contact met u op.</p></div>';
						$("#contactForm").hide();
						_gaq.push(['_trackEvent', 'Magazine Order Form', 'Submit']);
					}
					else{
						result = msg;
						newCaptcha();
					}
					$(this).html(result);
				});				
			}
 		});
		return false;
	});			
	
	// Reload captcha
	$("#reloadCaptcha").click(function () { 
		newCaptcha();
    });
    
    // price table stripes
    $("#prices table tr:odd").css("background-color", "#1D1310");
	
});

function getAvailableRooms(){
	if($('#dateFrom').val() != "" && $('#dateTo').val() != ""){
    	$.getJSON("/ajax/getAvailableRooms.php",{dateFrom: $('#dateFrom').val(), dateTo: $('#dateTo').val()}, function(j){
      		var options = '';
      		for (var i = 0; i < j.length; i++) {
        		options += '<input type="checkbox" name="room[]" value="' + j[i].optionValue + '" /> ' + j[i].optionDisplay + '<br/>';
      		}
      		if(options == ''){
		      	options += '<div class="notification_nok"><p>Geen kamers beschikbaar voor de gekozen periode.</p></div>';
      		}
      		$("#rooms").html(options);
    	});
	}	
}

function parseDate(str) {
    var mdy = str.split('/')
    return new Date(mdy[2], mdy[1]-1, mdy[0]);
}

function daydiff(first, second) {
    return (second-first)/(1000*60*60*24)
}


function checkSummerMonths(){

	var from = $('#dateFrom').val();
	var to = $('#dateTo').val();
	
	var y1 = from.substr(6,4);
	var y2 = to.substr(6,4);	

	var m1 = from.substr(3,2);
	var m2 = to.substr(3,2);

	var d1 = parseDate(from);
	var d2 = parseDate(to);	
			
	if(from != "" && to != ""){
				
		//summer months
		if((m1 == "07" && m2 == "07") || (m1 == "07" && m2 == "08") || (m1 == "08" && m2 == "08") ){
		
			var diff = daydiff(d1, d2);
			//alert(diff);
			if(diff >= 0 && diff < 2){
				alert("In de maanden juli en augustus dient u minimaal 2 nachten te reserveren.");
				$('#dateFrom').val("");
				$('#dateTo').val("");
			}
		}
		
		//weekends
		if(((d1.getDay() == 5) || (d1.getDay() == 6)) && ((parseInt(y1) >= 2011) && (parseInt(y2) >= 2011))){
			var diff = daydiff(d1, d2);
			//alert(diff);
			if(diff >= 0 && diff < 2){
				alert("Daar we momenteel een storm van aanvragen krijgen kunt u tijdens de weekends van 2011 enkel voor minimum 2 nachten reserveren.");
				$('#dateFrom').val("");
				$('#dateTo').val("");
			}
		}		
				
	}	
	
}

function setMap(id, address,lang){
	if(!lang){
		lang = 'nl';
	}
	$(document).ready(function(){
		google.load('maps', '2', {
			'language' : lang,
			'callback' : function(){
			var map = new GMap2(document.getElementById(id));
			map.addControl(new GMapTypeControl());
			map.addControl(new GSmallMapControl());
			var geocoder = new GClientGeocoder();
			
			var fingerIcon = new GIcon();
      		fingerIcon.image = "/images/molen_icon.png";
      		fingerIcon.iconSize = new GSize(36, 33);
      		fingerIcon.shadow = "/images/molen_icon_shadow.png";
      		fingerIcon.shadowSize = new GSize(47, 14);
      		fingerIcon.iconAnchor = new GPoint(18, 33);
      		fingerIcon.infoWindowAnchor = new GPoint(5, 2);
      		fingerIcon.infoShadowAnchor = new GPoint(33, 36);
      		fingerIcon.transparent = "/images/molen_icon_trans.png";
      		fingerIcon.printImage = "/images/molen_icon.gif";
      		fingerIcon.mozPrintImage = "/images/molen_icon.gif";

			var markerData = {};

			markerData.icon = fingerIcon;

			geocoder.getLatLng(
				address,
				function(point) {
					if (point) {
						map.setCenter(point, 10);
						var marker = new GMarker(point, markerData);
						map.addOverlay(marker);
						
						window.setTimeout(function() {
    						map.panTo(new getLatLng("Aardenburg"));
  						}, 2000);

					}
				}
			);
		}});	
	});
	$(window).unload(function() {
		GUnload(); 
	});
}

function getCalendar(path){
	$("#calendarTable").fadeOut("fast");
	$("#loading").fadeIn("fast");
	$.ajax({
		url: path,
		success: function(html){			
			$("#loading").fadeOut("fast");
			$("#calendarTable").html(html);
			$("#calendarTable").fadeIn("fast");	
		}
	});		
}

function getGuestbookEntries(path){
	$("#guestbookEntries").hide("fast");
	$("#loading").show("fast");
	$.ajax({
		url: path,
		success: function(html){			
			$("#loading").hide("fast");
			$("#guestbookEntries").html(html);
			$("#guestbookEntries").show("fast");	
		}
	});		
}


function newCaptcha(){
	  var newcaptcha = '/includes/securimage_show.php?' + Math.random();
	  $("#captcha").attr("src",newcaptcha); 
}
