// JavaScript Document
function createREQ()
	{
	try{
		req=new XMLHttpRequest();
		}
	catch(err1)
		{
		try{
			req=new ActiveXObject('Msxml2.XMLHTTP');
			}
		catch(err2)
			{
			try{
				req=new ActiveXObject('Microsoft.XMLHTTP');
				}
			catch(err3)
				{
				req=false;
				}
			}
		}
		
		return req;
	}
	
	

	
function doCallback(callback, item)
	{
	eval(callback+'(item)');	
	}

function requestGET(url,query,req)
	{
	myRand=parseInt(Math.random()*999999999);
	req.open("GET",url+'?'+query+'&rand='+myRand,true);
	req.send(null);
	}
function requestPOST(url,query,req)
	{
	req.open("POST",url,true);
	req.setRequestHeader("content-type",'application/x-www-form-urlencode');
	req.send(query);
	}

function doAjax(url, query, callback, reqtype, getxml)
	{
	var myreq=createREQ();
	if(reqtype=='post')
		{
		requestPOST(url,query,myreq);
		}
	else
		{
		requestGET(url,query,myreq);	
		}


	myreq.onreadystatechange=function()
		{
		if(myreq.readyState==4)
			{
			if(myreq.status==200)
			{
			var item=myreq.responseText;
			if(getxml==1)
				{
				item=myreq.responseXML;	
				}
		    doCallback(callback, item);
			}
			}
			
		}

	}
