function jsAjax(){
	
	if (!$Id('ulCarrinho')){ //Verifica se o formulário já foi carregado.
		setTimeout('jsAjax()', 500); //Aguarda 0,5 segundos e chama a função novamente.
		return false;
	}
	
	jsAjaxGerenciarCarrinho();

}
//jsAjax();


function jsAcao(oAcao, codigo)
{

	
	var sAcao			= (oAcao.value ? oAcao.value : oAcao)	//Verifica se é objeto ou texto.
		

	switch (sAcao.toLowerCase()){
		
		case 'limpar':
		
			jsAjaxCarrinhoLimpar();
		
		break;
				
		case 'atualizar':
		
			jsAjaxCarrinhoAtualizar();
			
		break;
		
		case 'apagar':
		
			jsAjaxCarrinhoApagar();
			
		break;
		
	}
}


function jsAjaxGerenciarCarrinho()
{
	
	var AjaxAtualizar =Ajax();
	
	/*Buscar os produtos*/
	if(AjaxAtualizar){
		jsCarregando(1,'Atualizando Produtos');
		//Abre a url
		AjaxAtualizar.open('GET', '/bin/AjaxCarrinho.php?op=1&ocultar=nao', true);

		//Executada quando o navegador obtiver o código
		AjaxAtualizar.onreadystatechange=function() {
			if (AjaxAtualizar.readyState==4){
				//Lê o texto
				var texto= new String(AjaxAtualizar.responseText);

				//Desfaz o urlencode
				texto=texto.replace(/\+/g," ");
				texto=unescape(texto);
				$Id('liCarrinho').innerHTML="<ul>"+texto+"</ul>";
				jsCarregando(0);
				
				//jsAjaxTipoEncomenda();
				//jsBtFrete();
				//setTimeout('jsAjaxFrete()', 100);
				//jsBuscarIndex();
				jsAjaxQtdCarrinho();
				jsAjaxTotalCarrinho();
				jsBtCarrinho();
				jsAtualizarTipoEncomenda();
				setTimeout('jsAjaxTotal()',500);
				
				
				
			}
		}
		AjaxAtualizar.send(null)
		
		
	}
	
	

}

function jsAjaxAddCarrinho(cdPro,qtd,cdDet,valor)
{
	
	if (!$Id('ulCarrinho')){ //Verifica se o formulário já foi carregado.
		setTimeout('jsAjaxAddCarrinho('+cdPro+','+qtd+','+cdDet+','+valor+')', 50); //Aguarda 0,5 segundos e chama a função novamente.
		return false;
	}
	
	
	var xmlhttp =Ajax();
	
	if(xmlhttp){
		jsCarregando(1,'Adicionando Produto');
		//Abre a url
		xmlhttp.open('GET', '/bin/AjaxCarrinho.php?op=2&cdPro=' + cdPro + '&qtd=' + qtd + '&cdDet=' + cdDet + '&valor=' + valor  , true);

		//Executada quando o navegador obtiver o código
		xmlhttp.onreadystatechange=function() {
			if (xmlhttp.readyState==4){
				/*//Lê o texto
				var texto= new String(xmlhttp.responseText);
				//Desfaz o urlencode
				texto=texto.replace(/\+/g," ");
				texto=unescape(texto);*/
				jsCarregando(0);
				jsAjax();
				
			}
		}
		xmlhttp.send(null)
	}		

}
function jsAjaxQtdCarrinho()
{
	
	var AjaxQtd =Ajax();
	
	if(AjaxQtd){
		jsCarregando(1,'Atualizando Quantidade');
		
		//Abre a url
		AjaxQtd.open('GET', '/bin/AjaxCarrinho.php?op=3', true);

		//Executada quando o navegador obtiver o código
		AjaxQtd.onreadystatechange=function() {
			if (AjaxQtd.readyState==4){
				//Lê o texto
				var texto= new String(AjaxQtd.responseText);

				//Desfaz o urlencode
				texto=texto.replace(/\+/g," ");
				texto=unescape(texto);
				//alert(texto);
				
				if(texto<=0)
				{
					
					$Id('btFinalizarCompra').style.display='none';
					$Id('btLimparCarrinho').style.display='none';
				
				
				}
				else
				{
					
					$Id('btFinalizarCompra').style.display='block';
					$Id('btLimparCarrinho').style.display='block';
				}

				$Id('aSacolaIndex').title='Voce tem '+texto+' produtos no seu carrinho!';
				$Id('aSacolaIndex').innerHTML=texto+'<span>produtos no seu carrinho!</span>';
			
				
				jsCarregando(0);
				
			}
		}
		AjaxQtd.send(null)
	}		

}

function jsAjaxTotal()
{
	
	
	
	
	var xmlhttp = Ajax();
	
	if(xmlhttp){
		jsCarregando(1,'Calculando...');
		
		//Abre a url
		xmlhttp.open('GET', '/bin/AjaxCarrinho.php?op=19', true);

		//Executada quando o navegador obtiver o código
		xmlhttp.onreadystatechange=function() {
			if (xmlhttp.readyState==4){
				//Lê o texto
				var texto= new String(xmlhttp.responseText);

				//Desfaz o urlencode
				texto=texto.replace(/\+/g," ");
				texto=unescape(texto);
				
				//alert(texto);
				var frete_gratis = texto;
				
				var subtotal 	= parseFloat($Id('nuSubTotal').value.replace(".","").replace(",","."));
				var frete 		= parseFloat($Id('nuTaxa').value.replace(".","").replace(",","."));
				
				if($Id('nuDesconto'))
				{
					var desconto 	= parseFloat($Id('nuDesconto').value.replace(".","").replace(",","."));;
				}
				else
				{
				
					var desconto = 0;
				}
				
				
				//alert(subtotal);
				//alert(frete);
				if(frete==0 && frete_gratis!="OK")
				{
					$Id('btFinalizarCompra').style.display='none';	
					
				}
				else
				{
					$Id('btFinalizarCompra').style.display='block';	
				}
				
				valorTotal = (subtotal+frete)-desconto;
				
				//alert(valorTotal);
				
				if(valorTotal<0)
				{
					valor = FormataMoeda(0);
				}
				else
				{
					valor = FormataMoeda(valorTotal);	
				}
				//valor = valor.toString().replace(".",",");
				
				//alert(valor);
				if(subtotal>0)
				{
					$Id('dvPreco').innerHTML="<strong>Total de Compra</strong><span>R$ "+valor+"</span>";
				}
			
			
			
			
				jsCarregando(0);
				
			
				
			}
		}
		xmlhttp.send(null)
	}		

}

function jsAjaxTotalCarrinho()
{
	
	var AjaxTotal = Ajax();
	
	if(AjaxTotal){
		jsCarregando(1,'Calculando...');
		
		//Abre a url
		AjaxTotal.open('GET', '/bin/AjaxCarrinho.php?op=4', true);

		//Executada quando o navegador obtiver o código
		AjaxTotal.onreadystatechange=function() {
			if (AjaxTotal.readyState==4){
				//Lê o texto
				var texto= new String(AjaxTotal.responseText);

				//Desfaz o urlencode
				texto=texto.replace(/\+/g," ");
				texto=unescape(texto);

				
				$Id('dvSubTotal').innerHTML='<h5>Sub-Total</h5> <label class="csPreco">R$'+texto+'</label><input id="nuSubTotal" type="hidden" value="'+texto+'">';
			
				
				jsCarregando(0);
				
			}
		}
		AjaxTotal.send(null)
	}		

}

function jsAjaxLimparCarrinho()
{
	
	var AjaxLimpar = Ajax();
	
	if(AjaxLimpar){
		jsCarregando(1,'Limpando Carrinho...');
		
		//Abre a url
		AjaxLimpar.open('GET', '/bin/AjaxCarrinho.php?op=5', true);

		//Executada quando o navegador obtiver o código
		AjaxLimpar.onreadystatechange=function() {
			if (AjaxLimpar.readyState==4){
				//Lê o texto
				var texto= new String(AjaxLimpar.responseText);

				//Desfaz o urlencode
				texto=texto.replace(/\+/g," ");
				texto=unescape(texto);

				//$Id('nuTaxa').value="0";
				$Id('dvTaxa').innerHTML="<h5>Taxa de Envio</h5><label class=\"csPreco\">R$ 0,00</label><input type=\"hidden\" id=\"nuTaxa\" value=\"0\"/></div>";
				
				setTimeout('jsAjax()', 50);
				$Id('dvPreco').innerHTML="<strong>Total de Compra</strong><span>R$ 0,00</span>";
				jsCarregando(0);
				
				
			}
		}
		AjaxLimpar.send(null)
	}		

}

function jsAjaxAtualizarCarrinho(e)
{
	
	var e = jsRetornaObjetoDoEvento(e);
	
	
	var campo 	= e.parentNode.childNodes[0];
	var qtd 	= campo.value;
	var id		= campo.id.replace("nuQtd"," ");

	
	//alert(qtd+" - "+id);
	
	if(qtd<=0)
	{
		alert("A quantidade tem quer ser maior que zero");
		campo.value=1;
		return false;
	}
	
	
	var AjaxAtualQtd = Ajax();
	
	//return false
	if(AjaxAtualQtd){
		jsCarregando(1,'Atualizando...');
		
		//Abre a url
		AjaxAtualQtd.open('GET', '/bin/AjaxCarrinho.php?op=6&id='+id+'&qtd='+qtd, true);

		//Executada quando o navegador obtiver o código
		AjaxAtualQtd.onreadystatechange=function() {
			if (AjaxAtualQtd.readyState==4){
				//Lê o texto
				var texto= new String(AjaxAtualQtd.responseText);

				//Desfaz o urlencode
				texto=texto.replace(/\+/g," ");
				texto=unescape(texto);
				
				//alert(texto);
				
				if(eval(texto)<eval(qtd))
				{
				
					alert('A quantidade solicitada é maior que a disponível!\n');
					
				}
				
				//$Id('dvSubTotal').innerHTML='<h5>Sub-Total</h5> <label class="csPreco">R$'+texto+'</label>';
				setTimeout('jsAjax()', 50);
				
				jsCarregando(0);
				
			}
		}
		AjaxAtualQtd.send(null)
	}		

}

function jsAjaxDelCarrinho(e)
{
	
	var e = jsRetornaObjetoDoEvento(e);
	
	var campo 	= e.parentNode.childNodes[0];
	var id		= campo.id.replace("nuQtd"," ");

	var AjaxDel = Ajax();
	//return false
	if(AjaxDel){
		jsCarregando(1,'Retirando Produto');
		//Abre a url
		AjaxDel.open('GET', '/bin/AjaxCarrinho.php?op=7&id='+id, true);

		//Executada quando o navegador obtiver o código
		AjaxDel.onreadystatechange=function() {
			if (AjaxDel.readyState==4){
				//Lê o texto
				var texto= new String(AjaxDel.responseText);

				//Desfaz o urlencode
				texto=texto.replace(/\+/g," ");
				texto=unescape(texto);
				
				//alert(texto);
								
				//$Id('dvSubTotal').innerHTML='<h5>Sub-Total</h5> <label class="csPreco">R$'+texto+'</label>';
				setTimeout('jsAjax()', 50);
				//setTimeout('jsAjaxTotal()', 50);
				//setTimeout('jsAjaxFrete()', 500);
				jsCarregando(0);
				
			}
		}
		AjaxDel.send(null)
	}		

}


function jsAjaxFrete()
{
	
	
	if(($Id('nuSubTotal').value!="") && ($Id('nuSubTotal').value!="0,00") && ($Id('nuSubTotal').value!="0.00") && ($Id('nuSubTotal').value!="0.000") && ($Id('nuSubTotal').value!="0,000"))
	{
		
		var tipo  = $Id('stTipoEncomenda').options[$Id('stTipoEncomenda').selectedIndex].value;
		var nuCep = $Id('nuCep').value
	
	
	if(nuCep=='' || nuCep==0)
	{
		alert("É obrigatório digitar seu CEP!");
		$Id('btFinalizarCompra').style.display='none';	
		return false;
		
	}
	else if(tipo=='')
	{
		
		alert("É obrigatório selecionar o Tipo de Envio!");
		$Id('btFinalizarCompra').style.display='none';	
		return false;
	
	}
	
	var AjaxFrete = Ajax();

	if(AjaxFrete)
	{
		jsCarregando(1,'Calculando Envio');
		//$Id('dvCarregando').innerHTML='Taxa de envio';
		//Abre a url
		AjaxFrete.open('GET', '/bin/AjaxCarrinho.php?op=8&tipo='+tipo+'&nuCep='+nuCep, true);

		//Executada quando o navegador obtiver o código
		AjaxFrete.onreadystatechange=function() {
			
			if (AjaxFrete.readyState==4){
				//Lê o texto
	
				var texto= new String(AjaxFrete.responseText);

				//Desfaz o urlencode
				texto=texto.replace(/\+/g," ");
				texto=unescape(texto);
				
				//alert(texto);
				
				texto = texto.split("<>");
				dsErro= texto[1];
				texto = texto[0];
				
				
				//alert(texto);
				//alert(dsErro);
				
				if(texto=="erro")
				{
				
					if(dsErro!="")
					{
						alert(dsErro);
					}
					else
					{
						 alert("Houve algum erro, tente novamente!");
					}
					
					$Id('dvTaxa').innerHTML="<h5>Taxa de Envio</h5><label class=\"csPreco\">R$ 0,00</label><input type=\"hidden\" value=\"0,00\" id=\"nuTaxa\"/>";
					//jsCarregando(0);
					
				}
				else
				{
				//Recebe o registro XML e repassa os valores dos campos do regitro para os campos do fomulário
					var oREGISTRO = AjaxFrete.responseXML.childNodes[Navegador==0?1:0].childNodes[Navegador];
					jsCarregarCamposXML(oREGISTRO);
				
				}
				//setTimeout('jsAjaxQtdCarrinho()', 50);
				//setTimeout('jsAjaxTotalCarrinho()', 300);
				//setTimeout('jsAjaxFrete()', 400);
				//setTimeout('jsAjaxTotal()', 100);
				//$Id('dvCarregando').innerHTML='Carregando...';
				jsCarregando(0);
				setTimeout('jsAjaxTotal()', 50);
				
	 			
			}
		}
		AjaxFrete.send(null)
	}			
	
	}//end if campo subtotal
}

function jsAjaxTipoEncomenda()
{
	
	var nuCep = $Id('nuCep').value
	var bnuCep			= (nuCep.search(/^[0-9]{5}-[0-9]{3}/) == 0);
	
	
	if(nuCep=='' || nuCep==0)
	{
		alert("É obrigatório digitar o seu CEP!");	
		return false;
		
	}
	else if(!bnuCep)
	{
		
		
		alert("Digite um CEP válido!");	
		return false;
	
	}
	
	
	var httpxml =Ajax();
	
	if(httpxml){
		jsCarregando(1,'Atualizando Encomendas');
		
		//Abre a url
		httpxml.open('GET', '/bin/AjaxCarrinho.php?op=18&nuCep='+nuCep, true);

		//Executada quando o navegador obtiver o código
		httpxml.onreadystatechange=function() {
			if (httpxml.readyState==4){
				//Lê o texto
				var texto= new String(httpxml.responseText);

				//Desfaz o urlencode
				texto=texto.replace(/\+/g," ");
				texto=unescape(texto);
				//alert(texto);
				
				if(texto!="")
				{
					$Id('dvFrete').innerHTML=texto;
				
					if($Id('nuCep').value!="")
					{
					
						setTimeout('jsAjaxFrete()',300);
						//jsAjaxFrete();	
						$Id('nuCep').className="csCEP";
				
					}
					
				}
				else
				{
				
					// alert("CEP: Não localizamos o cep digitado.");
					
					$Id('lbCep').innerHTML="CEP Inválido!";
					
					
				}
				
				jsInputs();
				jsBtFrete();
				jsCarregando(0);
				
			}
		}
		httpxml.send(null)
	}		

}

function jsAtualizarTipoEncomenda()
{
				
	if($Id('nuCep'))
	{	   
		var CEP = $Id('nuCep').value;
		
		
		if(CEP.length==9)
		{
			if($Id('stTipoEncomenda'))
			{
				jsAjaxTipoEncomenda();
			}
		//alert(1);
		
		}
	}
}