// Script para a realização da Busca Instantanêa com Ajax
// Por Leandro Vieira Pinho, colunista iMasters (Dreamweaver)
var http_request = false;

// Função para iniciarmos o Ajax no browser do cliente.
function openAjax() {

var ajax;

try{
    ajax = new XMLHttpRequest(); // XMLHttpRequest para browsers decentes, como: Firefox, Safari, dentre outros.
}catch(ee){
    try{
        ajax = new ActiveXObject("Msxml2.XMLHTTP"); // Para o IE da MS
    }catch(e){
        try{
            ajax = new ActiveXObject("Microsoft.XMLHTTP"); // Para o IE da MS
        }catch(E){
            ajax = false;
        }
    }
}
return ajax;
}

// fCarregaDivAjax *************************
function fCarregaDivAjax(url, campo){
	if(document.getElementById) { 
		var exibeResultado = document.getElementById(campo); 
		var ajax = openAjax(); 
		//window.open(url)
		ajax.open("GET", url, true);
		ajax.onreadystatechange = function() {
			if(ajax.readyState == 1) { 
				exibeResultado.innerHTML = '<table width="99%" cellspacing="0" cellpadding="0"><tr><td width="18%" class="texto" style="height: 30px"></td><td class="texto" style="height: 30px"><strong>Carregando...</strong></td></tr></table>';
			}
			if(ajax.readyState == 4) { 
				if(ajax.status == 200) {
					var resultado = ajax.responseText; 
					resultado = resultado.replace(/\+/g," "); 
					resultado = unescape(resultado);
					exibeResultado.innerHTML = resultado;
					if(eval(document.getElementById("menuAbas")))
						document.getElementById("menuAbas").style.display = "none";
				} else {
					exibeResultado.innerHTML = "";
				}
			}
		}
		ajax.send(null); 
	}
}

// fCarregaDivConteudoAjax *************************
function fCarregaDivConteudoAjax(url, campo){
	if(document.getElementById) { 
		var exibeResultado = document.getElementById(campo); 
		var ajax = openAjax(); 
		//window.open(url)
		ajax.open("GET", url, true);
		ajax.onreadystatechange = function() {
			if(ajax.readyState == 1) { 
				exibeResultado.innerHTML = '<table width="99%" cellspacing="0" cellpadding="0"><tr><td width="18%" class="texto" style="height: 30px"></td><td class="texto" style="height: 30px"><strong>Carregando...</strong></td></tr></table>';
			}
			if(ajax.readyState == 4) { 
				if(ajax.status == 200) {
					var resultado = ajax.responseText; 
					resultado = resultado.replace(/\+/g," "); 
					resultado = unescape(resultado);
					exibeResultado.innerHTML = resultado;
				} else {
					exibeResultado.innerHTML = "";
				}
			}
		}
		ajax.send(null); 
	}
}

// fCarregaDivAjax2 Apenas usado para o Passo 3************************
function fCarregaDivAjax2(url, campo){
	if(document.getElementById) { 
		var exibeResultado = document.getElementById(campo); 
		var ajax = openAjax(); 
		//window.open(url);
		ajax.open("GET", url, true);
		ajax.onreadystatechange = function() {
			if(ajax.readyState == 1) { 
				exibeResultado.innerHTML = '<table width="99%" cellspacing="0" cellpadding="0"><tr><td width="18%" class="texto" style="height: 30px"></td><td class="texto" style="height: 30px"><strong>Carregando...</strong></td></tr></table>';
			}
			if(ajax.readyState == 4) { 
				if(ajax.status == 200) {
					var resultado = ajax.responseText; 
					resultado = resultado.replace(/\+/g," "); 
					resultado = unescape(resultado);
					var partes = resultado.split("***");
					exibeResultado.innerHTML = partes[0];
					if(partes[1] == ""){
						document.getElementById("passo1_desabilitado").style.display = "none";
						document.getElementById("cab_menu_passo2").className = "cab_menu_passo2_desat";
						document.getElementById("menu_passo2").className = "menu_passo2_desativado";
						document.getElementById("cab_menu_passo3").className = "cab_menu_passo3_ativo";
						document.getElementById("menu_passo3").className = "menu_passo3_ativo";
						document.getElementById("prog_menu_passo4").innerHTML = "<br /><img src='img_site/balao_Passo3.jpg' alt='Passe pelo passo 3 para habilitar o passo 4' style='padding-left:20px;' /><br /><br />";
						fBloqueiaPasso2();
					}
					focoLogin();
				} else {
					exibeResultado.innerHTML = "";
				}
			}
		}
		ajax.send(null); 
	}
}

//Grava os viajantes e os pedidos usando o metodo POST
//*********************************************************************
//*********************************************************************
 function makePOSTRequest(url, parameters) {
		http_request = false;
		if (window.XMLHttpRequest) { // Mozilla, Safari,...
			 http_request = new XMLHttpRequest();
			 if (http_request.overrideMimeType) {
				// set type accordingly to anticipated content type
					//http_request.overrideMimeType('text/xml');
					http_request.overrideMimeType('text/html');
			 }
		} else if (window.ActiveXObject) { // IE
			 try {
					http_request = new ActiveXObject("Msxml2.XMLHTTP");
			 } catch (e) {
					try {
						 http_request = new ActiveXObject("Microsoft.XMLHTTP");
					} catch (e) {}
			 }
		}
		if (!http_request) {
			 alert('Cannot create XMLHTTP instance');
			 return false;
		}
		
		http_request.onreadystatechange = alertContents;
		http_request.open('POST', url, true);
		http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http_request.setRequestHeader("Content-length", parameters.length);
		http_request.setRequestHeader("Connection", "close");
		http_request.setRequestHeader("charset","ISO-8859-1");
		http_request.setRequestHeader("Encoding","ISO-8859-1");
		http_request.send(parameters);
 }

 function alertContents() {
		if (http_request.readyState == 4) {
			 if (http_request.status == 200) {
					result = http_request.responseText;
					document.getElementById('menu_passo4').innerHTML = result.replace('%%%','€'); 
					fBloqueiaPasso3();
					document.getElementById("prog_passo1_desabilitado").innerHTML = "";
					//document.getElementById("passo1_desabilitado").className = "passo1_sem_acao";
					document.getElementById("menu_passo4").className = "menu_passo4_ativo";
					document.getElementById("cab_menu_passo4").className = "cab_menu_passo4_ativo";
			 } else {
					alert("Não foi possível completar a operação.");
			 }
		}
 }
 
 function get(acao) {
	//var poststr = "sAcao=PASSO4";
	var poststr = "sAcao="+escape( acao );
			poststr += "&A014_cod_plano=" + escape( document.form1.A014_cod_plano.value );
			poststr += "&A027_qtd_viajante=" + escape( document.form1.A027_qtd_viajante.value );
			poststr += "&A027_dat_inicial=" + escape( document.form1.A027_dat_inicial.value );
			poststr += "&A027_dat_final=" + escape( document.form1.A027_dat_final.value );
			poststr += "&cod_viajantes=" + escape( document.form1.cod_viajantes.value );
			poststr += "&dados_viajantes=" + escape( document.form1.dados_viajantes.value );
			poststr += "&A027_cidade_destino=" + escape( document.form1.A027_cidade_destino.value );
			poststr += "&A027_obs_pedido=" + escape( document.form1.A027_obs_pedido.value );
		
		if(( acao == "PASSO4" ) || ( acao == "PASSO4-EMAIL" )){
			makePOSTRequest('buscaInstantanea.asp', poststr);
		}
		else{
			var url = "buscaInstantanea.asp?";
			fVerificaPasso4(url, poststr);
		}
		
		//window.open('buscaInstantanea.asp?'+poststr);
 }
//*********************************************************************
//*********************************************************************

// fCarregaDivConteudoAjax *************************
function fVerificaPasso4(url, getstr){
	var ajax = openAjax(); 
	//window.open(url+getstr)
	ajax.open("GET", url+getstr, true);
	ajax.onreadystatechange = function() {
		if(ajax.readyState == 4) { 
			if(ajax.status == 200) {
				var resultado = ajax.responseText; 
				resultado = resultado.replace(/\+/g," "); 
				resultado = unescape(resultado);
				if ( resultado == "SIM" ) { // retornou que existe um voucher
					//if (window.confirm("Atenção! \nJá existe outro voucher emitido no sistema com dados parecidos \ncom este que você deseja criar (mesmo nome, idade e destino). \nDeseja realmente criar este novo voucher ?")){
						get("PASSO4-EMAIL");
					//}
					//else{
					//	window.location = "default.asp";
					//}
				}
				else{
					get("PASSO4");
				}
			} else {
				get("PASSO4");
			}
		}
	}
	ajax.send(null); 
}

//*********************************************************************
//*********************************************************************

// Função que realiza validação dos dados do viajante
function buscaInstantanea(url, nome, tipo) {
	var sNome = nome;
	var sUrl  = url;	
	var sTipo = tipo;
	var ajax = openAjax(); // Inicia o Ajax.
	//window.open(sUrl); // Envia o termo da busca como uma querystring, nos possibilitando o filtro na busca.
	ajax.open("GET", sUrl, true); // Envia o termo da busca como uma querystring, nos possibilitando o filtro na busca.

	ajax.onreadystatechange = function() {
		if(ajax.readyState == 4) { // Quando estiver tudo pronto.
			if(ajax.status == 200) {
				if(sTipo == 'VI'){
					var resultado = ajax.responseText; // Coloca o resultado (da busca) retornado pelo Ajax nessa variável (var resultado).
					resultado = resultado.replace(/\+/g," "); // Resolve o problema dos acentos (saiba mais aqui: http://www.plugsites.net/leandro/?p=4)
					resultado = unescape(resultado); // Resolve o problema dos acentos
					document.form1.elements[sNome].value = resultado;
				}
				if((sTipo == 'CV') || (sTipo == 'BV')){
					var resultado = ajax.responseText; // Coloca o resultado (da busca) retornado pelo Ajax nessa variável (var resultado).
					resultado = resultado.replace(/\+/g," "); // Resolve o problema dos acentos (saiba mais aqui: http://www.plugsites.net/leandro/?p=4)
					resultado = unescape(resultado); // Resolve o problema dos acentos
					
					var parte = resultado.split("[/tela]");
					var parte1 = parte[0].split("[tela]");
					var tela  = parte1[1];

					parte = resultado.split("[/A047_cd_cidade]");
					parte1 = parte[0].split("[A047_cd_cidade]");
					var A047_cd_cidade = parte1[1];
					
					parte = resultado.split("[/sAcao]");
					parte1 = parte[0].split("[sAcao]");
					var sAcao = parte1[1];

					parte = resultado.split("[/Qtd_viaj]");
					parte1 = parte[0].split("[Qtd_viaj]");
					var Qtd_viaj = parte1[1]; 
				
					var sCampo0  = "A032_passaporte_"+nome;
					var sCampo1  = "A032_cpf_"+nome;
					var sCampo2  = "A032_nm_viajante_"+nome;
					var sCampo3  = "A032_ddd_"+nome;
					var sCampo4  = "A032_fone_"+nome;
					var sCampo5  = "A032_dt_nasc_"+nome;
					var sCampo6  = "A032_cod_viajante_"+nome;
					var sCampo7  = "idade_"+nome;
					var sCampo8  = "A032_email_"+nome; 
					
					
					parte = resultado.split("[/A032_passaporte]");
					parte1 = parte[0].split("[A032_passaporte]");
					if(eval(document.form1.elements[sCampo0]))
						document.form1.elements[sCampo0].value = parte1[1];
						
					if(document.form1.elements[sCampo0].value == "undefined")
						document.form1.elements[sCampo0].value = "";
						
					if(document.form1.elements[sCampo0].value == "&nbsp;")
						document.form1.elements[sCampo0].value = "";
					
					parte = resultado.split("[/A032_cpf]");
					parte1 = parte[0].split("[A032_cpf]");
					if(eval(document.form1.elements[sCampo1]))
						document.form1.elements[sCampo1].value = parte1[1];
						
					if(document.form1.elements[sCampo1].value == "undefined")
						document.form1.elements[sCampo1].value = "";
						
					if((ConsisteCampoBranco(document.form1.elements[sCampo0].value)==false) || (ConsisteCampoBranco(document.form1.elements[sCampo1].value)==false)){
					
						parte = resultado.split("[/A032_nm_viajante]");
						parte1 = parte[0].split("[A032_nm_viajante]");
						if(eval(document.form1.elements[sCampo2]))
							document.form1.elements[sCampo2].value = parte1[1];
							
						parte = resultado.split("[/A032_ddd]");
						parte1 = parte[0].split("[A032_ddd]");
						if(eval(document.form1.elements[sCampo3]))
							document.form1.elements[sCampo3].value = parte1[1];
							
						parte = resultado.split("[/A032_fone]");
						parte1 = parte[0].split("[A032_fone]");
						if(eval(document.form1.elements[sCampo4]))
							document.form1.elements[sCampo4].value = parte1[1];
							
						parte = resultado.split("[/A032_dt_nasc]");
						parte1 = parte[0].split("[A032_dt_nasc]");
						if(eval(document.form1.elements[sCampo5]))
							document.form1.elements[sCampo5].value = parte1[1];
							
						parte = resultado.split("[/A032_cod_viajante]");
						parte1 = parte[0].split("[A032_cod_viajante]");
						if(eval(document.form1.elements[sCampo6]))
							document.form1.elements[sCampo6].value = parte1[1];
							
						parte = resultado.split("[/idade]");
						parte1 = parte[0].split("[idade]");
						if(eval(document.form1.elements[sCampo7]))
							document.form1.elements[sCampo7].value = parte1[1];
							
						parte = resultado.split("[/A032_email]");
						parte1 = parte[0].split("[A032_email]");
						if(eval(document.form1.elements[sCampo8]))
							document.form1.elements[sCampo8].value = parte1[1].replace("&nbsp;"," ");
						
						if(tela != "N"){
							Cadastra_Viajante(nome,document.form1.elements[sCampo1].value,document.form1.elements[sCampo6].value,A047_cd_cidade,sAcao);	
						}else{
							if(ConsisteCampoBranco(document.form1.elements[sCampo2].value) == true){
								document.form1.elements[sCampo2].focus();
							}else{
								var sCampo2  = "A032_nm_viajante_"+(parseInt(sNome)+1);
								if(eval(document.form1.elements[sCampo2])){
									document.form1.elements[sCampo2].focus();
								}else
									document.form1.A027_obs_pedido.focus();
							}
						}
					}
				}
			}
		}
	}
	ajax.send(null); // submete
}	


