function GetXmlHttpObject(handler)
{
	var objXmlHttp = null;

	// This check is for Mozilla, Safari, Opera,...
	if (window.XMLHttpRequest)
	{
		try
		{
			objXmlHttp = new XMLHttpRequest();
			objXmlHttp.onload = handler;
			objXmlHttp.onerror = handler;
		   
			/*
			 * Since we're not using XML, this is not needed (and will break our script!)
			 *
			if (objXmlHttp.overrideMimeType)
			{
				objXmlHttp.overrideMimeType('text/xml');
			}
			*/
		}
		catch (e)
		{
			objXmlHttp = false;
		}
	}
	else // For Internet Explorer
	{
		var types = [
			'Microsoft.XMLHTTP',
			'MSXML2.XMLHTTP.5.0',
			'MSXML2.XMLHTTP.4.0',
			'MSXML2.XMLHTTP.3.0',
			'MSXML2.XMLHTTP'
		];
	
		for (var i = 0; i < types.length; i++)
		{
			try {
				objXmlHttp = new ActiveXObject(types[i]);
				objXmlHttp.onreadystatechange = handler;
				break;
			} catch(e) {}
		}
	}

	if( typeof objXmlHttp == 'boolean' || objXmlHttp == null )
	{
		// alert( 'Error initialising XML RPC system, please update to a newer browser version' );
		return null;
	}

	return objXmlHttp;

}