// JavaScript Document

var terminouFab = false;
var terminouMod = false;

function callWS(valor, func) {
      //verifica se o browser tem suporte a ajax
	  try {
         ajax = new ActiveXObject("Microsoft.XMLHTTP");
      } 
      catch(e) {
         try {
            ajax = new ActiveXObject("Msxml2.XMLHTTP");
         }
	     catch(ex) {
            try {
			//	netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
               ajax = new XMLHttpRequest();
            }
	        catch(exc) {
				try {
    				netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
					ajax = new XMLHttpRequest();
				   } catch (ep) {
    				alert("Permission UniversalBrowserRead denied."); 
					alert("Esse browser não tem recursos para uso do Ajax");
               ajax = null;
            }
				   }
	             
         }
      }
	  //se tiver suporte ajax
	  if(ajax) {
	     //deixa apenas o elemento 1 no option, os outros são excluídos
		 //document.forms[0].listCidades.options.length = 1;
	     
		// idOpcao  = document.getElementById("opcoes");
		switch (func){
			case "modelosNovos":
				terminouFab = false;
				ajax.open("GET", "/soap/client_interno.php"+valor);
		 		ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		 
		 		ajax.onreadystatechange = function() {
          		  //enquanto estiver processando...emite a msg de carregando
					if(ajax.readyState == 1) {
			   			//wait.innerHTML = "Carregando...!" + func;   
						//wait.style.visibility = "visible";
						
						removeOption("cmb_modelo_novo");						
						appendOptionLast("Carregando...", "0", "cmb_modelo_novo");
						removeOption("cmb_versao_ano_novo");
						appendOptionLast("Ano", "0", "cmb_versao_ano_novo");
						
			        }
					//após ser processado - chama função processXML que vai varrer os dados
		            if(ajax.readyState == 4 ) {
						if(ajax.responseXML) {
					   	 // document.debug.innerHTML = ajax.responseXML;
				 		//	wait.style.visibility = "hidden";
						//	alert("DBG 004 (" + ajax.responseXML.documentElement.firstChild.nodeName + ")");
			      			processXMLModeloNovo(ajax.responseXML);
							terminouFab = true;
							
			   			}
			  			else {
			       		//caso não seja um arquivo XML emite a mensagem abaixo
				   			//idOpcao.innerHTML = "Não é um XML";
							alert("problemas no retorno do server feirao01ab");
			   			}
            		}
					}
							 //passa o código do estado escolhido
					
				     var params = "estado="+valor;
			         ajax.send(params);
				break;
			
			case "modelosUsados":
				terminouFab = false;
				ajax.open("GET", "/soap/client_interno.php"+valor);
		 		ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		 
		 		ajax.onreadystatechange = function() {
          		  //enquanto estiver processando...emite a msg de carregando
					if(ajax.readyState == 1) {
			   			//wait.innerHTML = "Carregando...!" + func;   
						//wait.style.visibility = "visible";
						
						removeOption("cmb_modelo_usado");
						appendOptionLast("Carregando...", "0", "cmb_modelo_usado");
						removeOption("cmb_versao_ano_usado");
						appendOptionLast("Ano", "0", "cmb_versao_ano_usado");
			        }
					//após ser processado - chama função processXML que vai varrer os dados
		            if(ajax.readyState == 4 ) {
						if(ajax.responseXML) {
					   	 // document.debug.innerHTML = ajax.responseXML;
				 		//	wait.style.visibility = "hidden";
						//	alert("DBG 004 (" + ajax.responseXML.documentElement.firstChild.nodeName + ")");
			      			processXMLModeloUsado(ajax.responseXML);
							terminouFab = true;
							
			   			}
			  			else {
			       		//caso não seja um arquivo XML emite a mensagem abaixo
				   			//idOpcao.innerHTML = "Não é um XML";
							alert("problemas no retorno do server feirao01ab");
			   			}
            		}
					}
							 //passa o código do estado escolhido
					
				     var params = "estado="+valor;
			         ajax.send(params);
				break;
			
			case "versaoAnoUsados":
				terminouFab = false;
				ajax.open("GET", "/soap/client_interno.php"+valor);
		 		ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		 
		 		ajax.onreadystatechange = function() {
          		  //enquanto estiver processando...emite a msg de carregando
					if(ajax.readyState == 1) {
			   			//wait.innerHTML = "Carregando...!" + func;   
						//wait.style.visibility = "visible";
						
						removeOption("cmb_versao_ano_usado");
						appendOptionLast("Carregando...", "0", "cmb_versao_ano_usado");
						
			        }
					//após ser processado - chama função processXML que vai varrer os dados
		            if(ajax.readyState == 4 ) {
						if(ajax.responseXML) {
					   	 // document.debug.innerHTML = ajax.responseXML;
				 		//	wait.style.visibility = "hidden";
						//	alert("DBG 004 (" + ajax.responseXML.documentElement.firstChild.nodeName + ")");
			      			processXMLVersaoAnoUsado(ajax.responseXML);
							terminouFab = true;
							
			   			}
			  			else {
			       		//caso não seja um arquivo XML emite a mensagem abaixo
				   			//idOpcao.innerHTML = "Não é um XML";
							alert("problemas no retorno do server feirao01ab");
			   			}
            		}
					}
							 //passa o código do estado escolhido
					
				     var params = "estado="+valor;
			         ajax.send(params);
				break;
         		

      		case "versaoAnoNovos":
				terminouFab = false;
				ajax.open("GET", "/soap/client_interno.php"+valor);
		 		ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		 
		 		ajax.onreadystatechange = function() {
          		  //enquanto estiver processando...emite a msg de carregando
					if(ajax.readyState == 1) {
			   			//wait.innerHTML = "Carregando...!" + func;   
						//wait.style.visibility = "visible";
						
						removeOption("cmb_versao_ano_novo");
						appendOptionLast("Carregando...", "0", "cmb_versao_ano_novo");
						
			        }
					//após ser processado - chama função processXML que vai varrer os dados
		            if(ajax.readyState == 4 ) {
						if(ajax.responseXML) {
					   	 // document.debug.innerHTML = ajax.responseXML;
				 		//	wait.style.visibility = "hidden";
						//	alert("DBG 004 (" + ajax.responseXML.documentElement.firstChild.nodeName + ")");
			      			processXMLVersaoAnoNovo(ajax.responseXML);
							terminouFab = true;
							
			   			}
			  			else {
			       		//caso não seja um arquivo XML emite a mensagem abaixo
				   			//idOpcao.innerHTML = "Não é um XML";
							alert("problemas no retorno do server feirao01ab");
			   			}
            		}
					}
							 //passa o código do estado escolhido
					
				     var params = "estado="+valor;
			         ajax.send(params);
				break;
 
			default:
				alert("Não existe tal função.");
		
	  }	 
  }
}
		
		
   
   function processXML(obj){
      //pega a tag cidade
	  
      var dataArray   = obj.getElementsByTagName("veiculo");
      
	  //total de elementos contidos na tag cidade
	  if(dataArray.length > 0) {
	     //percorre o arquivo XML paara extrair os dados
		 var result = "";
         for(var i = 0 ; i < dataArray.length ; i++) {
            var item = dataArray[i];
			//contéudo dos campos no arquivo XML

			var idAnuncio = item.getElementsByTagName("id_anuncio")[0].firstChild.nodeValue;
			var foto =  item.getElementsByTagName("foto")[0].firstChild.nodeValue;
			var marca =  item.getElementsByTagName("marca")[0].firstChild.nodeValue;
			var modelo =  item.getElementsByTagName("modelo")[0].firstChild.nodeValue;
			var versao =  item.getElementsByTagName("versao")[0].firstChild.nodeValue;
			var ano =  item.getElementsByTagName("ano")[0].firstChild.nodeValue;
			var preco =  item.getElementsByTagName("preco")[0].firstChild.nodeValue;
			//alert("antes ");
			
			
			
	       // idOpcao.innerHTML = "--Selecione uma das opções abaixo--";
			
			//cria um novo option dinamicamente  
			result = result + "<BR>" + fmtStrWebService(foto) + " - " +  fmtStrWebService(versao);
		 }
		// debug.innerHTML = result;
	  }
	  else {
	    //caso o XML volte vazio, printa a mensagem abaixo
		idOpcao.innerHTML = "tah vazio! (" + dataArray.length + ")";
	  }	  
   }
   
   
   
   function processXMLModeloNovo(obj){
      //pega a tag cidade
	  
      var dataArray   = obj.getElementsByTagName("modelo");
    //  alert("DBG 001 (" + dataArray + ")");
	       // alert("DBG 002 (" + obj.firstChild.nodeName + ")");
			      //alert("DBG 003 (" + dataArray.firstChild.nodeName + ")");
	  //total de elementos contidos na tag cidade
	  if(dataArray.length > 0) {
	     //percorre o arquivo XML paara extrair os dados
		 removeOption("cmb_modelo_novo");
		 appendOptionLast("Modelo", "0", "cmb_modelo_novo");
		 var result = "";
         for(var i = 0 ; i < dataArray.length ; i++) {
            var item = dataArray[i];
			//contéudo dos campos no arquivo XML

			var idModelo = item.getElementsByTagName("id_modelo")[0].firstChild.nodeValue;
			var modelo =  item.getElementsByTagName("nome")[0].firstChild.nodeValue;
			
			//alert("antes ");
			modelo = fmtStrWebService(modelo);
			appendOptionLast(modelo, idModelo, "cmb_modelo_novo");
			
			
	       // idOpcao.innerHTML = "--Selecione uma das opções abaixo--";
			
			//cria um novo option dinamicamente  
			//result = result + "<BR>" + fmtStrWebService(foto) + " - " +  fmtStrWebService(versao);
		 }
		// debug.innerHTML = result;
	  }
	  else {
	    //caso o XML volte vazio, printa a mensagem abaixo
		alert("Problemas de comunicação com nossos servidores. \n JS002(" + dataArray.length + ")");
	  }	  
   }
   
   
  function processXMLModeloUsado(obj){
      //pega a tag cidade
	  
      var dataArray   = obj.getElementsByTagName("modelo");
    //  alert("DBG 001 (" + dataArray + ")");
	       // alert("DBG 002 (" + obj.firstChild.nodeName + ")");
			      //alert("DBG 003 (" + dataArray.firstChild.nodeName + ")");
	  //total de elementos contidos na tag cidade
	  if(dataArray.length > 0) {
	     //percorre o arquivo XML paara extrair os dados
		 removeOption("cmb_modelo_usado");
		 appendOptionLast("Modelo", "0", "cmb_modelo_usado");
		 var result = "";
         for(var i = 0 ; i < dataArray.length ; i++) {
            var item = dataArray[i];
			//contéudo dos campos no arquivo XML

			var idModelo = item.getElementsByTagName("id_modelo")[0].firstChild.nodeValue;
			var modelo =  item.getElementsByTagName("nome")[0].firstChild.nodeValue;
			
			//alert("antes ");
			modelo = fmtStrWebService(modelo);
			appendOptionLast(modelo, idModelo, "cmb_modelo_usado");
			
			
	       // idOpcao.innerHTML = "--Selecione uma das opções abaixo--";
			
			//cria um novo option dinamicamente  
			//result = result + "<BR>" + fmtStrWebService(foto) + " - " +  fmtStrWebService(versao);
		 }
		// debug.innerHTML = result;
	  }
	  else {
	    //caso o XML volte vazio, printa a mensagem abaixo
		alert("Problemas de comunicação com nossos servidores. \n JS003(" + dataArray.length + ")");
	  }	  
   }
    
   
   
   function processXMLVersaoAnoUsado(obj){
      //pega a tag cidade
	  
      var dataArray   = obj.getElementsByTagName("versao_ano");
    //  alert("DBG 001 (" + dataArray + ")");
	       // alert("DBG 002 (" + obj.firstChild.nodeName + ")");
			      //alert("DBG 003 (" + dataArray.firstChild.nodeName + ")");
	  //total de elementos contidos na tag cidade
	  if(dataArray.length > 0) {
	     //percorre o arquivo XML paara extrair os dados
		 removeOption("cmb_versao_ano_usado");
		 appendOptionLast("Ano", "0", "cmb_versao_ano_usado");
		 var result = "";
         for(var i = 0 ; i < dataArray.length ; i++) {
            var item = dataArray[i];
			//contéudo dos campos no arquivo XML

			var ano = item.getElementsByTagName("ano")[0].firstChild.nodeValue;
			
			
			//alert("antes ");
			ano = fmtStrWebService(ano);
			appendOptionLast(ano, ano, "cmb_versao_ano_usado");
			
			
	       // idOpcao.innerHTML = "--Selecione uma das opções abaixo--";
			
			//cria um novo option dinamicamente  
			//result = result + "<BR>" + fmtStrWebService(foto) + " - " +  fmtStrWebService(versao);
		 }
		// debug.innerHTML = result;
	  }
	  else {
	    //caso o XML volte vazio, printa a mensagem abaixo
		alert("Problemas de comunicação com nossos servidores. \n JS003(" + dataArray.length + ")");
	  }	  
   }
   
   
   function processXMLVersaoAnoNovo(obj){
      //pega a tag cidade
	  
      var dataArray   = obj.getElementsByTagName("versao_ano");
    //  alert("DBG 001 (" + dataArray + ")");
	       // alert("DBG 002 (" + obj.firstChild.nodeName + ")");
			      //alert("DBG 003 (" + dataArray.firstChild.nodeName + ")");
	  //total de elementos contidos na tag cidade
	  if(dataArray.length > 0) {
	     //percorre o arquivo XML paara extrair os dados
		 removeOption("cmb_versao_ano_novo");
		 appendOptionLast("Ano", "0", "cmb_versao_ano_novo");
		 var result = "";
         for(var i = 0 ; i < dataArray.length ; i++) {
            var item = dataArray[i];
			//contéudo dos campos no arquivo XML

			var ano = item.getElementsByTagName("ano")[0].firstChild.nodeValue;
			
			
			//alert("antes ");
			ano = fmtStrWebService(ano);
			appendOptionLast(ano, ano, "cmb_versao_ano_novo");
			
			
	       // idOpcao.innerHTML = "--Selecione uma das opções abaixo--";
			
			//cria um novo option dinamicamente  
			//result = result + "<BR>" + fmtStrWebService(foto) + " - " +  fmtStrWebService(versao);
		 }
		// debug.innerHTML = result;
	  }
	  else {
	    //caso o XML volte vazio, printa a mensagem abaixo
		alert("Problemas de comunicação com nossos servidores. \n JS003(" + dataArray.length + ")");
	  }	  
   }


function fmtStrWebService(strVar) {
	strVar = unescape(strVar.valueOf());
	var tkn = " ";
	strVar = strVar.replace(/\+/g , tkn);
	return strVar;
}

function appendOptionLast(pLbl, pVal, pObj)
{
  var elOptNew = document.createElement('option');
  elOptNew.text = pLbl;
  elOptNew.value = pVal;
  var elSel = document.getElementById(pObj);

  try {
    elSel.add(elOptNew, null); // standards compliant; doesn't work in IE
  }
  catch(ex) {
    elSel.add(elOptNew); // IE only
  }
}

function removeOption(pObj)
{
  var elSel = document.getElementById(pObj);
  while (elSel.length > 0)
  {
    elSel.remove(elSel.length - 1);
  }
}

function printHTML(pObj,pValue) {
	document.getElementById(pObj).innerHTML = 	pValue;
}


function trocaOpcao(valor, objSel) {
	objSel = document.getElementById(objSel);
    for (i=0; i < objSel.length; i++){
    qtd = valor.length;
        if (objSel.options[i].value == valor) {
        objSel.selectedIndex = i;
            break;
        }
    }
}