
varCalendarPositionLeft25765 = 0;
varCalendarPositionRight25765 = 0; 
var varCalendarState25765 = 0;
var varCalendarState25765 = 1;
var varTempStartDateYear25765;
var varTempStartDateMonth25765;
var varTempStartDateDay25765;
var varTempEndDateYear25765;
var varTempEndDateMonth25765;
var varTempEndDateDay25765;

varTempCalendarDate25765 = new Date(2024, 11, 01);	

jQueryCode = function(){
	jQuery(document).ready(function($){

		if (jQuery('#widget-25765').length == 0){
			console.error("CampManager Widget DIV element not found (widget-25765).");
			return;
		}

		varCalendarTxtColour = jQuery('#widget-25765').data("calendar_txt_colour");
		varCalendarBgColour = jQuery('#widget-25765').data("calendar_bg_colour");
		
		varBookButtonTxtColour = jQuery('#widget-25765').data("book_button_txt_colour");
		varBookButtonBgColour = jQuery('#widget-25765').data("book_button_bg_colour");
		varBookButtonRadius = jQuery('#widget-25765').data("book_button_radius");
		varLabelColour = jQuery('#widget-25765').data("label_text_colour");		
		varResponsive = jQuery('#widget-25765').data("responsive");		
		varAlignCalendar = jQuery('#widget-25765').data("calendar_align");		

		var js_mobile = jQuery("<script>", {type: "text/javascript", href: "https://bookings.glampmanager.com/Js/jquery.mobile.custom.min.js"});
	   	js_mobile.appendTo('head');  
		
		varString = "ContainerID=25765&ctx=" + encodeURIComponent(varCalendarTxtColour) + "&cbg=" + encodeURIComponent(varCalendarBgColour) + "&btc=" + encodeURIComponent(varBookButtonTxtColour) + "&bbc=" + encodeURIComponent(varBookButtonBgColour) + "&br=" + encodeURIComponent(varBookButtonRadius) + "&lc=" + encodeURIComponent(varLabelColour) + "&r=" + varResponsive + "&ac=" + encodeURIComponent(varAlignCalendar);
		var css_link = jQuery("<link>", {rel: "stylesheet", type: "text/css", href: "https://bookings.glampmanager.com/Arbor-Hills-26805/External-Widget-Css/?" + varString});
	   	css_link.appendTo('head');  
		fnLoadWidget25765();	
	});
}
		
if(window.jQuery) jQueryCode();
else{   
    var script = document.createElement('script'); 
    document.head.appendChild(script);  
    script.type = 'text/javascript';
    script.src = "https://bookings.glampmanager.com/Js/jquery-3.3.1.min.js";
    script.onload = jQueryCode;
}

var xmlHttpLoadWidget25765;
function fnLoadWidget25765()
{
	try{
		xmlHttpLoadWidget25765.abort();
	}catch(error){}

	if (jQuery('#widget-25765').length == 0){
		console.error("CampManager Widget DIV element not found (widget-25765).");
		return;
	}
	
	varDefaultBookingType = jQuery('#widget-25765').data("default_booking_type");
	varDefaultStartDateYear = jQuery('#widget-25765').data("start_date_year");
	varDefaultStartDateMonth = jQuery('#widget-25765').data("start_date_month");
	varDefaultStartDateDay = jQuery('#widget-25765').data("start_date_day");
	varDefaultDuration = jQuery('#widget-25765').data("duration");
	varDefaultAdults = jQuery('#widget-25765').data("adults");
	varDefaultChildren = jQuery('#widget-25765').data("children");
	varDefaultInfants = jQuery('#widget-25765').data("infants");
	varDefaultPets = jQuery('#widget-25765').data("pets");
	varDefaultVoucherCode = jQuery('#widget-25765').data("voucher_code");
	varBookButtonText = jQuery('#widget-25765').data("book_button_text");

	varString = ""
	varString = varString + "ContainerID=25765";
	varString = varString + "&type=" + varDefaultBookingType;
	varString = varString + "&bbt=" + encodeURIComponent(varBookButtonText);
	varString = varString + "&btx=" + encodeURIComponent(varBookButtonTxtColour);
	varString = varString + "&bbg=" + encodeURIComponent(varBookButtonBgColour);
	varString = varString + "&start_date_year=" + encodeURIComponent(varDefaultStartDateYear);
	varString = varString + "&start_date_month=" + encodeURIComponent(varDefaultStartDateMonth);
	varString = varString + "&start_date_day=" + encodeURIComponent(varDefaultStartDateDay);
	varString = varString + "&duration=" + encodeURIComponent(varDefaultDuration);
	varString = varString + "&adults=" + encodeURIComponent(varDefaultAdults);
	varString = varString + "&children=" + encodeURIComponent(varDefaultChildren);
	varString = varString + "&infants=" + encodeURIComponent(varDefaultInfants);
	varString = varString + "&pets=" + encodeURIComponent(varDefaultPets);
	varString = varString + "&voucher_code=" + encodeURIComponent(varDefaultVoucherCode);
		
	try{xmlHttpLoadWidget25765.abort();}catch(error){}try{xmlHttpLoadWidget25765=new XMLHttpRequest();}catch (e){try{xmlHttpLoadWidget25765=new ActiveXObject("Msxml2.XMLHTTP");}catch (e){try{xmlHttpLoadWidget25765=new ActiveXObject("Microsoft.XMLHTTP");}catch (e){alert("Your browser does not support AJAX!");return false;}}}xmlHttpLoadWidget25765.onreadystatechange=function(){if(xmlHttpLoadWidget25765.readyState==4){
		document.getElementById('widget-25765').innerHTML 		= xmlHttpLoadWidget25765.responseText;
		fnPopulateCalendar25765();
		fnBindEvents25765();
		fnBuildGuestsString();
	}}
	xmlHttpLoadWidget25765.open("GET","https://bookings.glampmanager.com/Arbor-Hills-26805/External-Widget/?" + varString + "&d=" + Math.random(),true);
	xmlHttpLoadWidget25765.send(null); 
}

function fnBindEvents25765()
{
	jQuery("input").bind('keyup click', function(){		
		if (jQuery(this).val() != "")
		{
			jQuery(this).addClass('active');
			jQuery(this).parent().find('label').addClass('active');
		}
		else
		{
			jQuery(this).removeClass('active');
			jQuery(this).parent().find('label').removeClass('active');
		}
	});	
	jQuery("#calendar-container-middle-25765").on( "swipeleft", function(e){
		fnCalendarSlideRight25765();
		e.stopImmediatePropagation();
		e.preventDefault();
	});			
	jQuery("#calendar-container-middle-25765").on( "swiperight", function(e){
		fnCalendarSlideLeft25765();
		e.stopImmediatePropagation();
		e.preventDefault();
	});	
	
	function focusAndCursor(selector)
	{
  		var input = jQuery(selector);
  		setTimeout(function() {
    		tmp = input.val(); input.focus().val("").blur().focus().val(tmp);
  		}, 200);
	}
	
	jQuery(document).keydown(function(event){
		if (event.keyCode == 13 && jQuery('#widget-date-container-25765').is(":focus"))
		{	
			jQuery('#guests-container-25765').hide();			
			jQuery('#calendar-container-25765').show();			
		}
		if (event.keyCode == 13 && jQuery('#widget-guests-container-25765').is(":focus"))
		{	
			jQuery('#calendar-container-25765').hide();
			jQuery('#guests-container-25765').show();			
		}
		if (event.keyCode == 27)
		{
			jQuery('#calendar-container-25765').hide();
			jQuery('#guests-container-25765').hide();		
		}
		if (event.keyCode == 13 && jQuery('#calendar-button-left-25765').is(":focus"))
		{		
			fnCalendarSlideLeft25765();
		}
		if (event.keyCode == 13 && jQuery('#calendar-button-right-25765').is(":focus"))
		{	
			fnCalendarSlideRight25765();
		}
		if (event.keyCode == 13 && jQuery('#calendar-container-25765 .calendar-date').is(":focus"))
		{
			fnCalendarChangeState25765(event.target.id);
		}	
		if (event.keyCode == 39 && jQuery('#calendar-container-25765 .calendar-date').is(":focus"))
		{
			if (!jQuery('#' + event.target.id).next('div').hasClass("calendar-date"))
			{
				if (jQuery('#calendar-button-right-25765').is(':visible'))
				{		
					fnCalendarSlideRight25765();
					jQuery('.calendar-date').attr('tabindex',-1);					
					jQuery('#' + event.target.id).parent().parent().parent().next('.calendar-slide').children('.calendar-slide-inner').children('.calendar-slide-inner-days').find('.calendar-date').first().attr('tabindex',5);
					varNextID = jQuery('#' + event.target.id).parent().parent().parent().next('.calendar-slide').children('.calendar-slide-inner').children('.calendar-slide-inner-days').find('.calendar-date').first().attr('id');
					setTimeout(function(){ 
						jQuery("#" + varNextID).focus(); 
					}, 100);
				}				
			}
			else
			{
				jQuery('.calendar-date').attr('tabindex',-1);
				jQuery('#' + event.target.id).next('.calendar-date').attr('tabindex',5);
				jQuery('#' + event.target.id).next('.calendar-date').focus();	
			}
		}
		if (event.keyCode == 37 && jQuery('#calendar-container-25765 .calendar-date').is(":focus"))
		{
			if (!jQuery('#' + event.target.id).prev('div').hasClass("calendar-date"))
			{
				if (jQuery('#calendar-button-left-25765').is(':visible'))
				{
					fnCalendarSlideLeft25765();
					jQuery('.calendar-date').attr('tabindex',-1);					
					jQuery('#' + event.target.id).parent().parent().parent().prev('.calendar-slide').children('.calendar-slide-inner').children('.calendar-slide-inner-days').find('.calendar-date').last().attr('tabindex',5);
					varPrevID = jQuery('#' + event.target.id).parent().parent().parent().prev('.calendar-slide').children('.calendar-slide-inner').children('.calendar-slide-inner-days').find('.calendar-date').last().attr('id');
					setTimeout(function(){
						jQuery("#" + varPrevID).focus();
					}, 100);
				}		
			}
			else
			{
				jQuery('.calendar-date').attr('tabindex',-1);
				jQuery('#' + event.target.id).prev('.calendar-date').attr('tabindex',5);
				jQuery('#' + event.target.id).prev('.calendar-date').focus();	
			}
		}		
		if (event.keyCode == 38 && jQuery('#calendar-container-25765 .calendar-date').is(":focus")) // up
		{
			varTempID = jQuery('#' + event.target.id).attr('id').split('-');
			varTempDate = new Date(varTempID[0], varTempID[1]-1, varTempID[2]);
			varTempDate.setDate(varTempDate.getDate()-7);
					
			varID = varTempDate.getFullYear() + '-' + (varTempDate.getMonth()+1) + '-' + varTempDate.getDate();    
				
			if (jQuery('#calendar-button-left-25765').is(':visible') && ((varTempDate.getMonth()) != (varTempID[1]-1)))
			{
				fnCalendarSlideLeft25765();
				jQuery('.calendar-date').attr('tabindex',-1);
				jQuery('#' + varID + '-25765').attr('tabindex',5);
				setTimeout(function(){
					jQuery('#' + varID + '-25765').focus();
				}, 100);
			}
			else
			{
				if (varTempDate.getMonth() == (varTempID[1]-1))
				{
					jQuery('.calendar-date').attr('tabindex',-1);
					jQuery('#' + varID + '-25765').attr('tabindex',5);
					setTimeout(function(){
						jQuery('#' + varID + '-25765').focus();
					}, 100);
				}
			}	
		}		
		if (event.keyCode == 40 && jQuery('#calendar-container-25765 .calendar-date').is(":focus")) // down
		{
			varTempID = jQuery('#' + event.target.id).attr('id').split('-');
			varTempDate = new Date(varTempID[0], varTempID[1]-1, varTempID[2]);
			varTempDate.setDate(varTempDate.getDate()+7);
					
			varID = varTempDate.getFullYear() + '-' + (varTempDate.getMonth()+1) + '-' + varTempDate.getDate();    
								
			if (jQuery('#calendar-button-right-25765').is(':visible') && ((varTempDate.getMonth()) != (varTempID[1]-1)))
			{
				fnCalendarSlideRight25765();
				jQuery('.calendar-date').attr('tabindex',-1);
				jQuery('#' + varID + '-25765').attr('tabindex',5);
				setTimeout(function(){
					jQuery('#' + varID + '-25765').focus();
				}, 100);
			}
			else
			{
				if (varTempDate.getMonth() == (varTempID[1]-1))
				{
					jQuery('.calendar-date').attr('tabindex',-1);
					jQuery('#' + varID + '-25765').attr('tabindex',5);
					setTimeout(function(){
						jQuery('#' + varID + '-25765').focus();
					}, 100);
				}
			}	
		}				
		if (event.keyCode == 13 && jQuery('#calendar-clear-button25765').is(":focus"))
		{	
			fnResetDates25765();
		}
		if (event.keyCode == 13 && jQuery('#calendar-apply-button25765').is(":focus"))
		{	
			fnApplyDateRange25765();
		}		
		if (event.keyCode == 13 && jQuery('#widget-adults-25765-minus').is(":focus"))
		{	
			fnUpdateGuestsValue25765('widget-adults-25765','idtxtBookingAdults-25765','0','2',-1);
		}
		if (event.keyCode == 13 && jQuery('#widget-adults-25765-plus').is(":focus"))
		{	
			fnUpdateGuestsValue25765('widget-adults-25765','idtxtBookingAdults-25765','0','2',1);
		}
		if (event.keyCode == 13 && jQuery('#widget-children-25765-minus').is(":focus"))
		{	
			fnUpdateGuestsValue25765('widget-children-25765','idtxtBookingChildren-25765','0','2',-1);
		}
		if (event.keyCode == 13 && jQuery('#widget-children-25765-plus').is(":focus"))
		{	
			fnUpdateGuestsValue25765('widget-children-25765','idtxtBookingChildren-25765','0','2',1);
		}
		if (event.keyCode == 13 && jQuery('#widget-infants-25765-minus').is(":focus"))
		{	
			fnUpdateGuestsValue25765('widget-infants-25765','idtxtBookingInfants-25765','0','2',-1);
		}
		if (event.keyCode == 13 && jQuery('#widget-infants-25765-plus').is(":focus"))
		{	
			fnUpdateGuestsValue25765('widget-infants-25765','idtxtBookingInfants-25765','0','2',1);
		}
		if (event.keyCode == 13 && jQuery('#widget-pets-25765-minus').is(":focus"))
		{	
			fnUpdateGuestsValue25765('widget-pets-25765','idtxtBookingPets-25765','0','0',-1);
		}
		if (event.keyCode == 13 && jQuery('#widget-pets-25765-plus').is(":focus"))
		{	
			fnUpdateGuestsValue25765('widget-pets-25765','idtxtBookingPets-25765','0','0',1);
		}
		if (event.keyCode == 13 && jQuery('#guests-apply-button25765').is(":focus"))
		{	
			fnCloseGuests25765();
		}
	});	
	
	jQuery(".calendar-container-header-close").bind('click', function(){		
		jQuery('#calendar-container-25765').hide();
	});
	
	jQuery(".guests-header-close").bind('click', function(){		
		jQuery('#guests-container-25765').hide();
	});
		
	jQuery(document).mouseup(function(e) 
	{
	    var container = jQuery('#calendar-container-25765');
	    if (!container.is(e.target) && container.has(e.target).length === 0) 
	    {
	        container.hide();
	    }
	    
	    var container2 = jQuery('#guests-container-25765');
	    if (!container2.is(e.target) && container2.has(e.target).length === 0) 
	    {
	        container2.hide();
	    }
	});
}
		
var xmlHttpPopulateCalendar25765;
function fnPopulateCalendar25765(varBookingTypeID)
{
	try{
		xmlHttpPopulateCalendar25765.abort();
	}catch(error){}

	try{xmlHttpPopulateCalendar25765.abort();}catch(error){}try{xmlHttpPopulateCalendar25765=new XMLHttpRequest();}catch (e){try{xmlHttpPopulateCalendar25765=new ActiveXObject("Msxml2.XMLHTTP");}catch (e){try{xmlHttpPopulateCalendar25765=new ActiveXObject("Microsoft.XMLHTTP");}catch (e){alert("Your browser does not support AJAX!");return false;}}}xmlHttpPopulateCalendar25765.onreadystatechange=function(){if(xmlHttpPopulateCalendar25765.readyState==4){
		jQuery('#calendar-container-inner-25765').css({'left':'0%'});
		
		document.getElementById('calendar-container-inner-25765').innerHTML 		= xmlHttpPopulateCalendar25765.responseText;
		
		varCalendarPositionLeft25765 = 0;
		varCalendarPositionRight25765 = -1 * ((jQuery('.calendar-slide').length-2) * 50);
		
		jQuery('#calendar-button-left-25765').hide();		
	}}
	xmlHttpPopulateCalendar25765.open("GET","https://bookings.glampmanager.com/Arbor-Hills-26805/External-Widget-Calendar/?ContainerID=25765&BookingTypeID=" + varBookingTypeID + "&d=" + Math.random(),true);
	xmlHttpPopulateCalendar25765.send(null); 
}

function fnCalendarSlideLeft25765()
{
	if (jQuery('#calendar-button-left-25765').is(':visible'))
	{
		if (jQuery(':animated').length){
	       	return false;
	   	}
	   		
		if (jQuery('#calendar-container-middle-25765').width() / jQuery('#calendar-container-middle-25765').parent().width() * 100 == 100)
		{
			varTempMove = 50;
			varTempMove2 = 50;
		}
		else
		{
			varTempMove = 50;
			varTempMove2 = 0;
		}
		
		var position = jQuery('#calendar-container-inner-25765').position();			
		var percentLeft = Math.round(position.left/jQuery('#calendar-container-inner-25765').width() * 100);			
		jQuery('#calendar-container-inner-25765').animate({'left': (percentLeft+varTempMove) + '%'},150);	
			
		
		if ((percentLeft+varTempMove) == varCalendarPositionLeft25765)
		{
			jQuery('#calendar-button-left-25765').hide();
		} 
		else
		{
			jQuery('#calendar-button-left-25765').show();
		}
		
		if ((percentLeft+varTempMove2) == varCalendarPositionRight25765)
		{
			jQuery('#calendar-button-right-25765').hide();
		}
		else
		{
			jQuery('#calendar-button-right-25765').show();
		}		
	
		jQuery('.calendar-date').attr('tabindex',-1);			
		varTempCalendarDate25765 = fnAddMonths25765(varTempCalendarDate25765, -1)	
		jQuery('#' + varTempCalendarDate25765.getFullYear() + '-' + (varTempCalendarDate25765.getMonth()+1) + '-' + varTempCalendarDate25765.getDate() + '-25765').attr('tabindex',5);		
	}
}

function fnCalendarSlideRight25765()
{
	if (jQuery('#calendar-button-right-25765').is(':visible'))
	{
		if (jQuery(':animated').length){
	       	return false;
	   	}
	
		if (jQuery('#calendar-container-middle-25765').width() / jQuery('#calendar-container-middle-25765').parent().width() * 100 == 100)
		{
			varTempMove = 50;
			varTempMove2 = 50;
		}
		else
		{
			varTempMove = 50;
			varTempMove2 = 0;
		}
		
		var position = jQuery('#calendar-container-inner-25765').position();			
		var percentLeft = Math.round(position.left/jQuery('#calendar-container-inner-25765').width() * 100);			
		jQuery('#calendar-container-inner-25765').animate({'left': (percentLeft-varTempMove) + '%'},150);
	
		if ((percentLeft-varTempMove) == varCalendarPositionLeft25765)
		{
			jQuery('#calendar-button-left-25765').hide();
		} 
		else
		{
			jQuery('#calendar-button-left-25765').show();
		}
		
		if ((percentLeft-varTempMove2) == varCalendarPositionRight25765)
		{
			jQuery('#calendar-button-right-25765').hide();
		}
		else
		{
			jQuery('#calendar-button-right-25765').show();
		}		
		
		jQuery('.calendar-date').attr('tabindex',-1);			
		varTempCalendarDate25765 = fnAddMonths25765(varTempCalendarDate25765, 1)	
		jQuery('#' + varTempCalendarDate25765.getFullYear() + '-' + (varTempCalendarDate25765.getMonth()+1) + '-' + varTempCalendarDate25765.getDate() + '-25765').attr('tabindex',5);	
	}
}

function fnOpenCalendar25765()
{
	if (jQuery('#idtxtBookingStartDateMonth-25765').val() != "" && jQuery('#idtxtBookingStartDateMonth-25765').val() > 0)
	{
		varFrom = new Date(2024,11,10);
		varTo = new Date(jQuery('#idtxtBookingStartDateYear-25765').val(), jQuery('#idtxtBookingStartDateMonth-25765').val()-1, jQuery('#idtxtBookingStartDateDay-25765').val());
		varDefaultPosition = ((fnMonthDiff25765(varFrom, varTo)) * 50) * -1;
		
		if (varDefaultPosition < 0)
		{ 
			jQuery('#calendar-button-left-25765').show();
		}		
	}
	else
	{
		varDefaultPosition = 0;
	}
	
	jQuery('#calendar-container-inner-25765').css({'left': varDefaultPosition + '%'});
	jQuery('#calendar-container-25765').show();
	jQuery('.calendar-date').attr('tabindex',-1);			
	jQuery('#' + varTempCalendarDate25765.getFullYear() + '-' + (varTempCalendarDate25765.getMonth()+1) + '-' + varTempCalendarDate25765.getDate() + '-25765').attr('tabindex',5);	
}

function fnMonthDiff25765(dateFrom,dateTo)
{
    return dateTo.getMonth() - dateFrom.getMonth() + (12 * (dateTo.getFullYear() - dateFrom.getFullYear()));
}

function fnAddMonths25765(varDate, varCount)
{
	if (varDate && varCount)
	{
    	var m, d = (varDate = new Date(+varDate)).getDate();
		varDate.setMonth(varDate.getMonth() + varCount, 1);
	    m = varDate.getMonth();
    	varDate.setDate(d);
    	if (varDate.getMonth() !== m) varDate.setDate(0)
  	}
  	return varDate;
}

function fnCalendarChangeState25765(varDateClicked)
{
	if (varCalendarState25765 == 1)
	{		
		if (jQuery('#' + varDateClicked).hasClass('arrival'))
		{
			jQuery('#calendar-apply-button25765').removeClass('calendar-apply-button-enabled');
			jQuery('#calendar-container-25765 .calendar-date').removeClass('calendar-start-date1');
			jQuery('#calendar-container-25765 .calendar-date').removeClass('calendar-start-date2');
			jQuery('#calendar-container-25765 .calendar-date').removeClass('calendar-end-date2');
			jQuery('#calendar-container-25765 .calendar-date').removeClass('calendar-end-date3');
			jQuery('#calendar-container-25765 .calendar-date').removeClass('calendar-inbetween-date');
			jQuery('#calendar-container-25765 .calendar-date').removeClass('arrival2');
			jQuery('#calendar-container-25765 .calendar-date').addClass('calendar-date-disabled');  
			jQuery('#' + varDateClicked).addClass('calendar-start-date1');		
		   
			jQuery('#calendar-duration-text-25765').html('Select departure date');	
					
			arrDateClicked = varDateClicked.split("-")
			varTempStartDateDay25765 = arrDateClicked[2];
			varTempStartDateMonth25765 = arrDateClicked[1];
			varTempStartDateYear25765 = arrDateClicked[0];
		
	  		varCalendarState25765 = 2;	  		
	  		
	  		fnLoadCalendarDurations25765(varTempStartDateYear25765 + '-' + varTempStartDateMonth25765 + '-' + varTempStartDateDay25765);
		}  		
	}
	
	if (varCalendarState25765 == 2)
	{
		if (!jQuery('#' + varDateClicked).hasClass('calendar-date-disabled'))
		{
			jQuery('#calendar-container-25765 .calendar-date').removeClass('calendar-start-date1');
			jQuery('#calendar-container-25765 .calendar-date').removeClass('calendar-date-disabled');
			
			arrDateClicked = varDateClicked.split("-")
			varTempEndDateDay25765 = arrDateClicked[2];
			varTempEndDateMonth25765 = arrDateClicked[1];
			varTempEndDateYear25765 = arrDateClicked[0];	
			
			if (varDateClicked == varTempStartDateYear25765 + "-" + varTempStartDateMonth25765 + "-" + varTempStartDateDay25765 + '-25765')
			{
				jQuery('#' + varDateClicked).addClass('calendar-end-date3');			
			}
			else
			{
				jQuery('#' + varTempStartDateYear25765 + '-' + varTempStartDateMonth25765 + '-' + varTempStartDateDay25765 + '-25765').addClass('calendar-start-date2');
				jQuery('#' + varDateClicked).addClass('calendar-end-date2');			
			
				varTempStart = new Date(varTempStartDateYear25765, varTempStartDateMonth25765-1, varTempStartDateDay25765);
				varTempEnd = new Date(varTempEndDateYear25765, varTempEndDateMonth25765-1, varTempEndDateDay25765);	
				
				for (var d = varTempStart; d <= varTempEnd; d.setDate(d.getDate()+1))
				{	
					varTemp = new Date(d.getFullYear(), d.getMonth(), d.getDate());
					jQuery('#' + d.getFullYear() + '-' + (d.getMonth()+1) + '-' + d.getDate() + '-25765').addClass('calendar-inbetween-date');    
				}	
			}
	  		varCalendarState25765 = 1;	  		
			jQuery('#calendar-apply-button25765').removeClass('calendar-apply-button-disabled');	
			
			varTempStart = new Date(varTempStartDateYear25765, varTempStartDateMonth25765-1, varTempStartDateDay25765);
			varTempEnd = new Date(varTempEndDateYear25765, varTempEndDateMonth25765-1, varTempEndDateDay25765);	
	
			varTimeDifference = varTempEnd.getTime() - varTempStart.getTime();
			varDaysDifference = Math.ceil(varTimeDifference / (1000 * 3600 * 24));
			varDurationText = (varDaysDifference.toFixed(0) == 1) ? " night" : " nights";
			
			jQuery('#calendar-duration-text-25765').html(varDaysDifference.toFixed(0) + varDurationText);	
	  	}	
	}
}	
	
var xmlHttpCalendarDurations25765;
function fnLoadCalendarDurations25765(varDateClicked)
{
	try{
		xmlHttpCalendarDurations25765.abort();
	}catch(error){}

	try{xmlHttpCalendarDurations25765.abort();}catch(error){}try{xmlHttpCalendarDurations25765=new XMLHttpRequest();}catch (e){try{xmlHttpCalendarDurations25765=new ActiveXObject("Msxml2.XMLHTTP");}catch (e){try{xmlHttpCalendarDurations25765=new ActiveXObject("Microsoft.XMLHTTP");}catch (e){alert("Your browser does not support AJAX!");return false;}}}xmlHttpCalendarDurations25765.onreadystatechange=function(){if(xmlHttpCalendarDurations25765.readyState==4){


		varResponse = xmlHttpCalendarDurations25765.responseText;

		arrDepartureDates = varResponse .split(",");

		for (i = 0; i < arrDepartureDates.length; i++)
		{
		    jQuery('#' + arrDepartureDates[i] + '-25765').removeClass('calendar-date-disabled');
		    jQuery('#' + arrDepartureDates[i] + '-25765').addClass('arrival2');
		}

	}}
	xmlHttpCalendarDurations25765.open("GET","https://bookings.glampmanager.com/Arbor-Hills-26805/External-Widget-Durations/?ContainerID=25765&StartDate=" + varDateClicked + "&d=" + Math.random(),true);
	xmlHttpCalendarDurations25765.send(null); 
}

function fnResetDates25765()
{
	document.getElementById('idtxtBookingStartDateDay-25765').value = "";
	document.getElementById('idtxtBookingStartDateMonth-25765').value = "";
	document.getElementById('idtxtBookingStartDateYear-25765').value = "";
	document.getElementById('idtxtBookingDuration-25765').value = "";
		
	jQuery('#calendar-apply-button25765').addClass('calendar-apply-button-disabled');
	jQuery('#calendar-container-25765 .calendar-date').removeClass('calendar-start-date1');
	jQuery('#calendar-container-25765 .calendar-date').removeClass('calendar-start-date2');
	jQuery('#calendar-container-25765 .calendar-date').removeClass('calendar-end-date2');
	jQuery('#calendar-container-25765 .calendar-date').removeClass('calendar-end-date3');
	jQuery('#calendar-container-25765 .calendar-date').removeClass('calendar-inbetween-date');
	jQuery('#calendar-container-25765 .calendar-date').removeClass('arrival2');
	jQuery('#calendar-container-25765 .calendar-date').addClass('calendar-date-disabled');  
	jQuery('#calendar-container-25765 .calendar-date').removeClass('calendar-date-disabled');  
	
	jQuery('#widget-start-date-text-25765').html('Add dates');	
	jQuery('#widget-end-date-text-25765').html('Add dates');	
	jQuery('#calendar-duration-text-25765').html('Select arrival date');	
	
	varCalendarState25765 = 1;
}

function fnApplyDateRange25765()
{
	if (!jQuery('#calendar-apply-button25765').hasClass('calendar-apply-button-disabled'))
	{
		varTempStart = new Date(varTempStartDateYear25765, varTempStartDateMonth25765-1, varTempStartDateDay25765);
		varTempEnd = new Date(varTempEndDateYear25765, varTempEndDateMonth25765-1, varTempEndDateDay25765);	

		varTimeDifference = varTempEnd.getTime() - varTempStart.getTime();
		varDaysDifference = varTimeDifference / (1000 * 3600 * 24);
		
		document.getElementById('idtxtBookingStartDateDay-25765').value = varTempStartDateDay25765;
		document.getElementById('idtxtBookingStartDateMonth-25765').value = varTempStartDateMonth25765;
		document.getElementById('idtxtBookingStartDateYear-25765').value = varTempStartDateYear25765;
		document.getElementById('idtxtBookingDuration-25765').value = varDaysDifference.toFixed(0);
	
		jQuery('#widget-start-date-text-25765').html(varTempStartDateDay25765 + '/' + varTempStartDateMonth25765 + '/' + varTempStartDateYear25765);	
		jQuery('#widget-end-date-text-25765').html(varTempEndDateDay25765 + '/' + varTempEndDateMonth25765 + '/' + varTempEndDateYear25765);	
		
		jQuery('#calendar-container-25765').hide();
	}
	else
	{
		return false;
	}
}

function fnOpenGuests25765()
{
	jQuery('#guests-container-25765').show();
}

function fnCloseGuests25765()
{
	jQuery('#guests-container-25765').hide();
}

function fnUpdateGuestsValue25765(varTextID,varFieldID,varMinValue,varMaxValue,varDirection)
{
	varTempValue = parseInt(document.getElementById(varFieldID).value);
	
	if (varDirection == -1)
	{
		varTempValue = varTempValue - 1;
	}
	
	if (varDirection == 1)
	{
		varTempValue = varTempValue + 1;
	}
	
	if (varTempValue <= varMinValue)	
	{
		varTempValue = varMinValue;
		jQuery('#' + varTextID + '-minus').addClass('guests-col-button-disabled');
	}
	
	if (varTempValue >= varMaxValue)	
	{
		varTempValue = varMaxValue;
		jQuery('#' + varTextID + '-plus').addClass('guests-col-button-disabled');			
	}
	else
	{
		jQuery('#' + varTextID + '-plus').removeClass('guests-col-button-disabled');			
	}
	
	
	if (varTempValue > varMinValue)	
	{
		if (varTempValue > 0)
		{
			jQuery('#' + varTextID + '-minus').removeClass('guests-col-button-disabled');
		}
	}
	
	document.getElementById(varFieldID).value = varTempValue;
	jQuery('#' + varTextID).html(varTempValue);
	fnBuildGuestsString();
}

function fnBuildGuestsString()
{
	varGuests = "";
	
	if (document.getElementById('idtxtBookingAdults-25765').value > 0)
	{
		if (document.getElementById('idtxtBookingAdults-25765').value == 1)
		{
			if (varGuests == "")
			{
				varGuests = "1 adult";
			}
			else
			{
				varGuests = varGuests + ", 1 adult";
			}
		}
		else
		{
			if (varGuests == "")
			{
				varGuests = document.getElementById('idtxtBookingAdults-25765').value + " adults";
			}
			else
			{
				varGuests = varGuests + ", " + document.getElementById('idtxtBookingAdults-25765').value + " adults";
			}
		}
	}	
	
	try{
		if (document.getElementById('idtxtBookingChildren-25765').value > 0)
		{
			if (document.getElementById('idtxtBookingChildren-25765').value == 1)
			{
				if (varGuests == "")
				{
					varGuests = "1 child";
				}
				else
				{
					varGuests = varGuests + ", 1 child";
				}
			}
			else
			{
				if (varGuests == "")
				{
					varGuests = document.getElementById('idtxtBookingChildren-25765').value + " children";
				}
				else
				{
					varGuests = varGuests + ", " + document.getElementById('idtxtBookingChildren-25765').value + " children";
				}
			}
		}	
	}catch(e){}

	try{		
		if (document.getElementById('idtxtBookingInfants-25765').value > 0)
		{
			if (document.getElementById('idtxtBookingInfants-25765').value == 1)
			{
				if (varGuests == "")
				{
					varGuests = "1 infant";
				}
				else
				{
					varGuests = varGuests + ", 1 infant";
				}
			}
			else
			{
				if (varGuests == "")
				{
					varGuests = document.getElementById('idtxtBookingInfants-25765').value + " infants";
				}
				else
				{
					varGuests = varGuests + ", " + document.getElementById('idtxtBookingInfants-25765').value + " infants";
				}
			}
		}	
	}catch(e){}

	try{		
		if (document.getElementById('idtxtBookingPets-25765').value > 0)
		{
			if (document.getElementById('idtxtBookingPets-25765').value == 1)
			{
				if (varGuests == "")
				{
					varGuests = "1 pet";
				}
				else
				{
					varGuests = varGuests + ", 1 pet";
				}
			}
			else
			{
				if (varGuests == "")
				{
					varGuests = document.getElementById('idtxtBookingPets-25765').value + " pets";
				}
				else
				{
					varGuests = varGuests + ", " + document.getElementById('idtxtBookingPets-25765').value + " pets";
				}
			}
		}	
	}catch(e){}
	
	if (varGuests != "")
	{
		jQuery('#widget-guests-text-25765').html(varGuests);
	}
	else
	{
		jQuery('#widget-guests-text-25765').html('Add guests');
	}
}

function fnValidateCheckAvailability25765()
{
	if(fnCheckAvailability25765())
	{
		jQuery('#overlay-25765').css({'background-color':'rgba(200,200,200,0.3)'});
		jQuery('#overlay-25765').show();
		jQuery('#booking-summary-loading-outer-25765').show();

		document.getElementById('idButtonCheckAvailabiity-25765').innerHTML 		= 'Please Wait...'
		document.getElementById('idButtonCheckAvailabiity-25765').disabled		= true;
		
		GetLink225765();
		
		document.forms['frmCheckAvailability-25765'].submit();
		document.getElementById('idButtonCheckAvailabiity-25765').innerHTML 		= 'Search'
		document.getElementById('idButtonCheckAvailabiity-25765').disabled		= false;
	}
	else
	{
		jQuery('#overlay-25765').hide();
		jQuery('#booking-summary-loading-outer-25765').hide();
	}
}
		
function fnCheckAvailability25765()
{
	var varBookingDuration	 			= parseInt(document.getElementById('idtxtBookingDuration-25765').value);
	var varBookingStartDateDay 			= parseInt(document.getElementById('idtxtBookingStartDateDay-25765').value);
	var varBookingStartDateMonth 		= parseInt(document.getElementById('idtxtBookingStartDateMonth-25765').value);
	var varBookingStartDateYear 		= parseInt(document.getElementById('idtxtBookingStartDateYear-25765').value);
	
	var varBookingStartDate 			= new Date(varBookingStartDateYear,(varBookingStartDateMonth-1),varBookingStartDateDay,00,00,00);
	var varCurrentDate		 			= new Date(2024,11,10,00,00,00);	
	var varMinDaysInAdvanceRental		= new Date(2024,11,10,00,00,00);		
	var varMinDaysInAdvanceTouring		= new Date(2024,11,10,00,00,00);		
	
	if (document.getElementById('idtxtBookingStartDateDay-25765').value == "" || document.getElementById('idtxtBookingStartDateDay-25765').value == 0){
		fnOpenCalendar25765();
		alert('Please select your dates');
		return (false);  
	}
	
	if (document.getElementById('idtxtBookingStartDateMonth-25765').value == "" || document.getElementById('idtxtBookingStartDateMonth-25765').value == 0){
		fnOpenCalendar25765();
		alert('Please select your dates');
		return (false);  
	}
	
	if (document.getElementById('idtxtBookingStartDateYear-25765').value == "" || document.getElementById('idtxtBookingStartDateYear-25765').value == 0){
		fnOpenCalendar25765();
		alert('Please select your dates');
		return (false);  
	}
		
	if (varBookingStartDate < 0){
		fnOpenCalendar25765();
		alert('You must book at least 0 day(s) in advance.\n\nUnfortunately you cannot book online.\n\nPlease contact us to check availability and make a booking.');
		return (false);
	}
	
	if (document.getElementById('idtxtBookingAdults-25765').value == 0)
	{
		fnOpenGuests25765();
		alert('Please select your guests');
		return (false);  
	}
	
	return true;
}			

function GetLink225765(){
  if(typeof ga !== 'undefined' && typeof ga.getAll === 'function') {
    trackers = ga.getAll();
    if(trackers.length) {
      uaLinker = new window.gaplugins.Linker(trackers[0]);      
	  document.getElementById('frmCheckAvailability-25765').action = uaLinker.decorate(document.getElementById('frmCheckAvailability-25765').action);
    } 
  }
  //alert(document.getElementById('frmCheckAvailability-25765').action );
}

