function wajax(url,id_resultado){this.url=url;this.termo_pesquisa=null;this.id_resultado=id_resultado;this.ajax=openAjax;this.parametros=null;this.erro=null;this.metodo="GET";this.executar=executar;this.avalia_argumento=avalia_argumento;this.add_parametros=add_parametros;this.httpStatus=httpStatus;this.carregando="<div id='carregando' align='center' style='font:bold 10px Verdana, Arial, Helvetica, sans-serif; color:#0066CC'><br><br><br><img src='img/carregando.gif' alt='' /><br><br>Carregando...<br><br><br><br></div>";this.js="js";this.add_atributo=add_atributo;};function openAjax(){if(typeof(XMLHttpRequest)!='undefined'){return new XMLHttpRequest();};var axO=['Microsoft.XMLHTTP','Msxml2.XMLHTTP','Msxml2.XMLHTTP.6.0','Msxml2.XMLHTTP.4.0','Msxml2.XMLHTTP.3.0'];for(var i=0;i<axO.length;i++){try{return new ActiveXObject(axO[i]);}catch(e){};};return null;};function executar(){var ajax=this.ajax();var resultado=document.getElementById(this.id_resultado);var carregando=this.carregando;var js=this.js;if(this.erro)resultado.innerHTML=this.erro;else{if(ajax){if(this.parametros){this.url=this.url+"?"+this.parametros;};this.url=limpa_cache(this.url);if(this.metodo=="GET"){ajax.open(this.metodo,this.url,true);}else if(this.metodo=="POST"){ajax.open(this.metodo,this.url,true);ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');ajax.setRequestHeader('Cache-Control','no-store, no-cache, must-revalidate');ajax.setRequestHeader('Cache-Control','post-check=0, pre-check=0');ajax.setRequestHeader("Pragma","no-cache");}else{this.erro='M&eacute;todo de envio inv&aacute;lido.';return resultado.innerHTML=this.erro;};ajax.onreadystatechange=function(){if(ajax.readyState==1){if(carregando!=null&&carregando!='undefined')resultado.innerHTML=carregando;};if(ajax.readyState==4){if(ajax.status==200){var texto=ajax.responseText;extraiScript(texto,js);if(texto.indexOf(" ")<0)texto=texto.replace(/\"+/g," ");texto=unescape(texto);put(texto,resultado);}else{resultado.innerHTML="Falha no carregamento."+httpStatus(ajax.status);};};};};ajax.send(null);};};function put(valor,resultado){if((typeof(resultado)).toLowerCase()=="string"){if(valor!="Falha no carregamento"){eval(resultado+'= unescape("'+escape(valor)+'")')};}else if(resultado.tagName.toLowerCase()=="input"){valor=escape(valor).replace(/\%0D\%0A/g,"");resultado.value=unescape(valor);}else if(resultado.tagName.toLowerCase()=="select"){select_innerHTML(elemento_retorno,valor)}else if(resultado.tagName){resultado.innerHTML=valor;};};function extraiScript(texto,js){var ini,pos_src,fim,codigo;var objScript=null;ini=texto.indexOf('<script',0);while(ini!=-1){var objScript=document.createElement("script");pos_src=texto.indexOf(' src',ini);ini=texto.indexOf('>',ini)+1;if(pos_src<ini&&pos_src>=0){ini=pos_src+4;fim=texto.indexOf('.',ini)+4;codigo=texto.substring(ini,fim);codigo=codigo.replace("=","").replace(" ","").replace("\"","").replace("\"","").replace("\'","").replace("\'","").replace(">","");objScript.src=codigo;}else{fim=texto.indexOf('</script>',ini);codigo=texto.substring(ini,fim);objScript.text=codigo;};document.getElementById(js).appendChild(objScript);ini=texto.indexOf('<script',fim);objScript.text=null;};};function add_atributo(nome,arg){if(this.avalia_argumento(arg)){try{eval('this.'+nome+' = \'' + arg + '\'');return true;}catch(e){this.erro='Erro ao tentar criar o atributo '+nome+' no objeto Ajax\n'+e;};};};function avalia_argumento(arg){if(arg!=null&&arg!=''&&arg!='undefined')return true;this.erro='N&atilde;o pode ser vazia';return false;};function add_parametros(nome_var,arg){if(this.avalia_argumento(arg)){if(this.parametros!=null)this.parametros+='&'+nome_var+'='+arg;else this.parametros=nome_var+'='+arg;}else{if(this.parametros!=null)this.parametros+='&'+nome_var+'='+'';else this.parametros=nome_var+'='+'';this.erro=null;};};function httpStatus(stat){switch(stat){case 0:return"Erro desconhecido de javascript";case 400:return"400: Solicita&ccedil;&atilde;o incompreensível";break;case 403:case 404:return"404: N&atilde;o foi encontrada a URL solicitada";break;case 405:return"405: O servidor n&atilde;o suporta o m&eacute;todo solicitado";break;case 500:return"500: Erro desconhecido de natureza do servidor";break;case 503:return"503: Capacidade m&aacute;xima do servidor alcançada";break;default:return"Erro "+stat+". Mais informa&ccedil;&otilde;es em http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html";break;};};function limpa_cache(aurl){var dt=new Date();if(aurl.indexOf("?")>=0){return aurl+"&"+encodeURI(Math.random()+"_"+dt.getTime());}else{return aurl+"?"+encodeURI(Math.random()+"_"+dt.getTime());};};function opacity(id,opacStart,opacEnd,millisec){var speed=Math.round(millisec/20);var timer=0;if(opacStart>opacEnd){for(i=opacStart;i>=opacEnd;i--){setTimeout("aparecer("+i+",'"+id+"')",(timer*speed));timer++;};}else if(opacStart<opacEnd){for(i=opacStart;i<=opacEnd;i++){setTimeout("aparecer("+i+",'"+id+"')",(timer*speed));timer++;};};};function aparecer(opacity,id){var object=document.getElementById(id).style;object.opacity=(opacity/100);object.MozOpacity=(opacity/100);object.KhtmlOpacity=(opacity/100);object.filter="Alpha(opacity="+opacity+")";};
