/////////////////////// Search request ///////////////////
function SearchResults() {	
	var data = 'typeID='+escape($('typeID').value)
	data += '&sleeps='+escape($('sleeps').value)
	data += '&propertycode='+escape($('propertycode').value)
	data += '&startdate='+escape($('startdate').value)
	
	if($('numbernights2')){
		data += '&numbernights='+escape($('numbernights2').value)
	}else{
		data += '&numbernights='+escape($('numbernights').value)		
	}
	//data += '&enddate='+escape($('enddate').value)
	data += '&showpage='+escape($('showpage').value)
	data += '&maxprice='+escape($('maxprice').value)
	data += '&variableID='+escape($('variableID').value)
	data += '&town='+escape($('town').value)

	if ($('a')) {
		data += '&a='+escape($('a').value)
	}

	if ($('region_0')) {
		data += '&region='+escape($('region_0').value)
	}

	if ($('region_1')) {
		data += '&region_1='+escape($('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(); 

	//alert('/ajax/results.asp?' + data);

	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 startDateString = $('startdate_cal').value

var d1 = new Date(Date.parse(startDateString.replace(/-/g,' ')))
var nights = parseInt($('numbernights').value);

d1.setDate(d1.getDate()+nights);

var nowStr = dateFormat(d1, "dd-mmm-yyyy");

$('enddate_cal').value=nowStr;

}

function UpdateNumberNights() {
	
var startDateString = $('startdate_cal').value
var endDateString = $('enddate_cal').value

var startDate = new Date(Date.parse(startDateString.replace(/-/g,' ')))
var endDate = new Date(Date.parse(endDateString.replace(/-/g,' ')))

dateDiff = Math.round((endDate-startDate)/(24*60*60*1000))

$('numbernights').value=dateDiff;

}