var Request = new Object();
Request.send = function(url, method, callback, data)
{
	var req;
	if (window.XMLHttpRequest)
	{
		req = new XMLHttpRequest();
	}
	else if (window.ActiveXObject)
	{
		req = new ActiveXObject("Microsoft.XMLHTTP");
	}
	req.onreadystatechange = function()
	{
		// only if req shows "loaded"
		if (req.readyState == 4)
		{
			// only if "OK"
			if (req.status < 400)
			{
				callback(req.responseText);
			}
			else
			{
				alert("There was a problem saving your changes :\n" + req.status+ "/" + req.statusText);
			}
		}
	}
	if (method=="POST")
	{
		req.open("POST", url, true);
		req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		req.send(data);
	}
	else
	{
		req.open("GET", url, true);
		req.send(null);
	}

	return req;
}
Request.sendPOST = function(url, data, callback)
{
	return Request.send(url, "POST", callback, data);
}
Request.sendGET = function(url, callback, args)
{
	return Request.send(url, "GET", callback, args);
}
function sendRequest(url, responseHandler)
{
	Request.sendGET(url, responseHandler);
}
function ShowWorking()
{
	var elem = document.getElementById('workingimg');
	if (elem) elem.style.visibility = 'visible';
}
function HideWorking()
{
	var elem = document.getElementById('workingimg');
	if (elem) elem.style.visibility = 'hidden';
}
