/**
* @desc Anfrage senden
*
* Sendet eine GET Anfrage an das serverseitige Script [url]. [url]
* muss eine gültige URL mit allen vom Script benötigten Variablen sein.
* Der Response wird per XML zurückgegeben
*
* @param string Elementname
* @param string Url
* @param string Funktionname
* @return void
*/
function MlPerformXMLRequest(MlElement, MlUrl, MlFunktion) {
    var xmlhttp = new XMLHttpRequest();
    xmlhttp.open("GET", MlUrl, true);
    xmlhttp.onreadystatechange = function() {
        if (xmlhttp.readyState == 4) {
            var MlFunktion = new Function("MlElement, MlResponse", "document.getElementById(MlElement).innerHTML = decodeURI(MlResponse);");
            MlFunktion(MlElement, encodeURI(xmlhttp.responseXML));
        }
    };
    xmlhttp.send(null);
}

/**
* @desc Anfrage senden
*
* Sendet eine GET Anfrage an das serverseitige Script [MlUrl]. [MlUrl]
* muss eine gültige URL mit allen vom Script benötigten Variablen sein.
* Der Response wird als HTML Code zurückgegeben
*
* @param string Elementname
* @param string Url
* @param string Funktionname
* @return void
*/
function MlPerformHtmlRequest(MlElement, MlUrl, MlFunktion) {
    var xmlhttp = new XMLHttpRequest();

    // Daten der angegebenen Seite selektieren
    xmlhttp.open("GET", MlUrl, true);

    // Nach dem selektieren angegebene Funktion ausführen
    xmlhttp.onreadystatechange = function() {
        if (xmlhttp.readyState == 4) {
            var MlFunktion = new Function("MlElement, MlResponse", "document.getElementById(MlElement).innerHTML = decodeURI(MlResponse);");
            MlFunktion(MlElement, encodeURI(xmlhttp.responseText));
        }
    };
    xmlhttp.send(null);
}


/**
* @desc Anfrage senden
*
* Sendet eine GET Anfrage an das serverseitige Script [MlUrl]. [MlUrl]
* muss eine gültige URL mit allen vom Script benötigten Variablen sein.
* Der Response wird als Text zurückgegeben
*
* @param string Elementname
* @param string Url
* @param string Funktionname
* @return void
*/
function MlPerformTextRequest(MlElement, MlUrl, MlFunktion) {
    var xmlhttp = new XMLHttpRequest();

    // Daten der angegebenen Seite selektieren
    xmlhttp.open("GET", MlUrl, true);

    // Nach dem selektieren angegebene Funktion ausführen
    xmlhttp.onreadystatechange = function() {
        if (xmlhttp.readyState == 4) {
            var MlFunktion = new Function("MlElement, MlResponse", "document.getElementById(MlElement).innerText = decodeURI(MlResponse);");
            MlFunktion(MlElement, encodeURI(xmlhttp.responseText));
        }
    };
    xmlhttp.send(null);
}


function isXMLHTTPCompatible(){
    return Sarissa.IS_ENABLED_XMLHTTP;
}
