﻿function pesquisaProduto() {

    /*
    Função para pesquisar produtos na loja.
    */
    var retorno = '';
    var campo = '';

    //Fazer validação dos campos obrigatórios
    //A expressão de busca deve ser informada.    
    if ($('#strBusca').val() == ''){
        retorno += '* Informe uma expressão de busca.';
        if (campo == '') { campo = '#strBusca'; }
    }else{
        //A expressão de busca deve ter ao menos 3 caracteres
        if ($('#strBusca').val().length < 3){
            retorno += '* A expressão de busca deve ter no mínimo 03 caracteres.';
            if (campo == '') { campo = '#strBusca'; }
        }
    }

    //Se retorno estiver vazio, não houve erros
    if (retorno != '') {
        alert('Atenção!\n' + retorno);
        if (campo != '') { $(campo).focus(); }
    } else {
        //Abre a página de consulta de produtos, com os parâmetros informados
        window.open('produto.listar.asp?cat=' + $('#codCategoria').val() + '&str=' + escape($('#strBusca').val()), '_self');  
    }   
}

function buscaOpcao(produto,estoque){
	
	/*
	Função para preencher o combo de opções/tamanho
	Parâmetros:
	produto: codigo do produto selecionado
	*/
	
	$.ajax({
		type:'get',
		cache:false,
		async:false,
		url:'inc/funcoes.loja.ajax.asp?link=opcao',
		data:'cod='+produto,
		beforeSend: function(){
			$('#colOpcao').html('Aguarde...');
		},
		success:function(response){
			if (response == '' ){
				$('#colOpcao').html(response);
				buscaCor(produto,estoque);
			}else{
				$('#colOpcao').html(response);
				buscaCor(produto,estoque);
			}
		},
		error:function(request, status){
			alert('Atenção!\nOcorreu um erro ao tentar carregar as variações do produto selecionado.');
		},
		complete:function(){
			
		}
	});	
}

function buscaCor(produto, estoque){
	
	/*
	Função para preencher o combo de cores
	Parâmetros:
	produto: codigo do produto selecionado
	opcao: opção selecionada no combo de opções / tamanhos. 
	Se não foi selecionado ou não houver o combo, passa como parâmetro o hidden com o código do estoque.
	*/
	
	var tipo = '';
	var opcao = '';
	
	if ($('#des_opcao').length > 0){
		opcao = $('#des_opcao :selected').text();
	}
	
	//Seta o hidden com o código do estoque selecionado
	$('#hdCodEstoque').val(estoque);
	
	$.ajax({
		type:'get',
		cache:false,
		async:false,
		url:'inc/funcoes.loja.ajax.asp?link=cor',
		data:'cod='+produto+'&estoque='+estoque+'&opcao='+opcao,
		success:function(response){	
			if (response == ''){
				//Exibe os dados na coluna de cores
				$('#colCor').html(response);
				buscaVoltagem(produto)
			}else{
				//Exibe os dados na coluna de cores
				$('#colCor').html(response);
				buscaVoltagem(produto)
			}
			
		},
		error:function(request, status){
			alert('Atenção!\nOcorreu um erro ao tentar carregar as variações do produto selecionado.');
		},
		complete:function(){
			
		}
	});	
}

function buscaVoltagem(produto){
	cor = $('#des_cor').val();
	opcao = $('#des_opcao').val();
	
	strData = 'pro='+produto;
	//Define as opções de busca	
	if ($('#des_opcao').length > 0){
		strData += '&opcao='+$('#des_opcao').val();
	}
	if ($('#des_cor').length > 0){
		strData += '&cor='+$('#des_cor').val();
	}
	$.ajax({
		type:'get',
		cache:false,
		async:false,
		url:'inc/funcoes.loja.ajax.asp?link=volt',
		data:strData,
		success:function(response){
			if(response == ''){
				//Exibe os dados na coluna de colVoltagem
				$('#colVoltagem').html(response);
				buscaValor(produto)
			}else{
				//Exibe os dados na coluna de colVoltagem
				$('#colVoltagem').html(response);
				buscaValor(produto)
			}
			
		},
		error:function(request, status){
			alert('Atenção!\nOcorreu um erro ao tentar carregar as variações do produto selecionado.');
		},
		complete:function(){
		}
	});	
}

function buscaValor(produto){	
	/*
	Função para buscar os dados referentes ao valor do produto.
	Parâmetro:
	estoque: código do estoque do produto selecionado.
	Retorna uma string com o padrão:
	tabela||parcelas;valor;situacao do estoque;código do estoque
	Ao final do request, separa o response e atualiza os campos respectivos.
	*/

	var strData = 'cod='+produto;

	//Define as opções de busca	
	if ($('#des_opcao').length > 0){
		strData += '&opcao='+$('#des_opcao').val();
	}
	if ($('#des_cor').length > 0){
		strData += '&cor='+$('#des_cor').val();
	}
	if ($('#des_voltagem').length > 0){
		strData += '&volt='+$('#des_voltagem').val();
	}
	$.ajax({
		type:'get',
		cache:false,
		url:'inc/funcoes.loja.ajax.asp?link=val',
		data:strData,
		async:false,
		beforeSend: function(){
			$('#precosDiv').html('Aguarde...');
		},
		success:function(response){
			//Cria um vetor com a tabela de preço e o número máximo de parcelas sem juros (tabela||parcela)
			var retorno = response.split('||');
			
			
			//buscaVoltagem(produto,$('#des_opcao').val(),$('#des_cor').val());
			
			
			//Exibe a tabela
			if (retorno[0] != ''){		
				$('#precosDiv').html(retorno[0]);
			}
			//Cria o parcelamento
			if (retorno[1] != ''){		
				//Se houver parcelas
				if (retorno[1] != ''){
					//Número de parcelas
					var parcela = retorno[1].split(';')[0];
					if (parseInt(parcela) <= 1){
						$('#detalheParc').css('display','none');	
						$('#detalheCarac').css('margin','2px 2px 0 580px');	
					}else{
						//Valor do produto
						var valor = retorno[1].split(';')[1];
						//Função para exibir o número de parcelas do produto
						exibeParcelamento(parcela, valor);	
						$('#detalheCarac').css('margin','2px 2px 0 156px');	
					}										
					//Situação do estoque (Disponível / Indisponível
					var disponivel = retorno[1].split(';')[2];					
					//Atualiza o campo de status do estoque
					$('#spanDisponivel').html(disponivel);
				}else{
					$('#detalheParc').css('display','none');
				}
			}else{
				$('#detalheParc').css('display','none');
			}
			//Seta o hidden com o código do estoque selecionado
			$('#hdCodEstoque').val(retorno[1].split(';')[3]);	
		},
		error:function(request, status){
		},
		complete:function(){
		}
	});	
}

function exibeParcelamento(parcelas, valor){
	
	$.ajax({
		type:'get',
		cache:false,
		url:'inc/funcoes.loja.ajax.asp?link=parc',
		data:'parcelas='+parcelas+'&val='+valor,
		success:function(response){
			$('#parcDiv').html(response);
		},
		error:function(request, status){
		},
		complete:function(){
		}
	});	
}

function confirmaLogoff(){
	
	//Função para confirmar o logoff do cliente
	if(confirm('Atenção!\nConfirmar saída do sistema?')){
		$.ajax({
				type:'get',
				cache:false,
				url:'inc/funcoes.cliente.asp?link=logoff',
				data:'[]',
				success:function(response){
					window.location.reload();
				},
				error:function(request, status){
				},
				complete:function(){
				}
			});	
	}
	
}