
//
// craete a XMLHTTPRequest and register a listner callback function
//

function newXMLHttpRequest() {
	var xmlreq = false;
	if (window.XMLHttpRequest) {
		xmlreq = new XMLHttpRequest();
	} else if (window.ActiveXObject) {
    		// Try ActiveX
		try { 
			xmlreq = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e1) { 
			// first method failed 
			try {
				xmlreq = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e2) {
				 // both methods failed 
			} 
		}
 	}
   	return xmlreq;
} 

function getReadyStateHandler(req, responseXmlHandler) {
	return function () {
		if (req.readyState == 4) {
			if (req.status == 200) {
        	responseXmlHandler(req.responseXML);
			}
    }
 	}
}


//
// Search and Replace
//

function StringReplace(org, searchString, replaceString) {  
    if ((org == null) || (searchString == null))           { return null; }
    if ((org.length == 0) || (searchString.length == 0))   { return org; }
    if ((replaceString == null) || (replaceString.length == 0))    { replaceString = ""; }

    var LaengesearchString = searchString.length;
    var LaengereplaceString = replaceString.length;
    var Pos = org.indexOf(searchString, 0);

    while (Pos >= 0)
    {
        org = org.substring(0, Pos) + replaceString + org.substring(Pos + LaengesearchString);
        Pos = org.indexOf(searchString, Pos + LaengereplaceString);
    }
    return org;
}


function printError() {
	document.write("<div class='error'><h2>This AJAX-application requires a state of the art browser.</h2><p>Please download a webbrowser for example <a href='http://www.mozilla.com/' target='_blank'>FireFox</a> or <a href='http://www.opera.com/' target='_blank'>Opera</a></p></div>");
}

