﻿//Customização[BuscaPorCaracteristicas]

function byId(elementName)
{
    return document.getElementById(elementName);
}

function BuscaAvancada()
{
    try{
        var pais = "";
        if(byId('cabecalho_ddlPais'))
        {
            pais = byId('cabecalho_ddlPais').value;
        }
        var uva = "";
        if(byId('cabecalho_ddlUva'))
        {
            uva = byId('cabecalho_ddlUva').value;
        }
        var tipo = "";
        if(byId('cabecalho_ddlTipo'))
        {
            tipo = byId('cabecalho_ddlTipo').value;
        }
        var regiao = "";
        if(byId('cabecalho_ddlRegiao'))
        {
            regiao = byId('cabecalho_ddlRegiao').value;
        }
        var ValorDeAte = "";
        if(byId('cabecalho_ddlPreco'))
        {
            ValorDeAte = byId('cabecalho_ddlPreco').value;
        }
        var fabricante = "";
        if(byId('cabecalho_ddlProdutor'))
        {
            fabricante = byId('cabecalho_ddlProdutor').value;
        }
        cabecalho.BuscaAvancada(pais,uva,tipo,regiao,ValorDeAte,fabricante,BuscaAvancada_callback);
    }
    catch(e)
    {     
        desTravaTudo();
    } 
}

function BuscaAvancada_callback(res)
{
    try{
        var erro = false;

	    if (res.error)
	    {
		    AlertaErroAjax(res.error);
		    TrocaImagem("loading", "hidden");
		    erro = true;
	    }

	    if (res.value)
	    {
	        if(res.value.indexOf('http') > -1)
	        {
			    window.location.href = res.value;
            }
            else
            {
	            AlertaErroAjax(res.value);
	            erro = true;           
            }
	    }
    	
	    if(erro)
	    {
		    desTravaTudo();	
	    }
    }
    catch(e)
    {     
        desTravaTudo();
    } 
}

function travaTudo()
{
    if(byId('cabecalho_ddlPais'))
    {   
        byId('cabecalho_ddlPais').disabled = true; 
    }
    if(byId('cabecalho_ddlUva'))
    {
        byId('cabecalho_ddlUva').disabled = true; 
    }
    if(byId('cabecalho_ddlTipo'))
    {
        byId('cabecalho_ddlTipo').disabled = true; 
    }
    if(byId('cabecalho_ddlRegiao'))
    {
        byId('cabecalho_ddlRegiao').disabled = true; 
    }
    if(byId('cabecalho_ddlProdutor'))
    {
        byId('cabecalho_ddlProdutor').disabled = true; 
    }
    if(byId('btnPesquisaPorCaracteristicas'))
    {
        byId('btnPesquisaPorCaracteristicas').disabled = true; 
    }
}

function desTravaTudo()
{
    if(byId('cabecalho_ddlPais'))
    {   
        byId('cabecalho_ddlPais').disabled = false; 
    }
    if(byId('cabecalho_ddlUva'))
    {
        byId('cabecalho_ddlUva').disabled = false; 
    }
    if(byId('cabecalho_ddlTipo'))
    {
        byId('cabecalho_ddlTipo').disabled = false; 
    }
    if(byId('cabecalho_ddlRegiao'))
    {
        byId('cabecalho_ddlRegiao').disabled = false; 
    }
    if(byId('cabecalho_ddlProdutor'))
    {
        byId('cabecalho_ddlProdutor').disabled = false; 
    }
    if(byId('btnPesquisaPorCaracteristicas'))
    {
        byId('btnPesquisaPorCaracteristicas').disabled = false; 
    }
}

function PopulaFiltrosDinamicos()
{
    try{
        var pais = "";
        if(byId('cabecalho_ddlPais'))
        {   
            pais = byId('cabecalho_ddlPais').value; 
        }
        var uva = "";
        if(byId('cabecalho_ddlUva'))
        {
            uva = byId('cabecalho_ddlUva').value;
        }
        var tipo = "";
        if(byId('cabecalho_ddlTipo'))
        {
            tipo = byId('cabecalho_ddlTipo').value;
        }
        var regiao = "";
        if(byId('cabecalho_ddlRegiao'))
        {
            regiao = byId('cabecalho_ddlRegiao').value;
        }
        var fabricante = "";
        if(byId('cabecalho_ddlProdutor'))
        {
            fabricante = byId('cabecalho_ddlProdutor').value;
        }
        cabecalho.PopulaFiltrosDinamicos(pais,uva,tipo,regiao,fabricante,PopulaFiltrosDinamicos_callback);
    }catch(e){
        desTravaTudo();
    }
}

function PopulaFiltrosDinamicos_callback(response)
{
    try{
        if (response != null && response.value != null)
        {
            var filtros = response.value;
            
            if(filtros.length == 5){
                var pais = byId('cabecalho_ddlPais').value;
                var uva = byId('cabecalho_ddlUva').value;
                var tipo = byId('cabecalho_ddlTipo').value;
                var regiao = byId('cabecalho_ddlRegiao').value;
                var produtor = byId('cabecalho_ddlProdutor').value;
                
                var paises = filtros[0];
                var uvas = filtros[1];
                var tipos = filtros[2];
                var regioes = filtros[3];
                var produtores = filtros[4];
                
                var i;
                
                //Países
                byId('cabecalho_ddlPais').options.length = 0;
                for(i=0;i<paises.length;i++){
                    if(i==0){
                        byId('cabecalho_ddlPais').options[i] = new Option("País",paises[i]);
                    }else{
                        var splited = paises[i].split("|");
                        byId('cabecalho_ddlPais').options[i] = new Option(splited[1],paises[i]);
                    }
                }
                byId('cabecalho_ddlPais').value = pais;
                
                //Uvas
                byId('cabecalho_ddlUva').options.length = 0;
                for(i=0;i<uvas.length;i++){
                    if(i==0){
                        byId('cabecalho_ddlUva').options[i] = new Option("Uva",uvas[i]);
                    }else{
                        var splited = uvas[i].split("|");
                        byId('cabecalho_ddlUva').options[i] = new Option(splited[1],uvas[i]);
                    }
                }
                byId('cabecalho_ddlUva').value = uva;
                
                //Tipos
                byId('cabecalho_ddlTipo').options.length = 0;
                for(i=0;i<tipos.length;i++){
                    if(i==0){
                        byId('cabecalho_ddlTipo').options[i] = new Option("Tipo",tipos[i]);
                    }else{
                        var splited = tipos[i].split("|");
                        byId('cabecalho_ddlTipo').options[i] = new Option(splited[1],tipos[i]);
                    }
                }
                byId('cabecalho_ddlTipo').value = tipo;
                
                //Regiões
                byId('cabecalho_ddlRegiao').options.length = 0;
                for(i=0;i<regioes.length;i++){
                    if(i==0){
                        byId('cabecalho_ddlRegiao').options[i] = new Option("Região",regioes[i]);
                    }else{
                        var splited = regioes[i].split("|");
                        byId('cabecalho_ddlRegiao').options[i] = new Option(splited[1],regioes[i]);
                    }
                }
                byId('cabecalho_ddlRegiao').value = regiao;
                
                //Produtores
                byId('cabecalho_ddlProdutor').options.length = 0;
                byId('cabecalho_ddlProdutor').options[0] = new Option("Produtor","0");
                for(i=0;i<produtores.length;i++){
                    var splited = produtores[i].split("|");
                    byId('cabecalho_ddlProdutor').options[i+1] = new Option(splited[1],splited[0]);
                }
                byId('cabecalho_ddlProdutor').value = produtor;
            }
        }   
    }
    finally
    {     
        desTravaTudo();
    }
}
//Fim Customização[BuscaPorCaracteristicas]
