	var $j = jQuery.noConflict();

	// Dates range Selection for 2 input fields and date restriction
	$j(function () 
	{
	
		$j('#startDatepicker').datepicker(
		{
			showOn: "both",
			dateFormat: 'yy-mm-dd',
			changeFirstDay: false,
			onSelect: insertCheckInDate,
			beforeShow: CheckInDateRange,
			buttonImageOnly: true,
			buttonImage: '/images/calendar.gif',
			changeMonth: true,
			changeYear: true			
		});
		
		$j('#endDatepicker').datepicker(
		{
			showOn: "both",
			dateFormat: 'yy-mm-dd',
			onSelect:insertCheckOutDate,
			beforeShow: CheckOutDateRange,			
			changeFirstDay: false,
			buttonImageOnly: true,
			buttonImage: '/images/calendar.gif',		
			changeMonth: true,
			changeYear: true			
		});
		
		//used for left hand side search/date pciker
		$j('#startDatepickerSearch').datepicker(
		{
			showOn: "both",
			dateFormat: 'yy-mm-dd',
			changeFirstDay: false,
			onSelect: insertCheckInDateSearch,
			beforeShow: CheckInDateRangeSearch,
			buttonImageOnly: true,
			buttonImage: '/images/calendar.gif',
			changeMonth: true,
			changeYear: true			
		});
		
		$j('#endDatepickerSearch').datepicker(
		{
			showOn: "both",
			dateFormat: 'yy-mm-dd',
			onSelect: insertCheckOutDateSearch,
			beforeShow: CheckOutDateRangeSearch,			
			changeFirstDay: false,
			buttonImageOnly: true,
			buttonImage: '/images/calendar.gif',		
			changeMonth: true,
			changeYear: true			
		});		
		
	});


	function insertCheckInDate(value, input, inst) {
		 	
			 var firstDate = new Date($j('#' + input.id).datepicker("getDate"));

			 var datepickerInput 
			 if   (input.id === 'startDatepicker') {
				  datepickerInput = 'endDatepicker';
				  var endInput = datepickerInput ; 
				  CheckOutDateRange(endInput);
			  }
			 
			 var dateAdjust 
			 if    (input.id === 'startDatepicker') {dateAdjust = 1;} 
			 
			 var secondDate = new Date(firstDate.getFullYear(), firstDate.getMonth(), firstDate.getDate() + dateAdjust);  
			 
			 $j('#' + datepickerInput).datepicker('setDate', secondDate);
		 
	}
	
	function insertCheckInDateSearch(value, input, inst) {
		 	
			 var firstDate = new Date($j('#' + input.id).datepicker("getDate"));

			 var datepickerInput 
			 if   (input.id === 'startDatepickerSearch') {
				  datepickerInput = 'endDatepickerSearch';
				  var endInput = datepickerInput ; 
				  CheckOutDateRangeSearch(endInput);
			  }
			 
			 var dateAdjust 
			 if    (input.id === 'startDatepickerSearch') {dateAdjust = 1;} 
			 
			 var secondDate = new Date(firstDate.getFullYear(), firstDate.getMonth(), firstDate.getDate() + dateAdjust);  
			 
			 $j('#' + datepickerInput).datepicker('setDate', secondDate);
		 
	}	

	function insertCheckOutDate(value, input, inst) {

		var date_start = $j("#startDatepicker").datepicker("getDate");
		var date_end = $j("#endDatepicker").datepicker("getDate");
		var minutes = 1000*60;
		var hours = minutes*60;
		var days = hours*24;
		if (date_end.getTime() > date_start.getTime()){
			var diff = Math.abs(date_end.getTime() - date_start.getTime());
			var diff_days = diff / days;	  

			 if  ( diff_days > 21 ) {  //date range is 14 days
			 
				 var secondDate = new Date($j('#' + input.id).datepicker("getDate"));
				 var datepickerInput 
				 if   (input.id === 'endDatepicker') {datepickerInput = 'startDatepicker';}
				 
				 var dateAdjust 
				 if    (input.id === 'endDatepicker') {dateAdjust = 1;} 
	
				 var reset_firstDate = new Date(secondDate.getFullYear(), secondDate.getMonth(), secondDate.getDate() - dateAdjust);   
				 $j('#' + datepickerInput).datepicker('setDate', reset_firstDate);
			  } 
		   }
		
		else {
				 var secondDate = new Date($j('#' + input.id).datepicker("getDate"));
				 var datepickerInput 
				 if   (input.id === 'endDatepicker') {datepickerInput = 'startDatepicker';}
				 
				 var dateAdjust 
				 if    (input.id === 'endDatepicker') {dateAdjust = 1;} 
	
				 var reset_firstDate = new Date(secondDate.getFullYear(), secondDate.getMonth(), secondDate.getDate() - dateAdjust);   
				 $j('#' + datepickerInput).datepicker('setDate', reset_firstDate);
			}
		  		  
	}
	
	function insertCheckOutDateSearch(value, input, inst) {

		var date_start = $j("#startDatepickerSearch").datepicker("getDate");
		var date_end = $j("#endDatepickerSearch").datepicker("getDate");
		var minutes = 1000*60;
		var hours = minutes*60;
		var days = hours*24;
		if (date_end.getTime() > date_start.getTime()){
			var diff = Math.abs(date_end.getTime() - date_start.getTime());
			var diff_days = diff / days;	  

			 if  ( diff_days > 21 ) {  //date range is 14 days
			 
				 var secondDate = new Date($j('#' + input.id).datepicker("getDate"));
				 var datepickerInput 
				 if   (input.id === 'endDatepickerSearch') {datepickerInput = 'startDatepickerSearch';}
				 
				 var dateAdjust 
				 if    (input.id === 'endDatepickerSearch') {dateAdjust = 1;} 
	
				 var reset_firstDate = new Date(secondDate.getFullYear(), secondDate.getMonth(), secondDate.getDate() - dateAdjust);   
				 $j('#' + datepickerInput).datepicker('setDate', reset_firstDate);
			  } 
		   }
		
		else {
				 var secondDate = new Date($j('#' + input.id).datepicker("getDate"));
				 var datepickerInput 
				 if   (input.id === 'endDatepickerSearch') {datepickerInput = 'startDatepickerSearch';}
				 
				 var dateAdjust 
				 if    (input.id === 'endDatepickerSearch') {dateAdjust = 1;} 
	
				 var reset_firstDate = new Date(secondDate.getFullYear(), secondDate.getMonth(), secondDate.getDate() - dateAdjust);   
				 $j('#' + datepickerInput).datepicker('setDate', reset_firstDate);
			}
		  		  
	}		
	
	function CheckInDateRange(input) { 
			return {minDate: +0,
				    maxDate: '+2Y'
				   }; 
		}
		
	function CheckInDateRangeSearch(input) { 
			return {minDate: +0,
				    maxDate: '+2Y'
				   }; 
		}		

	function CheckOutDateRange(input) 
		{ 
				var min = new Date(); //Set this to the absolute minimum date
				var dateMin = min;
				var dateMax = null;
		
				if (input == "endDatepicker")
				{
						dateMax = new Date(); //Set this to your absolute maximum date
						if ($j("#startDatepicker").datepicker("getDate") != null)
						{
								dateMin = $j("#startDatepicker").datepicker("getDate");
								dateMin.setDate(dateMin.getDate() + 1);
						}
				}
				return {
						minDate: dateMin, 
						maxDate: '+2Y'
						}; 
		
		}
		
	function CheckOutDateRangeSearch(input) 
		{ 
				var min = new Date(); //Set this to the absolute minimum date
				var dateMin = min;
				var dateMax = null;
		
				if (input == "endDatepickerSearch")
				{
						dateMax = new Date(); //Set this to your absolute maximum date
						if ($j("#startDatepickerSearch").datepicker("getDate") != null)
						{
								dateMin = $j("#startDatepickerSearch").datepicker("getDate");
								dateMin.setDate(dateMin.getDate() + 1);
						}
				}
				return {
						minDate: dateMin, 
						maxDate: '+2Y'
						}; 
		
		}			


	 //document.getElementById( "frmTownCitySearch" ).setAttribute( "autocomplete","off" );

