// JavaScript Document

var requests = Array();

function sendRequest(identifier, url, callback, postData)
{
	var ajax = createXMLHTTPObject();
	if (!ajax) return false;
	
	var method = (postData) ? "POST" : "GET";
	ajax.open(method,url,true);
	
	ajax.setRequestHeader('User-Agent','XMLHTTP/1.0');
	if (postData)
	{
		ajax.setRequestHeader('Content-type','application/x-www-form-urlencoded');
	}
	
	ajax.onreadystatechange = function ()
	{
		if (ajax.readyState != 4) return false;
		if (ajax.status != 200 && ajax.status != 304) {
//			alert('HTTP error ' + req.status);
			return false;
		}
		
//		requests.remove(identifier);
		callback(ajax, identifier);
	}
	
	if (ajax.readyState == 4) return false;
	
	ajax.send(postData);
	
	return true;
}

var XMLHttpFactories = [
	function () { return new XMLHttpRequest() },
	function () { return new ActiveXObject("Msxml2.XMLHTTP") },
	function () { return new ActiveXObject("Msxml3.XMLHTTP") },
	function () { return new ActiveXObject("Microsoft.XMLHTTP") }
];

function createXMLHTTPObject() {
	var xmlhttp = false;
	
	for (var i=0;i<XMLHttpFactories.length;i++)
	{
		try
		{
			xmlhttp = XMLHttpFactories[i]();
		}
		catch (e)
		{
			continue;
		}
		break;
	}
	
	return xmlhttp;
}