function getXmlHttpRequest() {
	var httpRequest = null;
	try {
		httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
	} catch (e) {
			try {
				httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {
				httpRequest = null;
			}
	}
	
	if (!httpRequest && typeof XMLHttpRequest != "undefined") {
		httpRequest = new XMLHttpRequest();
	}
	
	return httpRequest;
}

//call a url by http GET 
function getUrl(url, async, handleStateChange) {

	var xmlHttpReq = getXmlHttpRequest();

	if (!xmlHttpReq)
		return;

	if (handleStateChange) {
			xmlHttpReq.onreadystatechange = function() { handleStateChange(xmlHttpReq);
			};
	} else {
		xmlHttpReq.onreadystatechange = function() {;}
	}

	xmlHttpReq.open("GET", url, async);

	xmlHttpReq.send(null);

}

