function Ajax(){this.req=null;this.url=null;this.status=null;this.statusText="";this.method="GET";this.async=true;this.dataPayload=null;this.readyState=null;this.responseText=null;this.responseXML=null;this.handleResp=null;this.responseFormat="text",this.mimeType=null;this.headers=[];this.init=function(){var B=0;var A=[function(){return new XMLHttpRequest()},function(){return new ActiveXObject("Msxml2.XMLHTTP")},function(){return new ActiveXObject("Microsoft.XMLHTTP")}];while(!this.req&&(B<A.length)){try{this.req=A[B++]()}catch(C){}}return true};this.doGet=function(B,A,C){this.url=B;this.handleResp=A;this.responseFormat=C||"text";this.doReq()};this.doPost=function(B,C,A,D){this.url=B;this.dataPayload=C;this.handleResp=A;this.responseFormat=D||"text";this.method="POST";this.doReq()};this.doReq=function(){var B=null;var C=null;var A=[];if(!this.init()){alert("No se pudo crear el Objeto XmlHttpRequest.");return }C=this.req;C.open(this.method,this.url,this.async);if(this.method=="POST"){this.req.setRequestHeader("Content-Type","application/x-www-form-urlencoded")}B=this;C.onreadystatechange=function(){var D=null;B.readyState=C.readyState;if(C.readyState==4){B.status=C.status;B.statusText=C.statusText;B.responseText=C.responseText;B.responseXML=C.responseXML;switch(B.responseFormat){case"text":D=B.responseText;break;case"xml":D=B.responseXML;break;case"object":D=C;break}if(B.status>199&&B.status<300){if(!B.handleResp){alert("No response handler defined for this XMLHttpRequest object.");return }else{B.handleResp(D)}}else{B.handleErr(D)}}};C.send(this.dataPayload)};this.abort=function(){if(this.req){this.req.onreadystatechange=function(){};this.req.abort();this.req=null}};this.handleErr=function(){var A;try{A=window.open("","errorWin");A.document.body.innerHTML=this.responseText}catch(B){alert("Un error a ocurrido,puede que este error sea causado por tu bloqueador de pop-up.\nPor favor habilita todos los pop-up para este sitio.")}};this.setMimeType=function(A){this.mimeType=A};this.setHandlerResp=function(A){this.handleResp=A};this.setHandlerErr=function(A){this.handleErr=A};this.setHandlerBoth=function(A){this.handleResp=A;this.handleErr=A};this.setRequestHeader=function(B,A){this.headers.push(B+": "+A)}};
