//Define sub-objects in the DSBWebclient object. var DSBWebClient={ AsyncHTTP:Object, DOM:Object, GenFunc:Object } // Global configurationvariables. var gsClassName = "WebPage.DSBWebClient"; var gsErrors = ""; var goXMLHttpFactories = [ function() {return new XMLHttpRequest()}, function() {return new ActiveXObject("Msxml2.XMLHTTP")}, function() {return new ActiveXObject("Msxml3.XMLHTTP")}, function() {return new ActiveXObject("Microsoft.XMLHTTP")} ]; // Functions to manage asynchronous http-requests. DSBWebClient.AsyncHTTP = function(asCalledFrom) { //ClassHeader var lsClassName = "AsyncHTTP"; var lsCalledFrom; if(asCalledFrom != null) {lsCalledFrom = asCalledFrom;}else{lsCalledFrom = gsClassName;} var lsClassPath = lsCalledFrom + '.' + lsClassName; var loDOM = new DSBWebClient.DOM(lsClassPath); var loGenFunc = new DSBWebClient.GenFunc(lsClassPath); //End ClassHeader this.httpRequest = function(asURL, aoCallbackHandler) { // Performs a HttpGet-request on asURL and returns HTTPXML-object. //Create XMLHTTP-object using object-detection var loXMLHTTP; for (var i=0;i'; loElement.innerHTML = loValue; } catch (e) {} } this.urlEncode = function(asInput) { // To urlencode asInput. var lsSafeChars = "0123456789" + "ABCDEFGHIJKLMNOPQRSTUVWXYZ" + "abcdefghijklmnopqrstuvwxyz" + "-_.!~*'()"; var lsHex = "0123456789ABCDEF"; var lsEncoded = ""; var lbLastCharIs13or10; for (var i = 0; i < asInput.length; i++ ) { var lsChr = asInput.charAt(i); if (lsChr == " ") { lsEncoded += "+"; lbLastCharIs13or10 = false; } else if (lsSafeChars.indexOf(lsChr) != -1) { lsEncoded += lsChr; lbLastCharIs13or10 = false; } else { var liChr = lsChr.charCodeAt(0); if (liChr > 255) { //unicode, simply do not encode... lsEncoded += "+"; var lbLastCharIs13or10 = false; } else if (liChr == 13) { if (lbLastCharIs13or10 == false) { lsEncoded += "%0D%0A"; lbLastCharIs13or10 = true; } } else if (liChr == 10) { if (lbLastCharIs13or10 == false) { lsEncoded += "%0D%0A"; lbLastCharIs13or10 = true; } } else { lsEncoded += "%"; lsEncoded += lsHex.charAt((liChr >> 4) & 0xF); lsEncoded += lsHex.charAt(liChr & 0xF); var lbLastCharIs13or10 = false; } } } return lsEncoded; } this.isArray = function(aoInput){ var lbArray = false; if (aoInput) { if (typeof aoInput == 'object' || typeof aoInput == 'function') { if (aoInput.constructor == Array) { lbArray = true; } } } return lbArray; } this.makePostString = function(aarrFields) { var i,loElement; var lsOutput = ""; for (i=0;i String(asInput).length) { return asInput; } else { return String(asInput).substring(0,aiLen); } } }