function hasAjax() {
	return window.XMLHttpRequest || window.ActiveXObject;
}

function ajax(id,url) {
	ajax(id,url,null,true);
}

function ajax(id,url,func) {
	ajax(id,url,func,true);
}

// for retrieving html
function ajax(id,url,func,image){
	var MyHttpRequest = false;
	if (window.XMLHttpRequest) {
		try {
			MyHttpRequest = new XMLHttpRequest();
		}
		catch(e) {
			MyHttpRequest = false;
		}
	}
	else if (window.ActiveXObject){
		try {
			MyHttpRequest = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(e) {
			try {
				MyHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(e) {
				MyHttpRequest = false;
			}
		}
	}
	else {
		MyHttpRequest = false;
	}

	if (MyHttpRequest) {
		MyHttpRequest.open("GET", url, true);
		MyHttpRequest.onreadystatechange = function() {
			if (MyHttpRequest.readyState == 4) {
				document.getElementById(id).innerHTML = MyHttpRequest.responseText;
				if (func) {
					func();
				}
			}
			else {
				if (image) {
					document.getElementById(id).innerHTML='<img src="images/loading.gif">';
				}
			}
		}
		MyHttpRequest.send(null);
	}
	else document.getElementById(id).innerHTML = 'No XMLHTTP support in your browser.';
}

// for retrieveing raw data
function ajaxRaw(url,func,image){
	var MyHttpRequest = false;
	if (window.XMLHttpRequest) {
		try {
			MyHttpRequest = new XMLHttpRequest();
		}
		catch(e) {
			MyHttpRequest = false;
		}
	}
	else if (window.ActiveXObject){
		try {
			MyHttpRequest = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(e) {
			try {
				MyHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(e) {
				MyHttpRequest = false;
			}
		}
	}
	else {
		MyHttpRequest = false;
	}

	if (MyHttpRequest) {
		MyHttpRequest.open("GET", url, true);
		MyHttpRequest.onreadystatechange = function() {
			if (MyHttpRequest.readyState == 4) {
				if (func) {
					func(MyHttpRequest.responseText);
				}
			}
			else {
				if (image) {
					document.getElementById(id).innerHTML='<img src="images/loading.gif">';
				}
			}
		}
		MyHttpRequest.send(null);
	}
	else {
		if (func) {
			func(null);
		}
	}
}
