function doAjax(request_type, ajax_request, params, callback_function) {
  var req = window.XMLHttpRequest? 
    new XMLHttpRequest() : 
    new ActiveXObject("Microsoft.XMLHTTP");
    
  req.onreadystatechange = function() {
    if (req.readyState == 4) 
    { 
      callback_function(req.responseText);
    }
  }
   
  if (request_type == "GET")
  {
  	req.open("GET", ajax_request, true);
  	// for known IE bug: http://en.wikipedia.org/wiki/XMLHTTP#Microsoft_Internet_Explorer_cache_issues
  	req.setRequestHeader( "If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT");
  	req.send(null);
  	return;
  }
  if (request_type == "POST")
  {  	
  	req.open("POST", ajax_request, true);
  	req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    req.setRequestHeader("Content-length", params.length);
    req.setRequestHeader("Connection", "close");
  	req.send(params);
  }
  else
  	alert('Unknown request type');
}