
function createXMLHttpRequestObject ()
{
	var XMLHttpRequestObject = false;

	try {
		XMLHttpRequestObject = new XMLHttpRequest();

	} catch (e) {
		var XMLHttpRequestObjectVersions = new Array("MSXML2.XMLHttpRequestObject.6.0",
																								 "MSXML2.XMLHttpRequestObject.5.0",
																								 "MSXML2.XMLHttpRequestObject.4.0",
																								 "MSXML2.XMLHttpRequestObject.3.0",
																								 "MSXML2.XMLHttpRequestObject",
																								 "Microsoft.XMLHttpRequestObject",
																								 "Microsoft.XMLHTTP");

		for (var i=0; i < XMLHttpRequestObjectVersions.length && !XMLHttpRequestObject; i++) {
			try {
				XMLHttpRequestObject = new ActiveXObject(XMLHttpRequestObjectVersions[i]);
			} catch (e) {}
		}
	}

	if (XMLHttpRequestObject) { return XMLHttpRequestObject; }
}


function getData (location, xml)
{
	var data;

	XMLHttpRequestObject = createXMLHttpRequestObject();

	if(XMLHttpRequestObject) {

		XMLHttpRequestObject.open("GET", location, false); 

		XMLHttpRequestObject.onreadystatechange = function () 
		{
			if(XMLHttpRequestObject.readyState == 0) {

			} else if(XMLHttpRequestObject.readyState == 1) {

			} else if(XMLHttpRequestObject.readyState == 2) {

			} else if(XMLHttpRequestObject.readyState == 3) {

			} else if(XMLHttpRequestObject.readyState == 4) {

				if (XMLHttpRequestObject.status == 200) {
					
					if (xml == true) {
						data = XMLHttpRequestObject.responseXML;
					} else {
						data = XMLHttpRequestObject.responseText;
					}

				} else { // error

				}
			}
		}

		XMLHttpRequestObject.send(null);

		if (data) { return data; }
	}
}
