// JavaScript Document

var xmlHttp;

function loadingMsg() {
		document.getElementById("resultsArea").innerHTML = '<h3>Finding Results... <img src="pics/loading.gif" align="centre"/></h3>';
}

function buildResults(form)
{ 
  //alert ("buildResults() called");
  
  // Some error checking
  if ( (String(form.cLat.value)) == "" || (String(form.cLat.value)) == "undefined")
  {
	  	alert ("Google Maps just needs to look up your location/postcode - Please ensure a postcode is present and try again now");
	  	return(false);
  }

  loadingMsg();
  
  var cat    = "";
  var clat   = "";
  var clng   = "";
  var dist   = "";
  var minpr  = "";
  var maxpr  = "";
  var used   = "";
  var make   = "";
  var gender = "";
  var colour = "";
  var frameset = "";
  var groupset = "";  
  var gears = "";
  var brakes = "";
  var keywords = "";
  var offset = "";
  
  cat       = form.catsearch.value;
  clat  	= form.cLat.value;
  clng  	= form.cLong.value;
  dist  	= form.radius.value;
  minpr 	= form.min_pr.value;
  maxpr 	= form.max_pr.value;
  used  	= form.used.value;
  make  	= form.make.value;
  gender 	= form.gender.value;
  colour 	= form.colour.value;
  frameset 	= form.frameset.value;
  framesize = form.framesize.value;
  groupset 	= form.groupset.value;  
  gears 	= form.gears.value; 
  brakes 	= form.brakes.value; 
  keywords 	= form.keywords.value; 
  offset 	= form.offset.value; 


  xmlHttp=GetXmlHttpObject()
  if (xmlHttp==null)
  {
    alert ("Your browser does not support AJAX!");
    return;
  } 

  var url="getSearchResults.asp";
  url=url+"?cat="+cat;   // First param must use '?', subsequent params must use '&' !!
  url=url+"&clat="+clat;
  url=url+"&clng="+clng;
  url=url+"&dist="+dist;
  url=url+"&minpr="+minpr;
  url=url+"&maxpr="+maxpr;
  url=url+"&used="+used;
  url=url+"&make="+make;
  url=url+"&gend="+gender;
  url=url+"&col="+colour;
  url=url+"&frst="+frameset;
  url=url+"&frsz="+framesize;
  url=url+"&grst="+groupset;
  url=url+"&gear="+gears;
  url=url+"&brks="+brakes;
  url=url+"&keys="+keywords;
  // Ensure nothing vital after the offset parameter - as this will be stripped off in getSearchResults
  url=url+"&offset="+offset;
  url=url+"&rid="+Math.random(); // to ensure browser is not showing a cached copy. 
  xmlHttp.onreadystatechange=stateChanged;
  xmlHttp.open("GET",url,true);
  xmlHttp.send(null);
  
} 

function getResultsPage(params)
{ 
  //alert ("getResultsPage() called with params " + params);
  
  loadingMsg();

  xmlHttp=GetXmlHttpObject()
  if (xmlHttp==null)
  {
    alert ("Your browser does not support AJAX!");
    return;
  } 
  
  var url="getSearchResults.asp?";
  url=url+params;
  url=url+"&rid="+Math.random(); // to ensure browser is not showing a cached copy. 
  xmlHttp.onreadystatechange=stateChanged;
  xmlHttp.open("GET",url,true);
  xmlHttp.send(null);
} 


function stateChanged() 
{ 
  if (xmlHttp.readyState==4) 
  { 
      document.getElementById("resultsArea").innerHTML=xmlHttp.responseText; 
        if (xmlHttp.responseText.indexOf("No matches found") > -1)  // tests for the occurrence of this string 
        { 
                scroll(0,0);  // Scroll to top of page if no results found 
        } 
        else 
        { 
                scroll(0,420);  // Else jump down to where results are visible 
        } 
  } 
} 


function GetXmlHttpObject()
{
  var xmlHttp=null;
  try
  {
    // Firefox, Opera 8.0+, Safari
    xmlHttp=new XMLHttpRequest();
  }
  catch (e)
  {
    // Internet Explorer
    try
    {
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch (e)
    {
      xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
  return xmlHttp;
}
