function ajax(url, divId)
{
	var xmlHttp;
	this.url = url;
	this.divId = divId;
	this.run = run;

	function run()
	{ 
		xmlHttp=GetXmlHttpObject()
		
		if (xmlHttp==null)
		{
			alert ("Browser does not support HTTP Request")
			return;
		}
		
		var url=this.url;
		url=url+"?sid="+Math.random();
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
	}

	function stateChanged() 
	{ 
		if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
		{ 
			changeInnerHTML( divId, xmlHttp.responseText );
		} 
	}

	function GetXmlHttpObject()
	{
		var xmlHttp=null;
		
		try
		{
			// Firefox, Opera 8.0+, Safari
			xmlHttp=new XMLHttpRequest();
		}
		catch (e)
		{
			//Internet Explorer
			try
			{
				xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
			}
			catch (e)
			{
				xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
			}
		}
		return xmlHttp;
	}
}

function changeInnerHTML(divId, html){
 var e=null;
 if (document.getElementById) {
     e=document.getElementById(divId);
          if(!e)return false;
          if("innerHTML" in e){
               e.innerHTML=html;return true
          }
          else if("firstChild" in e && "data" in e.firstChild){
               e.firstChild.data=html;return true;
          }
          else{
               return false;
          }
 }else if(document.layers){
     e=document.layers[divId];
          if(typeof e=="undefined"||!e){
               e=document[divId];
               if(typeof e=="undefined"||!e)return false;
          }
     e.document.open();
     e.document.write(html);
     e.document.close();
     return true;
 }else if(document.all){
     e=document.all[divId];
     if(typeof e=="undefined"||!e)return false;
     e.innerHTML=html;
     return true;
 }
 return false;
}
