function al38AjaxFeature(al38Valor,al38Vetor,al38DivResp,al38MVetor,al38Switch,al38Local,al38Focus){
        // recebe o objeto formulario e monta o vetor de consulta para o PHP
        if(al38MVetor == '1'){
        	// estrutura montada de formulario inteiro (todos os campos)
                al38Vetor= al38MontaVetor(al38Valor, al38Vetor);
        }else if (al38MVetor == '2'){
      			al38Vetor= 	"features/cep/php/" +al38Vetor+ 
      						"?cod=" + al38Valor + 
      						"&al38CepConsulta=" +al38Switch;
        }else if(al38MVetor == '3'){
        		al38Vetor= al38Vetor+ "&al38Busca=" +al38Valor;
        		
        }else if(al38MVetor == '4'){
        		al38Vetor= al38Vetor+ "&al38BuscaLetra=" +al38Valor;
        		
        }else if(al38MVetor == '5'){
        		al38Vetor= al38Vetor+ "&al38BuscaCod=" +al38Valor;
        }
        
        if (window.XMLHttpRequest) { // para funcionar no Mozilla, Firefox e outros do mesmo padrao
                al38Resposta= new XMLHttpRequest();
        }else if(window.ActiveXObject) { // para funcionar no do Internet Explorer
            try{
                al38Resposta = new ActiveXObject("Msxml2.XMLHTTP");
            } catch(e){
                try {
                    al38Resposta = new ActiveXObject("Microsoft.XMLHTTP");
                } catch(e){}
            }
        }
        if (!al38Resposta) {
            alert('Nao pude criar uma instancia de XMLHTTP');
            return false;
        }
        
			//alert(al38Vetor);
		
        al38Resposta.open("GET", al38Vetor, true);
        document.getElementById(al38DivResp).innerHTML= '<center><div style=\"height:250px;display:table-cell;vertical-align:middle;\"><img src=\"imagens/al38Loading.gif\"></div></center>'; 
        al38Resposta.onreadystatechange= function(){ al38Resultado(al38DivResp,al38Focus); };
        al38Resposta.send(null);
}

function al38Resultado(al38DivResp,al38CampoFocus){
    if(al38Resposta.readyState == 4){
        var al38DivResposta= document.getElementById(al38DivResp);
            if(al38Resposta.responseText != ''){
                    al38DivResposta.innerHTML= al38Resposta.responseText;
	              		var c= "\"" +al38CampoFocus+ "\"";
	    				dd= ("document.getElementById(" +c+ ").focus()");
	    					eval(dd);                                         
            }else{
                    abort();
            }
    }
}

function al38MontaVetor(al38Valor,al38Vetor){
        if(document.images){
                var al38Vetor= al38Vetor + '?';
                for (i=0;i < al38Valor.length;i++){
                		var al38ObjNome= al38Valor.name;
                        var al38Obj=al38Valor.elements[i];
                        	if((al38Obj.name == 'al38Descartar') || (al38Obj.type == 'radio' && !al38Obj.checked) || (al38Obj.type == 'checkbox' && !al38Obj.checked)){
                        	   al38Vetor= al38Vetor;
                        	}else{
                               al38Vetor= al38Vetor + al38Obj.name + "=" + al38Obj.value + "&\n";
                            }
                }
        }
        return al38Vetor;
}

function al38AjaxFeatureApoio(al38VetorApoio,al38DivRespApoio){
        if (window.XMLHttpRequest) { // para funcionar no Mozilla, Firefox e outros do mesmo padrao
                al38RespostaApoio= new XMLHttpRequest();
        }else if(window.ActiveXObject) { // para funcionar no do Internet Explorer
            try{
                al38RespostaApoio = new ActiveXObject("Msxml2.XMLHTTP");
            } catch(e){
                try {
                    al38RespostaApoio = new ActiveXObject("Microsoft.XMLHTTP");
                } catch(e){}
            }
        }
        if (!al38RespostaApoio) {
            alert('Nao pude criar uma instancia de XMLHTTP');
            return false;
        }

        // prepara a nova consulta com os valores comuns a todos os links de acesso
        al38VetorApoio= "indexWorksAjaxApoio.php?" +al38VetorApoio.substring(19);

        al38RespostaApoio.open("GET", al38VetorApoio, true);
        al38RespostaApoio.onreadystatechange= function(){ al38ResultadoApoio(al38DivRespApoio); };
        al38RespostaApoio.send(null);
}

function al38ResultadoApoio(al38DivRespApoio){
        if(al38RespostaApoio.readyState == 4){
                var al38DivRespostaApoio= document.getElementById(al38DivRespApoio);
                        if(al38RespostaApoio.responseText != ''){
                                al38DivRespostaApoio.innerHTML= al38RespostaApoio.responseText;
                        }else{
                                abort();
                        }
        }
}

function al38AjaxM(al38Vetor,al38DivResp,al38Posicao,al38Extra){
        if (window.XMLHttpRequest) { // para funcionar no Mozilla, Firefox e outros do mesmo padrao
                al38Resposta[al38Posicao]= new XMLHttpRequest();
                
        }else if(window.ActiveXObject) { // para funcionar no do Internet Explorer
            try{
                al38Resposta[al38Posicao]= new ActiveXObject("Msxml2.XMLHTTP");
            }catch(e){
                try {
               		al38Resposta[al38Posicao]= ActiveXObject("Microsoft.XMLHTTP");
                } catch(e){}
            }
        }
        
        if (!al38Resposta[al38Posicao]) {
            alert('Nao pude criar uma instancia de XMLHTTP');
            return false;
        }

      	if(al38Extra != ''){
   			al38Vetor= al38Vetor+ "&al38Texto=" +al38Extra;
        }
      
        al38Resposta[al38Posicao].open("GET", al38Vetor, true);
        al38Resposta[al38Posicao].onreadystatechange= function(){ al38ResultadoCli(al38DivResp,al38Posicao); };
        al38Resposta[al38Posicao].send(null);
}

function al38ResultadoCli(al38DivResp,al38Posicao){
        if(al38Resposta[al38Posicao].readyState == 4){
                var al38DivResposta= document.getElementById(al38DivResp);
                        if(al38Resposta[al38Posicao].responseText != ''){
                                al38DivResposta.innerHTML= al38Resposta[al38Posicao].responseText;
                        }else{
                                abort();
                        }
        }
}

function al38ObjetoAjax(al38UrlChamada, al38ChamadaRetorno,al38Divisao) {
  var al38ObjetoNovo=this;      
  this.al38Atualizando = false;
  this.abort = function() {
    if (al38ObjetoNovo.al38Atualizando) {
      al38ObjetoNovo.al38Atualizando=false;
      al38ObjetoNovo.al38Objeto.abort();
      al38ObjetoNovo.al38Objeto= null;
    }
  }
  
  this.al38Atualiza = function(al38Vetor,al38Method) { 
    if (al38ObjetoNovo.al38Atualizando) { return false; }
    al38ObjetoNovo.al38Objeto = null;                          
    if (window.XMLHttpRequest) {              
      al38ObjetoNovo.al38Objeto=new XMLHttpRequest();              
    }else{                                  
      al38ObjetoNovo.al38Objeto=new ActiveXObject("Microsoft.XMLHTTP");
    }                                             
    if (al38ObjetoNovo.al38Objeto == null) {                             
      return false;                               
    } else {
      al38ObjetoNovo.al38Objeto.onreadystatechange= function() {  
        if (al38ObjetoNovo.al38Objeto.readyState == 4) {             
          al38ObjetoNovo.al38Atualizando= false;                
          al38ObjetoNovo.al38Retorno(al38ObjetoNovo.al38Objeto.responseText, al38ObjetoNovo.al38Objeto.status, al38ObjetoNovo.al38Objeto.responseXML);        
          al38ObjetoNovo.al38Objeto= null;                                         
        }                                                      
      }                                                        
      al38ObjetoNovo.al38Atualizando = new Date();                              
      if (/post/i.test(al38Method)) {
        var uri=urlCall+'?'+al38ObjetoNovo.al38Atualizando.getTime();
        al38ObjetoNovo.al38Objeto.open("POST", uri, true);
        al38ObjetoNovo.al38Objeto.setRequestHeader('Content-Type','text/xml');         
        al38ObjetoNovo.al38Objeto.setRequestHeader("encoding", "ISO-8859-1");        
        al38ObjetoNovo.al38Objeto.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

        al38ObjetoNovo.al38Objeto.send(al38Vetor);
      } else {
        var uri=urlCall+'?'+al38Vetor+'&timestamp='+(al38ObjetoNovo.al38Atualizando.getTime()); 
        al38ObjetoNovo.al38Objeto.open("GET", uri, true);  
        al38ObjetoNovo.al38Objeto.setRequestHeader('Content-Type','text/xml');  
        al38ObjetoNovo.al38Objeto.setRequestHeader("encoding", "ISO-8859-1");
        al38ObjetoNovo.al38Objeto.setRequestHeader("Content-type", "application/x-www-form-urlencoded");                         

        al38ObjetoNovo.al38Objeto.send(null);    
        	                                   
      }              
      return true;                                             
    }                                                                           
  }
  var urlCall = al38UrlChamada;        
  this.al38Retorno = al38ChamadaRetorno || function () { };
}

function al38FinalizaObjeto(responseTxt, responseStat) {
  alert(responseStat+' - '+responseTxt);
}

function al38AjaxN(al38Url,al38Div,al38Dados,al38Metodo,al38CampoFocus){	
	var al38FazAjax = new al38ObjetoAjax(al38Url,al38FinalizaObjeto);
    al38FazAjax.al38Retorno = function (responseTxt, responseStat) {
      //o retorno dos dados deverá ser por aqui
    	document.getElementById(al38Div).innerHTML= responseTxt;
      		var c= "\"" +al38CampoFocus+ "\"";
				dd= ("document.getElementById(" +c+ ").focus()");
					eval(dd);     		
    }
    
    // faz a chamada dos dados a serem enviados ao apache
    // al38FazAjax.al38Atualiza('somente dados depois ?','metodo [GET|POST]');
		al38Dados += "&al38TimeSend=" + Math.random();
		document.getElementById(al38Div).innerHTML= '<center><div style=\"height:250px;display:table-cell;vertical-align:middle;\"><img src=\"imagens/al38Loading.gif\"></div></center>';  
    	al38FazAjax.al38Atualiza(al38Dados,al38Metodo,al38Div);	
}


