function openAjax() {
	var ajax;
	try {
		ajax = new XMLHttpRequest();
	} catch(ee) {
		try {
			ajax = new ActiveXObject("Msxml2.XMLHTTP");
		} catch(e) {
			try {
				ajax = new ActiveXObject("Microsoft.XMLHTTP");
			} catch(E) {
				alert('Seu Browser não suporta Ajax.')
				ajax = false;
			}
		}
	}
	return ajax;
}

// Funções inicias do site ........
$(document).ready(function() {
	
	//$("#frmBusca #txtBusca").autocomplete("_includes/_autocompletar/listaPalavrasChaves.php", { width: 148, scrollHeight: 220, selectFirst: true});
	
//mudar texto da text Usuario ao clicar na text
	$("#login #txtUsuarioLogin").focus(function() {
		if($("#txtUsuarioLogin").val() == "E-mail"){
			$("#txtUsuarioLogin").val("");
		}
	});
	$("#login #txtUsuarioLogin").blur(function() {
		if($("#txtUsuarioLogin").val() == ""){
			$("#txtUsuarioLogin").val("E-mail");
		}
	});
//################################################
//mudar texto da text Senha ao clicar na text
	$("#login #txtSenhaLogin").focus(function() {
		if($("#txtSenhaLogin").val() == "0000"){
			$("#txtSenhaLogin").val("");
		}
	});
	$("#login #txtSenhaLogin").blur(function() {
		if($("#txtSenhaLogin").val() == ""){
			$("#txtSenhaLogin").val("0000");
		}
	});
//################################################
//mudar texto da text Palavra Chave ao clicar na text
	$("#frmBusca #txtBusca").focus(function() {
		if($("#frmBusca #txtBusca").val() == "Palavra Chave"){
			$("#frmBusca #txtBusca").val("");
		}
	});
	$("#frmBusca #txtBusca").blur(function() {
		if($("#frmBusca #txtBusca").val() == ""){
			$("#frmBusca #txtBusca").val("Palavra Chave");
		}
	});
	$("#frmBusca #txtBusca").val("Palavra Chave");
	$("#txtNiverNews").mask("99/99/9999");
	$("#txtCep").mask("99999-999");
//######################################################
//chama funcao Ajax para fiiltrar busca de produtores
	$("#cmbPais").change(	function(){ 
								fnProdutor($("#cmbPais").val());
							}
						);
//######################################################
//chama funcao Ajax para fiiltrar busca de tipos
	$("#cmbProdutor").change(	function(){ 
									fnTipo($("#cmbPais").val(), $("#cmbProdutor").val());
								}
							);
//######################################################
//chama funcao Ajax para fiiltrar busca de Tipos
	$("#cmbTipo").change(	function(){ 
									fnUva($("#cmbPais").val(), $("#cmbProdutor").val(), $("#cmbTipo").val());
								}
							);
});

//##################################################
//Ajax para filtrar combo Produtor escolhendo um Pais
function fnProdutor(idPais) {
	
	var cmbProdutor = document.getElementById("cmbProdutor");
	ajax = openAjax();
	ajax.open("GET", "_includes/_combo/montaComboProdutor.php?id_pais="+idPais, true);
	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");
	ajax.onreadystatechange=function() {
		if(ajax.readyState==1 || ajax.readyState==2 || ajax.readyState==3){
			limparRegistros(cmbProdutor);
			var opt = document.createElement("option");
			opt.text= "Carregando...";
			opt.value = "";
			try {
				cmbProdutor.add(opt,null);
			} catch(ex) {
				cmbProdutor.add(opt);
			}
			cmbProdutor.disabled = true;
			document.getElementById("cmbTipo").disabled = true;
		}
		if (ajax.readyState==4){
			if(ajax.status==200) {
				var xmlDoc = ajax.responseXML;
				var produtores = xmlDoc.getElementsByTagName("produtor");
				limparRegistros(cmbProdutor);
				var opt = document.createElement("option");
				opt.text= "Produtor";
				opt.value = "";
				try {
					cmbProdutor.add(opt,null);
				} catch(ex) {
					cmbProdutor.add(opt);
				}
				for(var i=0;i<produtores.length;i++) {
					var opt = document.createElement("option");
					opt.text= produtores[i].firstChild.nodeValue;
					opt.value = produtores[i].getAttribute("id");
					try {
						cmbProdutor.add(opt,null);
					} catch(ex) {
						cmbProdutor.add(opt);
					}
				}
				cmbProdutor.disabled = false;
				fnTipo($("#cmbPais").val(), $("#cmbProdutor").val());
			}
		}
	}
	ajax.send(null);
}

//##################################################
//Ajax para filtrar combo Uva escolhendo um Pais e um Produtor
function fnTipo(idPais, idProdutor) {
	
	var cmbTipo = document.getElementById("cmbTipo");
	ajax = openAjax();
	ajax.open("GET", "_includes/_combo/montaComboTipo.php?id_pais="+idPais+"&id_produtor="+idProdutor, true);
	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");
	ajax.onreadystatechange=function() {
		if(ajax.readyState==1 || ajax.readyState==2 || ajax.readyState==3){
			limparRegistros(cmbTipo);
			var opt = document.createElement("option");
			opt.text= "Carregando...";
			opt.value = "";
			try {
				cmbTipo.add(opt,null);
			} catch(ex) {
				cmbTipo.add(opt);
			}
			cmbTipo.disabled = true;
			document.getElementById("cmbUva").disabled = true;
		}
		if (ajax.readyState==4){
			if(ajax.status==200) {
				var xmlDoc = ajax.responseXML;
				var tipos = xmlDoc.getElementsByTagName("tipo");
				limparRegistros(cmbTipo);
				var opt = document.createElement("option");
				opt.text= "Tipo";
				opt.value = "";
				try {
					cmbTipo.add(opt,null);
				} catch(ex) {
					cmbTipo.add(opt);
				}
				for(var i=0;i<tipos.length;i++) {
					var opt = document.createElement("option");
					opt.text= tipos[i].firstChild.nodeValue;
					opt.value = tipos[i].getAttribute("id");
					try {
						cmbTipo.add(opt,null);
					} catch(ex) {
						cmbTipo.add(opt);
					}
				}
				cmbTipo.disabled = false;
				fnUva($("#cmbPais").val(), $("#cmbProdutor").val(), $("#cmbTipo").val());
			}
		}
	}
	ajax.send(null);
	return false;
}

//Ajax para filtrar combo Uva escolhendo um Pais e um Produtor
function fnUva(idPais, idProdutor, idTipo) {
	
	var cmbUva = document.getElementById("cmbUva");
	ajax = openAjax();
	ajax.open("GET", "_includes/_combo/montaComboUva.php?id_pais="+idPais+"&id_produtor="+idProdutor+"&id_tipo="+idTipo, true);
	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");
	ajax.onreadystatechange=function() {
		if(ajax.readyState==1 || ajax.readyState==2 || ajax.readyState==3){
			limparRegistros(cmbUva);
			var opt = document.createElement("option");
			opt.text= "Carregando...";
			opt.value = "";
			try {
				cmbUva.add(opt,null);
			} catch(ex) {
				cmbUva.add(opt);
			}
			cmbUva.disabled = true;
			//document.getElementById("cmbTipo").disabled = true;
		}
		if (ajax.readyState==4){
			if(ajax.status==200) {
				var xmlDoc = ajax.responseXML;
				var uvas = xmlDoc.getElementsByTagName("uva");
				limparRegistros(cmbUva);
				var opt = document.createElement("option");
				opt.text= "Uva";
				opt.value = "";
				try {
					cmbUva.add(opt,null);
				} catch(ex) {
					cmbUva.add(opt);
				}
				for(var i=0;i<uvas.length;i++) {
					var opt = document.createElement("option");
					opt.text= uvas[i].firstChild.nodeValue;
					opt.value = uvas[i].getAttribute("id");
					try {
						cmbUva.add(opt,null);
					} catch(ex) {
						cmbUva.add(opt);
					}
				}
				cmbUva.disabled = false;
				//fnTipo($("#cmbPais").val(), $("#cmbProdutor").val(), "");
			}
		}
	}
	ajax.send(null);
	return false;
}


function limparRegistros(combo) {
	while(combo.hasChildNodes()) {
		combo.removeChild(combo.firstChild);
	}
}

function openPopup(URL,iWidth, iHeight) {
	var top = (screen.height / 2) - (iHeight / 2);
	var left = (screen.width / 2) - (iWidth / 2);
	window.open(URL,"j1","scrollbars=yes,toolbar=no,menubar=no,status=no,width=" + iWidth + ",height="+iHeight+",left="+left+",top=" + top);
	return false;
}

function calcularFrete(peso, valor){
	var cep = $("#txtCep").val();
	if(cep == ""){
		alert("Preencha o campo CEP para calcular o valor do frete.");
	}else{
		cep = cep.replace("-", "");
		
		var result = $.ajax({ url: "calcular_frete.php?cep="+cep+"&peso="+peso+"&valor="+valor,  async: false }).responseText;
		
		if(result != "###"){
			$("#totalFrete").text("R$ " + float2moeda(result));
			
			var tot = float2moeda(parseFloat(valor) + parseFloat(result));
			
			$("#totalPedido").text("R$ " + tot);
			$("#btnConcluirCompra").css({"background-color": "#640000", "color": "#ffffff"});
			$("#btnConcluirCompra").removeAttr("disabled");
		}else{
			$("#totalFrete").text("-");
			$("#totalPedido").text("R$ " + float2moeda(parseFloat(valor)));
			$("#btnConcluirCompra").css({"background-color": "#ffffff", "color": "#000000"});
			$("#btnConcluirCompra").attr("disabled", "disabled");
			alert("Não foi possível calcular o frete. Tente novamente.");
		}
	}
	return false;
}

function float2moeda(num) {

   x = 0;

   if(num<0) {
      num = Math.abs(num);
      x = 1;
   }   if(isNaN(num)) num = "0";
      cents = Math.floor((num*100+0.5)%100);

   num = Math.floor((num*100+0.5)/100).toString();

   if(cents < 10) cents = "0" + cents;
      for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
         num = num.substring(0,num.length-(4*i+3))+'.'
               +num.substring(num.length-(4*i+3));   ret = num + ',' + cents;   if (x == 1) ret = ' - ' + ret;return ret;

}