var timeout;

function ajaxFunction(routine, params, callback, callbackparams){
	var ajaxRequest;
	var url=routine+".ajax";
	try { // Opera 8.0+, Firefox, Safari
		ajaxRequest = new XMLHttpRequest();
	} catch (e){ // Internet Explorer Browsers
		try{
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try{
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				return false;
			}
		}
	}
	// Create a function that will receive data sent from the server
	ajaxRequest.onreadystatechange = function(){
		if(ajaxRequest.readyState == 4&&ajaxRequest.status==200){
			returnText=ajaxRequest.responseText.replace(/\'/g, "\\'").replace(/\n/g, "\\n").replace(/\r/g, "");
			eval(callback+"('"+returnText+"', '"+callbackparams+"');");
		}
	}
	ajaxRequest.open("GET", url+"?"+params, true);
	ajaxRequest.send(null); 
}
