
/////////////////////// Search request ///////////////////
function SearchResults() {
	
var data = 'typeID='+escape($('typeID').value)
data += '&sleeps='+escape($('sleeps').value)
data += '&propertycode='+escape($('propertycode').value)
data += '&startdate='+escape($('startdate_cal').value)
data += '&numbernights='+escape($('numbernights').value)
data += '&showpage='+escape($('showpage').value)
data += '&maxprice='+escape($('maxprice').value)
data += '&variableID='+escape($('variableID').value)
data += '&town='+escape($('town').value)
data += '&datevar='+escape($('datevar').value)

if ($('region_0')) {
data += '&region='+escape($('region_0').value)
}

if ($('region_1')) {
data += '&region_1='+$('region_1').value
}

if ($('region_2')) {
data += '&region_2='+escape($('region_2').value)
}

if ($('region_3')) {
data += '&region_3='+escape($('region_3').value)
}

data += '&search_frm=1';

var rnd982g = Math.random(); 

  var aj = new Ajax.Request(
  '/ajax/results.asp', {
   method:'GET',
   parameters: data + '&rnd982g='+rnd982g,
   onLoading: SearchLoading(),
   onComplete: getResponse
   }
  );
}

/////////////////////// Refine results progress spinner (in top right of h1) ///////////////////

function ajaxLoading() {
$('loading').innerHTML = '<img src="/images/ajax-loader.gif" alt="" />';
}

/////////////////////// Main search progress spinner ///////////////////

function SearchLoading() {
$('loading').innerHTML = '<div id="loading_main"><img src="/images/ajax-loader.gif" alt="" /> Searching </div>';
}

/////////////////////// Process Ajax response ///////////////////

function getResponse(oReq) {
  $('results').innerHTML = oReq.responseText;
  $('loading').innerHTML = '';
  GetRegions();
}

/////////////////////// Build the variableID hidden form field ///////////////////

function SearchVariables() {
	
var chk_var = '';

if (document.varform.variableID_chk.length != undefined) {
for (var i=0; i < document.varform.variableID_chk.length; i++)
   {
   if (document.varform.variableID_chk[i].checked)
      {
		  if (chk_var == '') {
			chk_var = chk_var + document.varform.variableID_chk[i].value;
		  }
		  else
		  {
			 chk_var = chk_var + ',' + document.varform.variableID_chk[i].value; 
		  }
      }
   }
}
else
{


   if (document.varform.variableID_chk.checked)
      {
      chk_var = chk_var + document.varform.variableID_chk.value;
      }
}

$('variableID').value = chk_var;
$('showpage').value = '1';
}

/////////////////////// Search form validation ///////////////////

function validate(theForm) {
  var startDateString = document.searchform.startdate_cal.value;
  var endDateString = document.searchform.enddate_cal.value;

  var startDate = new Date(Date.parse(startDateString.replace(/-/g,' ')))
  var endDate = new Date(Date.parse(endDateString.replace(/-/g,' ')))
  var today = new Date();
  today.setHours(0,0,0,0)
  if (startDate < today) {
    alert('Start date cannot be in the past');
    return false;
  }
  if (endDate < today) {
    alert('End date cannot be in the past');
    return false;
  }
  if (startDate > endDate) {
    alert('Start date cannot be greater than end date');
    return false;
  }
  
  if (startDate == endDate) {
    alert('End date must be greater than start date');
    return false;
  }
  
  return true
} 


/////////////////////// Regions & towns ///////////////////
function ShowChange() {
	$('showchange').value='1';
}

function GetRegions() {
	
var level = $('level').value;

var parentID = $('region_' + level).value;

//if ($('region_' + (level-1))) {
//parentID = $('region_' + (level-1)).value;
//}

var container = 'region_list_' + level;

//Clear containters
var i=level
for (i=level;i<=5;i++)
{
	if ($('region_list_'+i)) {
	$('region_list_'+i).innerHTML = '';
	}
}

new Ajax.Updater(container,'ajax/region_list.asp', {parameters: 'level='+level+'&parentID='+parentID+'&showchange='+ $('showchange').value});

}

function SetLevel(level) {
		
	$('level').value = level;
}


function GetTowns(level,regionID) {
	new Ajax.Updater('towns_list','ajax/GetTowns.asp', {parameters: 'level='+level+'&id='+regionID});
}

function LoadTowns() {
	GetTowns(0,0);
}

function UpdateEndDate() {

var startArray = $('startdate_cal').value.split('-');
var nights = parseInt($('numbernights').value);

var day1 = startArray[2];
var month1 = startArray[1];
var year1 = startArray[0];

var d1 = new Date();
d1.setYear(year1);
d1.setMonth(month1-1);
d1.setDate(day1);

d1.setDate(d1.getDate()+nights);

var month1 = d1.getMonth()+1;

var nowStr = d1.getFullYear().toString() + "-" +
    (month1 < 10 ? "0" + month1 : month1) + "-" +
    (d1.getDate() < 10 ? "0" + d1.getDate().toString() : d1.getDate().toString());

$('enddate_cal').value=nowStr;

}

function UpdateNumberNights() {

var startArray = $('startdate_cal').value.split('-');

var startDay = startArray[2];
var startMonth = startArray[1];
var startYear = startArray[0];

var startDate = new Date();
startDate.setYear(startYear);
startDate.setMonth(startMonth-1);
startDate.setDate(startDay);

var endArray = $('enddate_cal').value.split('-');

var endDay = endArray[2];
var endMonth = endArray[1];
var endYear = endArray[0];

var endDate = new Date();
endDate.setYear(endYear);
endDate.setMonth(endMonth-1);
endDate.setDate(endDay);

dateDiff = Math.round((endDate-startDate)/(24*60*60*1000))

$('numbernights').value=dateDiff;

}