function GetHTTPObject()
{   
	if (window.XMLHttpRequest)     
		return new XMLHttpRequest();
		
	else if (window.ActiveXObject){  
			//return new ActiveXObject("Microsoft.XMLHTTP"); 
			var XmlHttpVersions = new Array("MSXML2.XMLHTTP.6.0",
                                    "MSXML2.XMLHTTP.5.0",
                                    "MSXML2.XMLHTTP.4.0",
                                    "MSXML2.XMLHTTP.3.0",
                                    "MSXML2.XMLHTTP",
                                    "Microsoft.XMLHTTP");
    		// try every prog id until one works
   			for (var i=0; i<XmlHttpVersions.length && !xmlHttp; i++) 
    		{
      			try 
      			{ 
        		// try to create XMLHttpRequest object
        			xmlHttp = new ActiveXObject(XmlHttpVersions[i]);
      			} 
      			catch (e) {}
    		}
    }else 
		return null;   
}

function CallAjax(url, callback)
{        
	var http = GetHTTPObject();    
	if (http != null) 
	{
		if (url.indexOf("?") > -1)
			url += "&dummy=" + CreateDummy();
		else
			url += "?dummy=" + CreateDummy();
		http.open("GET", url, true);
		http.send(null);
		http.onreadystatechange = function()
		{ 
			if(http.readyState == 4)
			{
				responseText = http.responseText;
				eval(callback); 
			}
		};   
	}
}

function CreateDummy()
{
	var dummy = Math.random();
	dummy = dummy.toString().substr(2);
	return dummy;
}
