if(!LBS){var LBS={}}LBS.HTTP=new function(){this.sendRequest=function(n){var f=LBS.HTTP.Request.METHOD;var h=a();h.onreadystatechange=new b(n,h);var e=n.getUrl();var c=n.getMethod();var l="";var k=n.getParams();if(k.length>0){if(c===f.GET){l="?"}for(var o in k){var g=k[o];var d=g.name;var p=g.value;if(p instanceof window.Array){for(var m in p){l+=encodeURIComponent(d)+"[]=";l+=encodeURIComponent(p[m])+"&"}}else{l+=encodeURIComponent(d)+"=";l+=encodeURIComponent(p)+"&"}}l=l.substring(0,l.length-1)}if(c===f.GET){h.open("GET",e+l,true);h.send(null)}else{if(c===f.POST){h.open("POST",e,true);h.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");h.send(l)}}};var b=function(f,c){var j=LBS.HTTP;var i=j.Response.STATUS;var e=f;var g=c;var d=null;var k=false;var h=function(){k=true;g.abort();e.getCBF()(new j.Response(i.TIMEOUT))};d=setTimeout(h,e.getTimeout());return function(){if(g.readyState==4){if(k==false){clearTimeout(d);var l=new j.Response(i.ERROR);l.setHttpStatusCode(g.status);if(g.status==200){l.setStatus(i.OK);l.setResponseText(g.responseText);l.setResponseXml(g.responseXML)}e.getCBF()(l)}}}};var a=function(){if(window.XMLHttpRequest){a=function(){return new XMLHttpRequest()}}else{a=function(){var c=["Msxml2.XMLHTTP.6.0","Msxml2.XMLHTTP.3.0","Msxml2.XMLHTTP","Microsoft.XMLHTTP"];for(var d in c){try{return new ActiveXObject(c[d])}catch(f){}}return null}}return a()}};LBS.HTTP.Request=function(b,a,i,g){this.setUrl=function(j){d=j};this.getUrl=function(j){return d};this.setMethod=function(j){e=j};this.getMethod=function(){return e};this.setCBF=function(j){c=j};this.getCBF=function(){return c};this.addParam=function(j,k){h.push({name:j,value:k})};this.getParams=function(){return h};this.setTimeout=function(j){f=j};this.getTimeout=function(){return f};var d=b;var e=a;var c=i;var h=[];var f=g};LBS.HTTP.Request.METHOD={GET:1,POST:2};LBS.HTTP.Response=function(a){this.setStatus=function(f){c=f};this.getStatus=function(){return c};this.setHttpStatusCode=function(f){e=f};this.getHttpStatusCode=function(){return e};this.setResponseText=function(f){d=f};this.getResponseText=function(){return d};this.setResponseXml=function(f){b=f};this.getResponseXml=function(){return b};var c=a;var e;var d;var b};LBS.HTTP.Response.STATUS={OK:1,ERROR:2,TIMEOUT:3};LBS.HTTP.JSON=new function(){this.parse=function(s){return _parse(s)};var _parse=function(s){try{var o=JSON.parse(s);_parse=function(s){return JSON.parse(s)};return o}catch(e){_parse=function(s){return eval("("+s+")")};return _parse(s)}}};