
function Ajax(){this.test=function(){if(this.init()){return true;}
else{return false;}}
this.init=function(){var req;try{req=new ActiveXObject("Microsoft.XMLHTTP");}
catch(e){try{req=new ActiveXObject("Msxml2.XMLHTTP");}
catch(ex){try{req=new XMLHttpRequest();}
catch(exc){req=null;}}}
return req;}
this.open=function(pag,cb,cberror){var resp;var silentMode=this.silentModevar;var loaderDefObjeto=this.loaderDefObjeto;var loaderDefValor=this.loaderDefValor;var loaderDefTipo,loaderDefValorOld;if(typeof(loaderDefObjeto)=="string"){loaderDefObjeto=document.getElementById(loaderDefObjeto);}
if(typeof(loaderDefObjeto)=="object"){if(loaderDefObjeto.tagName){switch(loaderDefObjeto.tagName){case"P","SPAN":loaderDefTipo="changetext";break;case"DIV":loaderDefTipo="showhide";break;case"SELECT":loaderDefTipo="changeselect";break;}}else{if(loaderDefObjeto.status==""||loaderDefObjeto.status!=""){loaderDefTipo="changestatus";}}}
function loaderStart(){var obj,valor;obj=loaderDefObjeto;switch(loaderDefTipo){case"showhide":if(obj){obj.style.display="";}
break;case"changestatus":if(obj){loaderDefValorOld=obj.status;obj.status=loaderDefValor;}
break;case"changetext":if(obj){loaderDefValorOld=obj.innerText;obj.innerText=loaderDefValor;}
break;case"changeselect":if(obj){loaderDefValor=obj.options[0].text;valor=obj.options[0].value;obj.options.length=0;obj.options.length++;obj.options[0].text=loaderDefValor;obj.options[0].value=valor;}
break;}}
function loaderEnd(){var obj;obj=loaderDefObjeto;if(loaderDefObjeto){switch(loaderDefTipo){case"showhide":if(obj){obj.style.display="none";}
break;case"changestatus":if(obj){obj.status=loaderDefValorOld;}
break;case"changetext":if(obj){obj.innerText=loaderDefValorOld;}
break;case"changeselect":if(obj){obj.options[0].text=loaderDefValor;}
break;}}}
if(ajax){loaderStart();var sendCont=this.open.arguments[3]?this.open.arguments[3]:null;var Agora=new Date();var x,codeA;if(pag.indexOf('?')>0)
pag=pag+"&ts="+Agora.getTime();else
pag=pag+"?ts="+Agora.getTime();if(sendCont){ajax.open("POST",pag,true);ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");}else{ajax.open("GET",pag,true);}
ajax.onreadystatechange=function(){if(ajax.readyState==4){if(ajax.status==200){var resp=ajax.responseText;if(!resp){return false;}
if(cb){eval(cb);}
loaderEnd();}else{loaderEnd();if(!silentMode){alert("N�o foi poss�vel restaurar informa��es:\n"+ajax.statusText);}
if(cberror){eval(cberror);}}}}
ajax.send(sendCont);}}
this.send=function(f,cb,cberror){var acao=f.action;var metodo=f.method;if(!acao){alert("Erro: o valor action do formulario n�o foi definido");return false;}
if(!metodo){alert("Erro: o m�todo do formul�rio n�o foi definido");return false;}else
metodo=metodo.toLowerCase();var send=new Array();var elementos=f.elements;for(var i=0;i<elementos.length;i++){var e=elementos[i];if(!e.name)
continue;if(e.disabled)
continue;var nVal="";for(var x=0;x<e.value.length;x++){codeA=e.value.charCodeAt(x);codeA=this.dec2hex(codeA);nVal+="%"+codeA;}
var tipo=e.type.toLowerCase();if(tipo!="checkbox"&&tipo!="radio")
send[send.length]=e.name+"="+nVal;else if(e.checked)
send[send.length]=e.name+"="+nVal;}
send=send.join("&");if(metodo=="post")
this.open(acao,cb,cberror,send);else
this.open(acao+"?"+send,cb,cberror);return false;}
this.loader=function(objeto,valor){this.loaderDefObjeto=objeto;this.loaderDefValor=valor;}
this.dec2hex=function(dec){var hex_chars="0123456789ABCDEF";var n1=hex_chars.charAt(Math.floor(dec/16));var n2=hex_chars.charAt(dec%16);return n1+n2;}
this.responseType=function(){return ajax.getResponseHeader("Content-Type");}
this.responseXML=function(){return ajax.responseXML;}
this.responseText=function(){return ajax.responseText;}
this.statusText=function(){return ajax.statusText;}
this.abort=function(){return ajax.abort();}
this.getAllResponseHeaders=function(){return ajax.getAllResponseHeaders();}
this.getResponseHeader=function(item){return ajax.getResponseHeader(item);}
this.silentMode=function(valor){this.silentModevar=valor;}
var ajax=this.init();}