
//  Datepicker code that uses jQuery
$(function() {
	
	
    $('#arrivaldate').datepicker({
        defaultDate: '+5d',
        changeMonth: true,
        numberOfMonths:3,
        minDate:'+0d',
        dateFormat: 'mm/dd/yy',
        showOn: "both",
		buttonImage: "widget/cal.gif",
		buttonImageOnly: true,

        onClose: function(dateText, inst) {
            if (dateText !== '') {
                try {
                    var fromDate = $.datepicker.parseDate(inst.settings.dateFormat, dateText, inst.settings);
                    fromDate.setDate(fromDate.getDate() + 1);
                    $('#departuredate').datepicker('option', 'minDate', fromDate);
                }
                catch (err) {
                    console.log(err);
                }
            }
            else {
                //If #from is empty, restore the original limit in #departuredate
                $('#departuredate').datepicker('option', 'minDate', '+0d');
            }
        }

    });

    $('#departuredate').datepicker({
        defaultDate: '+5d',
        changeMonth: true,
        numberOfMonths:3,
        minDate:'+0d',
        dateFormat: 'mm/dd/yy',
        showOn: "both",
		buttonImage: "widget/cal.gif",
		buttonImageOnly: true,
        onClose: function(dateText, inst) {
            if (dateText !== '') {
                try {
                    var toDate = $.datepicker.parseDate(inst.settings.dateFormat, dateText, inst.settings);
                    toDate.setDate(toDate.getDate() - 1);
                    $('#arrivaldate').datepicker('option', 'maxDate', toDate);
                }
                catch (err) {
                    console.log(err);
                }
            }
            else {
                //If #departuredate is empty, remove the limit in #arrivaldate
                $('#arrivaldate').datepicker('option', 'maxDate', null);
            }
        }
    });
    
    
		
});



//  Adapted from the Customize Widget Code from Inntopia, however, it has been pared down A LOT and cleaned up.
//  It also has Bedroom parameter code.

		var url = document.location.href;
		
		var allcookies = document.cookie;
		var pos = allcookies.indexOf("adult|");
			if (pos != -1)
			{
			var start = pos + 6;
			var end = allcookies.indexOf("|", start);
			if (end == -1) end = allcookies.length;
			var adultcountvalue = allcookies.substring(start, end);
			}
			else
			{
				var adultcountvalue = 2;
			}
			
		var pos = allcookies.indexOf("child|");
			if (pos != -1)
			{
				var start = pos + 6;
				var end = allcookies.indexOf("|", start);
				if (end == -1) end = allcookies.length;
				var childcountvalue = allcookies.substring(start, end);
				
			}
			else
			{
				var childcountvalue = 0;
			}

		var pos = allcookies.indexOf("arrivaldate|");
			if (pos != -1)
			{
				var start = pos + 12;
				var end = allcookies.indexOf("|", start);
				if (end == -1) end = allcookies.length;
				var arrivaldatevalue = allcookies.substring(start, end);
				
			}
			else
			{
				var arrivaldatevalue = '';
			}
			
		var pos = allcookies.indexOf("departuredate|");
			if (pos != -1)
			{
				var start = pos + 14;
				var end = allcookies.indexOf("|", start);
				if (end == -1) end = allcookies.length;
				var departuredatevalue = allcookies.substring(start, end);
				
			}
			else
			{
				var departuredatevalue = '';
			}
			
			
			
			
		var pos = allcookies.indexOf("destinationid=");
			if (pos != -1)
			{
				var start = pos + 14
				var end = allcookies.indexOf("|", start);
				if (end == -1) end = allcookies.length;
				var destinationidvalue = allcookies.substring(start, end);
				
			}
			else
			{
				var destinationidvalue = '';
			}
			
			
			
function initialize()
{
	
	document.search_1.childcount.value = childcountvalue;
	document.search_1.adultcount.value = adultcountvalue;

	document.search_1.arrivaldate.value = arrivaldatevalue;
	document.search_1.departuredate.value = departuredatevalue;
					
	if (document.search_1.destinationid)
	{
		document.search_1.destinationid.options.selectedIndex = destinationidvalue;
	}
					
	var pos = allcookies.indexOf("features=");
	if (pos != -1)
	{
		var start = pos + 9
		var end = allcookies.indexOf("|", start);
		if (end == -1) end = allcookies.length;
		var featuresvalue = allcookies.substring(start, end);						
	}
					
    loadselector_1();
  	calculate_nights();
   
    change('selector', 'visible');
  
 }



 

function loadselector_1()
 {
  change('search_1', 'visible');
  
 }



  
function change(id, newClass) 
	{
 	identity=document.getElementById(id);
  	identity.className=newClass;
  	}
 
function submit_lodgingform() 
 	{
  	createarray();
  	return validate_searchform_1();
	}
 
 
 function createarray()
 {
    
  arrayvalue = ''
  var x=document.search_1;
   for(var i = 0; i < x.length; i++)
   {

    if (x.elements[i].type == 'checkbox')
    {
     if (x.elements[i].checked == true)
      {arrayvalue = arrayvalue  + x.elements[i].value;}
    }
    else if (x.elements[i].name == 'numrooms')  
    {
     if (x.elements[i].value != '')
      {arrayvalue = arrayvalue  + 'P,501,1,' + x.elements[i].value + ',';}
    }
    // else if (document.attributes.elements[i].type == 'text')
    // {arrayvalue = arrayvalue  + document.attributes.elements[i].name + ',' + document.attributes.elements[i].value;}
    //  else if (document.attributes.elements[i].type == 'radio')
    // {
     // if (document.attributes.elements[i].checked == true)
      // {arrayvalue = arrayvalue  + document.attributes.elements[i].value;}
    // }
    // else
     // {arrayvalue = arrayvalue  + document.attributes.elements[i].value;} 
   } 
   document.search_1.features.value =  arrayvalue;
   
   
   var domain = document.domain;
   var pos = domain.indexOf(".");
   pos = pos + 1;
   domain = domain.substring(pos);
   
   document.cookie = "features=" + arrayvalue + ";domain=" + domain + ";path=/";
   
  
  
 }
 
 function calculate_departuredate()
  {
 var startdate= new Date();
 startdate.setTime(Date.parse(document.search_1.arrivaldate.value)+ (12*60*60*1000)); 
 var numberdays = document.search_1.nights.value;
 if (isNaN(numberdays))
  {
  alert('You must enter a number in the Nights field.');
  }
 else
  {
  var msPerDay = (24 * 60 * 60 * 1000);
  var enddate = new Date();
  enddate.setTime(startdate.getTime() + (msPerDay * numberdays)); 
  endday = enddate.getDate();
  endmonth = enddate.getMonth();
  endyear = enddate.getYear();
  if ((endyear  <  200)   &&   (endyear  >  100))
   var endyear = endyear + 1900;
  if (endyear  <  100)
   var endyear = endyear + 2000;
  if (endmonth == 12)
   var endmonth = 1;
  else
   var endmonth = (endmonth + 1);
  if (endday  <  10)
   {var endday = '0' + Number(endday);}
  if (endmonth  <  10)
   {var endmonth = '0' + Number(endmonth);}
  if (endmonth  <  10)
   {var endmonth = '0' + Number(endmonth);}
  if (document.search_1.arrivaldate.value != '')
   {
   document.search_1.departuredate.value = endmonth + '/' + endday + '/' + endyear;
   }
  }
 }
 
function setdateless()
 {
  document.search_1.arrivaldate.value = '';
  document.search_1.departuredate.value = '';
 
  change('datestable', 'hidden');
 }
 
 
 
 
function calculate_nights()
  {
 var startdate= new Date();
 startdate.setTime(Date.parse(document.search_1.arrivaldate.value)); 
 var numberdays = document.search_1.nights.value;
 var msPerDay = (24 * 60 * 60 * 1000);
 var enddate = new Date();
 enddate.setTime(Date.parse(document.search_1.departuredate.value)); 
 var nights = ((enddate - startdate) / msPerDay);
 var nights = Math.round(nights);
 if (nights < 1)
  {
  document.search_1.nights.value = 1;
  calculate_departuredate();
  }
 else 
 if (isNaN(nights))
  {document.search_1.nights.value = '';}
 else
  {document.search_1.nights.value = nights;}
 }
 


	function validate_searchform_1()
		{
		
			
			var startdate= new Date();
			startdate.setTime(Date.parse(document.search_1.arrivaldate.value));	
			var enddate = new Date();
			enddate.setTime(Date.parse(document.search_1.departuredate.value));	
			var thisday = new Date();
			var adultcount = document.search_1.adultcount.value;
			var childcount = document.search_1.childcount.value;
			
			if (document.search_1.dateless.value == '0')
			
			{
			
				var arr = document.search_1.arrivaldate.value;
				var dep = document.search_1.departuredate.value;
				
				if ((document.search_1.arrivaldate.value == '') && document.search_1.dateless.value == '0')
				{
				alert('Please specify a Check In Date.');
				return false;
				}
				
				else if ((document.search_1.departuredate.value == '') && document.search_1.dateless.value == '0')
				{
				alert('You must enter a Check Out Date.');
				return false;
				}
				else
				{
				
			
				
					if ((arr.substr(2,1) != '/') | (arr.substr(5,1) != '/') | (arr.length != 10) | (dep.substr(2,1) != '/') | (dep.substr(5,1) != '/') | (dep.length != 10) | isNaN(arr.substr(0,2)) | isNaN(arr.substr(3,2)) | isNaN(arr.substr(6,4)) | isNaN(dep.substr(0,2)) | isNaN(dep.substr(3,2)) | isNaN(dep.substr(6,4)))
					{
						alert('Please specify a Check In Date.');
						return false;
					}
					else
					{
						if ((enddate.getTime() <= startdate.getTime())  && document.search_1.dateless.value == '0')
						{
						alert('Check Out Date must be after Check In Date.');
						return false;
						}
					if ((startdate.getTime() < (thisday.getTime() - 86400000)) && document.search_1.dateless.value == '0')
						{
						alert('Check In Date cannot be earlier than Today.');
						return false;
						}
					}
				}
			}
			
			
			if ((isNaN(adultcount)) || (adultcount == '') || (adultcount == 0))
				{
				alert('You must enter a number in the Adults field.');
				return false;
				}
			
			
				
			if ((isNaN(childcount)) || (childcount == ''))
				{
				alert('You must enter a number in the Children field.');
				return false;
				}

				
					
				var domain = document.domain;
				domain = "TellurideCondominium.com";
				var pos = domain.indexOf(".");
				pos = pos + 1;
				domain = domain.substring(pos);
				
				
				var arrivaldate = document.search_1.arrivaldate.value ;
				var departuredate = document.search_1.departuredate.value ;
							
				document.cookie = "guests=|adult|" + adultcount + "|child|" + childcount + "|;domain=" + domain + ";path=/";								
				document.cookie = "dates=|arrivaldate|" + arrivaldate + "|departuredate|" + departuredate + "|;domain=" + domain + ";path=/";
				
				if (document.search_1.destinationid)
				{
					document.cookie = "destinationid=" + document.search_1.destinationid.options.selectedIndex + ";domain=" + domain + ";path=/";
				}
				
				change('searching','searching');
				change('selector','hidden');
								
				return true;
				
		}	





