var xmlHttp;
var divtag;
var divloader;
var timedloader;

function ajaxsearch (keywords, thediv, onload, loaderurl, loaderdiv) {	
	// Set the global variable divtag to the div to be updated (fix for stateChanged limitation)
	divtag = thediv;
	divloader = loaderdiv;
	timedloader = setTimeout("document.getElementById(divloader).innerHTML=\"<div id='ajaxloader'><img src='"+loaderurl+"'> Working...</div>\";",5);	
	// Get XML HTTP Object
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp===null) {
		alert ("Browser does not support HTTP Request");
		return;
	}
	
	// generate URL
	var url="ajaxsearch.php";								// name of php file for processing	
	url=url+"?sid="+Math.random();							// generate a random querystring to get away from caching problems
	url=url+"&keywords="+keywords;							// submit the keywords	
	if (onload == "onload") { url = url+"&onload=true"; }		// resets to default offset if keywords have changed
	
	// Carry out the ajax operation
	xmlHttp.open("GET",url,true);
	xmlHttp.onreadystatechange=stateChanged;	
	xmlHttp.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT");
	xmlHttp.setRequestHeader("Cache-Control", "no-cache"); 	
	xmlHttp.send(null);	
}

function stateChanged() { 
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") { 
		clearTimeout(timedloader);
		document.getElementById(divtag).innerHTML=xmlHttp.responseText ;
		document.getElementById(divloader).innerHTML="" ;
	} 
	if (xmlHttp.readyState==1 || xmlHttp.readyState=="loading") {
		// timedloader = setTimeout("document.getElementById(divloader).innerHTML=\"<div id='ajaxloader'><center><br><br><br><img src='"+loaderurl+"'></center></div>\";",200);
	}	
}

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;
}

