// Usage example:
// var post_vars = {'one':'een','two':'twee'};
// ajax_return['test'] = function (returned) { alert(returned); }
// ajax_get('test','index.php?s=1',post_vars);

var httpRequest = new Array();
var ajax_return = new Array();

function ajax_get(uid,url,vars) {

	if (window.XMLHttpRequest) { // Mozilla, Safari, ...
		httpRequest[uid] = new XMLHttpRequest();
		if (httpRequest[uid].overrideMimeType) {
			httpRequest[uid].overrideMimeType('text/xml');
		}
	} else if (window.ActiveXObject) { // IE
		try {
			httpRequest[uid] = new ActiveXObject("Msxml2.XMLHTTP");
		} 
		catch (e) {
			try {
				httpRequest[uid] = new ActiveXObject("Microsoft.XMLHTTP");
			} 
			catch (e) {}
		}
	}

	if (!httpRequest[uid]) {
		alert('Giving up :( Cannot create an XMLHTTP instance');
		return false;
	}
	httpRequest[uid].onreadystatechange = function() {
		if (httpRequest[uid].readyState == 4) {
			if (httpRequest[uid].status == 200) {
				if (window.ajax_return[uid]) {
					ajax_return[uid](httpRequest[uid].responseText);
				} else {
					alert('No return action defined');
				}
			} else {
				alert('There was a problem with the request.');
			}
		}
	};

	var body = '';
	for (var i in vars) { body += i + '=' + vars[i] + '&'; }
	httpRequest[uid].open('POST', url, true);
	httpRequest[uid].setRequestHeader('Content-Type','application/x-www-form-urlencoded'); 
	httpRequest[uid].send(body);
}
