﻿//*****************************************************************************************************************************
//*************************     Declaración de namespaces     *****************************************************************
//*****************************************************************************************************************************
if (!GuiaRepsol) var GuiaRepsol = {};


//*****************************************************************************************************************************
//*************************     BUSCADOR TURISMO     **************************************************************************
//*****************************************************************************************************************************

//Declaración de variables y funciones del buscador turismo
GuiaRepsol.BuscadorTurismo = (GuiaRepsol.BuscadorTurismo) ? GuiaRepsol.BuscadorTurismo : {
    formulario: '',
    idBusTurismo: '',
    objSelectOrigen: '',
    TipoBuscador: {
        Municipios: 1,
        Fiestas: -1,
        Monumentos: -2,
        EspaciosNaturales: -3,
        Golf: 5,
        PuertosDeportivos: 6,
        Campings: 7
    },

    //Llama a la función de búsqueda que corresponda y establece el buscador
    //que realiza la búsqueda en una variable
    buscar: function(tipoBuscador) {

        //Mostramos la capa de carga
        DivCarga.Mostrar();

        this.idBusTurismo = tipoBuscador;

        switch (tipoBuscador) {
            case this.TipoBuscador.Municipios:
                this.formulario = document.getElementById("foTurMunicipios");
                this.Municipios.buscarCross('nombMunicipios');
                break;
            case this.TipoBuscador.Monumentos:
                this.formulario = document.getElementById("foTurMonumentos");
                this.Municipios.buscarCross('nombMonumentos');
                break;
            case this.TipoBuscador.EspaciosNaturales:
                this.formulario = document.getElementById("foTurEspacios");
                this.Municipios.buscarCross('nombEspacios');
                break;
            case this.TipoBuscador.Fiestas:
                this.formulario = document.getElementById("foTurFiestas");
                this.Municipios.buscarCross('nombFiestas');
                break;
            case this.TipoBuscador.Campings:
                this.formulario = document.getElementById("foTurCamping");
                this.Campings.buscarCampings();
                break;
            case this.TipoBuscador.Golf:
                this.formulario = document.getElementById("foTurGolf");
                this.Golf.buscarGolf();
                break;
            case this.TipoBuscador.PuertosDeportivos:
                this.formulario = document.getElementById("foTurPuertos");
                this.PuertosDeportivos.buscarPuertosDeportivos();
                break;
            default:
                break;
        }

        //Ocultar la capa de carga
        DivCarga.Ocultar();
    },

    Municipios: {
        //Constantes para el buscador de Municipios
        Constantes: {
            URLMUNICIPIOS: '/Turismo/Municipios/Home.aspx',
            VARIDPOBLACION: 'idPoblacion',
            VARAXCD: 'axcd',
            VARCOORDX: 'coordX',
            VARCOORDY: 'coordY',
            VARIDBUSQUEDA: 'idBusqueda',
            VARIDTA: 'idta'
        },

        //Método para la búsqueda de municipios
        buscarCross: function(idTexto) {
            var txtNombre = document.getElementById(idTexto).value;

            if (txtNombre != '') {

                //Buscamos la localidad o municipio
                var Resultado = eval('(' + grAjax.getUrl('/Comunes/BuscadorRepsol/ocultoResolverLocalidad.aspx?pais=ESP&localidad=' + txtNombre) + ')');

                if (Resultado.Count != 0) {
                    GuiaRepsol.BuscadorTurismo.objSelectOrigen = new GCBuscadorSelect("CapaOrigenTurismo", "selectOrigenTurismo", 10, false, "selectorigen", Resultado);
                    GuiaRepsol.BuscadorTurismo.objSelectOrigen.mostrarTodos();
                    document.getElementById('busTurPopUp').style.display = 'block';
                }
                else {
                    alert("No se encontraron coincidencias.");
                }
            }
            else {

                alert("Escriba un nombre para la búsqueda.");
            }

        },

        //Acepta la búsqueda y redirecciona a la página que corresponda
        aceptar_localidadMunicipios: function() {

            //Mostramos la capa de carga
            DivCarga.Mostrar();

            //Ocultamos el popup
            document.getElementById('busTurPopUp').style.display = 'none';

            if (GuiaRepsol.BuscadorTurismo.objSelectOrigen != null) {
                var candidata = GuiaRepsol.BuscadorTurismo.objSelectOrigen.obtenerCandidata();

                if (typeof (candidata) != 'undefined') {

                    //Obtenemos los parámetros a pasar a la página
                    var idPoblacion = candidata.IdPoblacion;
                    var axcd = candidata.Axcd;
                    var coordX = candidata.X;
                    var coordY = candidata.Y;
                    var idta = candidata.Idta;

                    //Formamos la url
                    var url = this.Constantes.URLMUNICIPIOS + '?'
                        + this.Constantes.VARIDPOBLACION + '=' + idPoblacion + '&'
                        + this.Constantes.VARAXCD + '=' + axcd + '&'
                        + this.Constantes.VARCOORDX + '=' + coordX + '&'
                        + this.Constantes.VARCOORDY + '=' + coordY + '&'
                        + this.Constantes.VARIDTA + '=' + idta + '&'
                        + this.Constantes.VARIDBUSQUEDA + '=' + GuiaRepsol.BuscadorTurismo.idBusTurismo; //Mostrará la pestaña que corresponda dependiendeo de que se busque

                    //Establecemos el action y hacemos submit
                    GuiaRepsol.BuscadorTurismo.formulario.action = url;
                    GuiaRepsol.BuscadorTurismo.formulario.submit();
                }
            }
        },

        //Cancela la búsqueda
        cancelar_localidadMunicipios: function() {
            document.getElementById('busTurPopUp').style.display = 'none';
        }
    },

    Campings: {
        //Constantes para el buscador de Campings
        Constantes: {
            URLCAMPINGS: '/Turismo/Campings/Listado_Campings.aspx',
            VARTIPO: 'Tipo', // G 
            VARPROVCAMPING: 'Provincia',
            VARNOMBCAMPING: 'Nombre',
            VARCATEGORIA: 'Categoria', // 0
            VAROPCEXACTA: 'OpcExacta' // S
        },

        //Envía los datos del formulario a la página de búsqueda de campings
        buscarCampings: function() {

            //Obtenemos el valor de los parámetros a pasar
            var nombCamping = document.getElementById("nombCamping").value;
            var lstProvincias = document.getElementById("listProvCampings");
            var idProvincia = lstProvincias.options[lstProvincias.selectedIndex].value;
            var provincia = lstProvincias.options[lstProvincias.selectedIndex].text;

            //Formamos la url
            var url = this.Constantes.URLCAMPINGS + '?'
                + this.Constantes.VARTIPO + '=' + 'G' + '&'
                + this.Constantes.VARPROVCAMPING + '=' + provincia + '&'
                + this.Constantes.VARNOMBCAMPING + '=' + nombCamping + '&'
                + this.Constantes.VARCATEGORIA + '=' + '0' + '&'
                + this.Constantes.VAROPCEXACTA + '=' + 'S';

            //Establecemos el action y hacemos submit
            GuiaRepsol.BuscadorTurismo.formulario.action = url;
            GuiaRepsol.BuscadorTurismo.formulario.submit();
        }

    },

    Golf: {
        //Constantes para el buscador de Golf
        Constantes: {
            URLGOLF: '/Turismo/Golf/Resultados.aspx',
            VARIDPROVGOLF: 'id_provincia',
            VARNOMBGOLF: 'nombrecampo'
        },

        //Envía los datos del formulario a la página de búsqueda de campings
        buscarGolf: function() {

            //Obtenemos el valor de los parámetros a pasar
            var nombGolf = document.getElementById("nombGolf").value;
            var lstProvincias = document.getElementById("listProvGolf");
            var idProvincia = lstProvincias.options[lstProvincias.selectedIndex].value;

            //Formamos la url
            var url = this.Constantes.URLGOLF + '?'
                + this.Constantes.VARIDPROVGOLF + '=' + idProvincia + '&'
                + this.Constantes.VARNOMBGOLF + '=' + nombGolf;

            //Establecemos el action y hacemos submit
            GuiaRepsol.BuscadorTurismo.formulario.action = url;
            GuiaRepsol.BuscadorTurismo.formulario.submit();
        }
    },

    PuertosDeportivos: {
        //Constantes para el buscador de Puertos deportivos
        Constantes: {
            URLPUERTOS: '/Turismo/PuertosDeportivos/Listado_Puertos.aspx',
            VARIDPROVPUERTO: 'Provincia',
            VARTIPO: 'Tipo',
            VARMUNICIPIO2: 'Municipio2',
            VARNOMBPUERTO: 'Nombre',
            VARCLISTADO: 'CListado',
            VAROPCEXACTA: 'OpcExacta',
            VARISAGUA: 'Servicio1',
            VARISELECTRICIDAD: 'Servicio2',
            VARISGASOIL: 'Servicio3',
            VARISGASOLINA: 'Servicio4',
            VARISRAMPA: 'Servicio5',
            VARISTALLER: 'Servicio6',
            VARISASTILLEROS: 'Servicio7',
            VARISGRUA: 'Servicio8',
            VARISPNAUTICOS: 'Servicio9',
            VARISSUMINISTRO: 'Servicio10'
        },

        //Envía los datos del formulario a la página de búsqueda de campings
        buscarPuertosDeportivos: function() {

            //Obtenemos el valor de los parámetros a pasar
            var lstProvincias = document.getElementById("listProvPuertos");
            var idProvincia = lstProvincias.options[lstProvincias.selectedIndex].value;
            var nombPuertos = document.getElementById("nombPuerto").value;

            var isAgua = (document.getElementById('more_01').checked) ? 'on' : 'off';
            var isAstilleros = (document.getElementById('more_02').checked) ? 'on' : 'off';
            var isElectricidad = (document.getElementById('more_03').checked) ? 'on' : 'off';
            var isGrua = (document.getElementById('more_04').checked) ? 'on' : 'off';
            var isGasoil = (document.getElementById('more_05').checked) ? 'on' : 'off';
            var isPNauticos = (document.getElementById('more_06').checked) ? 'on' : 'off';
            var isGasolina = (document.getElementById('more_07').checked) ? 'on' : 'off';
            var isRampa = (document.getElementById('more_08').checked) ? 'on' : 'off';
            var isTaller = (document.getElementById('more_09').checked) ? 'on' : 'off';
            var isSuministro = (document.getElementById('more_10').checked) ? 'on' : 'off';

            //Formamos la url
            var url = this.Constantes.URLPUERTOS + '?'
                + this.Constantes.VARTIPO + '=' + 'G' + '&'
                + this.Constantes.VARIDPROVPUERTO + '=' + idProvincia + '&'
                + this.Constantes.VARMUNICIPIO2 + '=' + '0' + '&'
                + this.Constantes.VARNOMBPUERTO + '=' + nombPuertos + '&'
                + this.Constantes.VARCLISTADO + '=' + 'S' + '&'
                + this.Constantes.VAROPCEXACTA + '=' + 'S' + '&'
                + this.Constantes.VARISAGUA + '=' + isAgua + '&'
                + this.Constantes.VARISELECTRICIDAD + '=' + isElectricidad + '&'
                + this.Constantes.VARISGASOIL + '=' + isGasoil + '&'
                + this.Constantes.VARISGASOLINA + '=' + isGasolina + '&'
                + this.Constantes.VARISRAMPA + '=' + isRampa + '&'
                + this.Constantes.VARISTALLER + '=' + isTaller + '&'
                + this.Constantes.VARISASTILLEROS + '=' + isAstilleros + '&'
                + this.Constantes.VARISGRUA + '=' + isGrua + '&'
                + this.Constantes.VARISPNAUTICOS + '=' + isPNauticos + '&'
                + this.Constantes.VARISSUMINISTRO + '=' + isSuministro;

            //Establecemos el action y hacemos submit
            GuiaRepsol.BuscadorTurismo.formulario.action = url;
            GuiaRepsol.BuscadorTurismo.formulario.submit();
        }
    }
};

