/*--------------------------------------
	User configured variables
--------------------------------------*/							
var msgWaiting     = "Please wait while processing your request...";

/*--------------------------------------
	Script Stuff
--------------------------------------*/
var liveReq = false;
var t = null;
var isIE = false;
var countdown = 0;

// on !IE we only have to initialize it once
if (window.XMLHttpRequest) {
	liveReq = new XMLHttpRequest();
}

// FUNCTIONS
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != "function") {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}

function liveReqStart() {
	countdown = new Date().getTime();

	if (t) {
		window.clearTimeout(t);
	}
	t = window.setTimeout("liveReqDoReq(" + mode + ")",400);
}

function liveReqDoReq() {
	if (liveReq && liveReq.readyState < 4) {
		liveReq.abort();
	}
	if (window.XMLHttpRequest) {
		liveReq = new XMLHttpRequest();// branch for IE/Windows ActiveX version
	
	} 
	else if (window.ActiveXObject) {
		liveReq = new ActiveXObject("Microsoft.XMLHTTP");
	}

	document.getElementById("mode_" + mode + "_results").innerHTML = msgWaiting;
	liveReq.onreadystatechange = liveReqProcessReqChange;
	liveReq.open("GET", getUriString());
	liveReq.send(null);
}

function liveReqProcessReqChange() {
	if (liveReq.readyState == 4) {
		document.getElementById("mode_" + mode + "_results").innerHTML = liveReq.responseText;
		document.getElementById("mode_" + mode + "_countdown").innerHTML = "executed in:&nbsp;" + eval((new Date().getTime() - countdown)/1000) + "s";
	}
}