
var http_request = false;
var http_callback = null;
var http_url;

function makeAjaxRequest (_url, _callBack)
	{
	http_url = _url;
	http_request = false;
	http_callback = _callBack;

	if (window.XMLHttpRequest)
		{
		// Mozilla, Safari,...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType)
			{
			http_request.overrideMimeType('text/xml');
			}
		}
	else if (window.ActiveXObject)
		{
		// IE
		try
			{
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
			}
		catch (e)
			{
			try 
				{
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
				}
			catch (e) {}
			}
		}

	if (!http_request)
		{
		window.status = "ajax.js - cannot instantiate XMLHTTP obj";
		return -1;
		}

	http_request.onreadystatechange = deliverAjaxResponse;
	http_request.open('GET', _url, true);
	http_request.send(null);
	return 0;
	}

function deliverAjaxResponse ()
	{
	if (http_request.readyState == 4)
		{
		if (http_request.status == 200)
			return http_callback(http_request.responseText);
		else
			{
			window.status = "ajax.js - XMLHTTP request for "+http_url+" unfulfilled";
			return -1;
			}
		}
	return null;
    }

