var xmlhttp = null;

String.prototype.replaceAll = function(pcFrom, pcTo){
	var i = this.indexOf(pcFrom);
	var c = this;
	while (i > -1){
		c = c.replace(pcFrom, pcTo);
		i = c.indexOf(pcFrom);
	}
	return c;
}

function $(id) { return document.getElementById(id); }

function getXHR()
{
	var xmlhttp = null;
	try {
	 xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	} catch (e) {
	 try {
	  xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	 } catch (E) {
	  xmlhttp = false;
	 }
	}
	if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
	 xmlhttp = new XMLHttpRequest();
	}
	return xmlhttp;
}

var _returnfunctionname = null;
function readUrl(url, returnfunctionname)
{
	if (xmlhttp==null)
		xmlhttp = getXHR();
	if (xmlhttp==null)
	{
		alert("no xhr");
		return;
	}
	_returnfunctionname = returnfunctionname;
	xmlhttp.open("GET", url, true);
	xmlhttp.onreadystatechange = xhrReady;
	xmlhttp.send(null);
}

function readUrlSynch(url)
{
	try {
		if (xmlhttp==null)
			xmlhttp = getXHR();
		if (xmlhttp==null)
		{
			//alert("no xhr");
			return;
		}
		xmlhttp.open("GET", url, false);
		xmlhttp.send(null);
		return xmlhttp.responseText;
	} catch (e) { return null; }
}

function xhrReady()
{
	if (xmlhttp.readyState==4)
	{
	  	if (xmlhttp.status==200) // url exist?
	  	{
	  		_returnfunctionname(xmlhttp.responseText);
	  	}
	}
}

