var req;
var finish = "0";
var content;
var divToWrite;
var fun_exec;
function loadXMLDoc(url, div, fun) 
{
    divToWrite = div;
    if(fun=='') {
        fun_exec = 'processReqChange';
    } else {
	fun_exec = ''+fun; 
    }
    // branch for native XMLHttpRequest object
    if (window.XMLHttpRequest) {
	req = new XMLHttpRequest();
	req.onreadystatechange = processReqChange;
//	req.onreadystatechange = eval(''+fun);
	req.open("GET", url, true);
	req.send(null);
    // branch for IE/Windows ActiveX version
    } else if (window.ActiveXObject) {
        req = new ActiveXObject("Microsoft.XMLHTTP");
	if (req) {
	    req.onreadystatechange = processReqChange;
//	    req.onreadystatechange = eval(''+fun);
	    req.open("GET", url, true);
	    req.send();
	}
    }
}

function processReqChange() 
{
// only if req shows "complete"
if (req.readyState == 4) {
// only if "OK"
finish = "1";
if(divToWrite == "") {
    eval(fun_exec+'()');
} else {
    document.getElementById(''+divToWrite).innerHTML = req.responseText;
}
//alert("FINISH!");
if (req.status == 200) {
// ...processing statements go here...
} else {
//alert("There was a problem retrieving the XML data:\n" + req.statusText);
}
}
}
