/** * Created with JetBrains WebStorm. * User: torsten * Date: 28.03.13 * Time: 23:07 * To change this template use File | Settings | File Templates. */ var gcf = { // decode special characters with their utf-8 representation decodeHtml : function (token) { var i, y, start = [33, 58, 91, 123, 161], stop = [47, 64, 96, 126, 255], startLength = start.length; for (y = 0; y < startLength; y++) { for (i = start[y]; i <= stop[y]; i++) { token = token.replace("&#" + i +";", String.fromCharCode(255)); } } return token; }, // xmlhttp object function getHTTPObject : function () { // debug log if (DEBUG === 1) {console.log("xml http object function");} // variable definitions var xhr; // check for availibility if xmlhttprequest object if(window.XMLHttpRequest) { xhr = new XMLHttpRequest(); } else if(window.ActiveXObject) { xhr = new ActiveXObject("Msxml2.XMLHTTP"); } return xhr; }, // ajax call function ajaxCall : function (dataUrl, outputElement, callback, responseType) { // debug log if (DEBUG === 1) {console.log("ajax function");} // variable definitions var response, request = this.getHTTPObject(); // get the xmlhttp object which is supported outputElement.innerHTML = "Lade Daten ..."; request.onreadystatechange = function() { if(request.readyState === 4 && request.status === 200) { //save ajax response if (responseType === "json") { response = JSON.parse(request.responseText); } else if (responseType === "xml") { response = request.responseXML; } else { response = request.responseText; } // check if callback is a function if(typeof callback === "function") { callback(response); } } }; request.open("get", dataUrl, true); request.send(null); } }