﻿
/* FUNCIONES DE INICIALIZACION */
/*******************************/

function inicializarControles() {

    inicializarCarruseles();
    inicializarCarruselesVerticales();
    inicializarCarruselesDestacados();
    inicializarCarruselesPromociones();
    inicializarDestacados();
    inicializarDestacadosAvanzados();
    inicializarMenusLateralesBlog();
    InicializarToolTips();
    InicializarToolTipsCarruseles();
    inicializarVisualizadores();
    inicializarSeccion();
    inicializarValoraciones();
    inicializarTabs();
    inicializarMenusProa();
    inicializarCestasProa();
    inicializarBoletines();
    inicializarAgendas();
    inicializarPanelesCompartir();
    inicializarEnlacesAleatorios();
}

function inicializarCarruseles() {

    inicializarCarrusel(".panelControlCarrusel");
    inicializarCarrusel(".panelControlCarrusel-Oscuro");
    inicializarCarrusel(".panelControlCarrusel-Interesantes");
    inicializarCarrusel(".panelControlCarrusel-Interesantes-Oscuro");
    inicializarCarrusel(".panelControlHistorialVisitas");
    inicializarCarrusel(".panelControlCarruselInteresantes");

}

function inicializarDestacados() {
    
    destacadosIzquierda = $(".panelControlDestacadosIzquierda");

    for (i = 0; i < $(destacadosIzquierda).length; i++) {

        InicializarDestacado($(destacadosIzquierda[i]));

    }

    destacadosDerecha = $(".panelControlDestacadosDerecha");

    for (i = 0; i < $(destacadosDerecha).length; i++) {

        InicializarDestacado($(destacadosDerecha[i]));

    }

}

function inicializarDestacadosAvanzados() {

    destacadosAvanzados = $(".panelControlDestacadosAvanzado .elementosControlDestacadosAvanzado");

    for (i = 0; i < $(destacadosAvanzados).length; i++) {

        InicializarDestacadoAvanzado($(destacadosAvanzados[i]));

    }

}

function inicializarCarruselesVerticales() {
    
    carruselesVerticales = $(".panelControlCarruselVertical");

    for (i = 0; i < $(carruselesVerticales).length; i++) {

        InicializarCarruselVertical($(carruselesVerticales[i]));

    }
}

function inicializarCarruselesDestacados() {

    carruselesDestacados = $(".panelControlCarruselDestacados");

    for (i = 0; i < $(carruselesDestacados).length; i++) {

        InicializarCarruselDestacados($(carruselesDestacados[i]));

    }
}

function inicializarVisualizadores() {

    visualizadores = $(".panelControlVisualizador");

    for (i = 0; i < $(visualizadores).length; i++) {
        InicializarVisualizador($(visualizadores[i]));
    }
}

function inicializarMenusLateralesBlog() {

    menusLateralesBlog = $(".panelControlMenuLateralBlog").find(".enlaceMenuLateralBlog a");

    for (i = 0; i < $(menusLateralesBlog).length; i++) {
        InicializarMenuLateralBlog($(menusLateralesBlog[i]));
    }
}

/* TOOLTIPS EN MISMO BLOQUE*/
/***************************/

function InicializarToolTips() {
    
    $(".panelTooltip").parent().hover(mostrarToolTip, ocultarToolTip);
    
}

function mostrarToolTip() {
    
    tooltip = $(this).find(".panelTooltip");

    $(tooltip).show();

}

function ocultarToolTip() {

    tooltip = $(this).find(".panelTooltip");

    $(tooltip).hide();

}

/* TOOLTIPS EN VISUALIZADOR */
/****************************/

function InicializarToolTipsCarruseles() {

    $(".elementosToolTips .panelTooltip").parent().parent().parent().siblings(".visualizadorControlCarrusel").find("li a img").hover(mostrarToolTipCarruselImagen, ocultarToolTipCarruselImagen);
    $(".elementosToolTips .panelTooltip").hover(mostrarToolTipCarrusel, ocultarToolTipCarrusel);

    $(".padreToolTip .panelTooltip").parent().parent().parent().siblings(".contenedorElementosCarruselDestacados").find("li a img").hover(mostrarToolTipCarruselImagen, ocultarToolTipCarruselImagen);
    $(".padreToolTip .panelTooltip").hover(mostrarToolTipCarrusel, ocultarToolTipCarrusel);
}

function mostrarToolTipCarruselImagen() {
    
    tooltip = $(this).parent().parent().parent().parent().parent().find(".panelTooltip");

    $(tooltip).hide();

    indice = parseInt($(this).attr("indice"));

    $(tooltip[indice]).show();

}

function ocultarToolTipCarruselImagen() {

    tooltip = $(this).parent().parent().parent().parent().parent().find(".panelTooltip");

    $(tooltip).hide();

}

function mostrarToolTipCarruselImagenDestacado() {

    tooltip = $(this).parent().parent().parent().parent().parent().find(".panelTooltip");

    $(tooltip).hide();

    indice = parseInt($(this).attr("indice"));

    $(tooltip[indice]).show();

}

function ocultarToolTipCarruselImagenDestacado() {

    tooltip = $(this).parent().parent().parent().parent().parent().find(".panelTooltip");

    $(tooltip).hide();

}


function mostrarToolTipCarrusel() {

    altura = $(this).height();

    $(this).show();

}

function ocultarToolTipCarrusel() {

    $(this).hide();

//    $(this).parent().parent().height(0);
    //$(tooltip).parents(".contenedorElementosToolTipsCarruselDestacados").height(altura); height(0);

}

/* GENERICO CARRUSSEL */
/**********************/

function inicializarCarrusel(classeCss) {

    carruseles = $(classeCss);

    for (i = 0; i < $(carruseles).length; i++) {

        InicializarCarrusel($(carruseles[i]));

    }
}

function InicializarCarrusel(objeto) {

    flechaIzquierda = $(objeto).find(".flechaIzquierda");
    flechaDerecha = $(objeto).find(".flechaDerecha");

    $(flechaIzquierda).click(desplazarIzquierdaCarrusel);
    $(flechaDerecha).click(desplazarDerechaCarrusel);

    numeroElementos = parseInt($(objeto).attr("numeroElementos"));
    numeroElementosAMostrar = parseInt($(objeto).attr("numeroElementosMostrados"));

    if (numeroElementos <= numeroElementosAMostrar) {
        ocultaFlecha($(flechaIzquierda));
        ocultaFlecha($(flechaDerecha));
    } else {
        ocultaFlecha($(flechaIzquierda));
    }
}

function desplazarIzquierdaCarrusel() {

    var contenedor = $(this).parent();

    flechaIzquierda = $(contenedor).find(".flechaIzquierda");
    flechaDerecha = $(contenedor).find(".flechaDerecha");

    anchoElemento = parseInt($(contenedor).attr("anchoElementos"));
    numeroElementos = parseInt($(contenedor).attr("numeroElementos"));
    numeroElementosAMostrar = parseInt($(contenedor).attr("numeroElementosMostrados"));
    numeroElementoInicial = parseInt($(contenedor).attr("numeroElementoInicial"));

    elementosAnimables = $(contenedor).find("li");
    tooltips = $(contenedor).find(".panelTooltip");
    barraAnimable = $(contenedor).find(".slider");
    anchoUnidadDesplazamientoBarra = parseInt($(contenedor).attr("anchoUnidadDesplazamientoBarra"));

    if (numeroElementoInicial - numeroElementosAMostrar >= 1) {
        if (numeroElementoInicial - numeroElementosAMostrar == 1) ocultaFlecha($(flechaIzquierda));
        $(elementosAnimables).animate({ "left": "+=" + anchoElemento * numeroElementosAMostrar }, "slow");
        $(tooltips).animate({ "left": "+=" + anchoElemento * numeroElementosAMostrar }, "slow");
        $(barraAnimable).animate({ "left": "-=" + anchoUnidadDesplazamientoBarra * numeroElementosAMostrar }, "slow");
        numeroElementoInicial -= numeroElementosAMostrar;
        $(contenedor).attr("numeroElementoInicial", numeroElementoInicial);
        muestraFlecha($(flechaDerecha));
    } else {

        cantidadElementosAMostrar = 0;

        while (numeroElementoInicial > 1) {
            numeroElementoInicial--;
            cantidadElementosAMostrar++;
        }
        $(contenedor).attr("numeroElementoInicial", numeroElementoInicial);
        $(elementosAnimables).animate({ "left": "+=" + anchoElemento * cantidadElementosAMostrar }, "slow");
        $(tooltips).animate({ "left": "+=" + anchoElemento * cantidadElementosAMostrar }, "slow");
        $(barraAnimable).animate({ "left": "-=" + anchoUnidadDesplazamientoBarra * cantidadElementosAMostrar }, "slow");
        muestraFlecha($(flechaDerecha));
        ocultaFlecha($(flechaIzquierda));
    }

}

function desplazarDerechaCarrusel() {

    var contenedor = $(this).parent();

    flechaIzquierda = $(contenedor).find(".flechaIzquierda");
    flechaDerecha = $(contenedor).find(".flechaDerecha");

    anchoElemento = parseInt($(contenedor).attr("anchoElementos"));
    numeroElementos = parseInt($(contenedor).attr("numeroElementos"));
    numeroElementosAMostrar = parseInt($(contenedor).attr("numeroElementosMostrados"));
    numeroElementoInicial = parseInt($(contenedor).attr("numeroElementoInicial"));

    elementosAnimables = $(contenedor).find("li");
    tooltips = $(contenedor).find(".panelTooltip");
    barraAnimable = $(contenedor).find(".slider");
    anchoUnidadDesplazamientoBarra = parseInt($(contenedor).attr("anchoUnidadDesplazamientoBarra"));

    if (numeroElementoInicial + numeroElementosAMostrar <= (numeroElementos - numeroElementosAMostrar)) {

        $(elementosAnimables).animate({ "left": "-=" + anchoElemento * numeroElementosAMostrar }, "slow");
        $(tooltips).animate({ "left": "-=" + anchoElemento * numeroElementosAMostrar }, "slow");
        $(barraAnimable).animate({ "left": "+=" + anchoUnidadDesplazamientoBarra * numeroElementosAMostrar }, "slow");
        numeroElementoInicial += numeroElementosAMostrar;
        $(contenedor).attr("numeroElementoInicial", numeroElementoInicial);
        muestraFlecha($(flechaIzquierda));
    } else {
        
        cantidadElementosAMostrar = 0;

        while (numeroElementoInicial < ((numeroElementos + 1) - numeroElementosAMostrar)) {
            numeroElementoInicial++;
            cantidadElementosAMostrar++;
        }
        $(contenedor).attr("numeroElementoInicial", numeroElementoInicial);
        $(elementosAnimables).animate({ "left": "-=" + anchoElemento * cantidadElementosAMostrar }, "slow");
        $(tooltips).animate({ "left": "-=" + anchoElemento * cantidadElementosAMostrar }, "slow");
        $(barraAnimable).animate({ "left": "+=" + anchoUnidadDesplazamientoBarra * cantidadElementosAMostrar }, "slow");
        muestraFlecha($(flechaIzquierda));
        ocultaFlecha($(flechaDerecha));
    }

}

function ocultaFlecha(flecha) {

    $(flecha).fadeOut("slow");
}

function muestraFlecha(flecha) {

    $(flecha).fadeIn("slow");
}

function ocultaFlechas(flecha1, flecha2) {

    ocultaFlecha($(flecha1));
    ocultaFlecha($(flecha2));
}

function muestraFlechas(flecha1, flecha2) {

    muestraFlecha($(flecha1));
    muestraFlecha($(flecha2));
}

/* CARRUSEL PROMOCIONES */
/************************/

animandoCarruselPromociones = false;

function inicializarCarruselesPromociones() {

    $(".promocionSeleccionable").click(seleccionarPromocion);

    $(".promocionSeleccionada").click(seleccionarPromocion);

    mostrarLineaPromocion($(".promocionSeleccionada"));

    $(".panelControlCarruselPromociones .mostrarTodos").click(mostrarTodasPromos);

}

function seleccionarPromocion() {

    identificador = $(this).attr("id");

    $(this).addClass("promocionSeleccionada");

    $(this).removeClass("promocionSeleccionable");

    promocionesSeleccionadas = $(this).siblings(".promocionSeleccionada");

    $(promocionesSeleccionadas).removeClass("promocionSeleccionada");

    $(promocionesSeleccionadas).addClass("promocionSeleccionable");

    mostrarLineaPromocion($(this));

    PageMethods.SeleccionarPromocion(identificador, null);
}

function deseleccionarPromocion(ref) {

    promos = $(".panelControlCarruselPromociones").find(".elementoControlCarrusel");
    
    promoSeleccionada = null;
    
    for (i = 0; i < $(promos).length; i++) {
        
        if($(promos[i]).attr("id") == ref)
            promoSeleccionada = $(promos[i]);
    }

    if (promoSeleccionada != null) {
     
        $(promoSeleccionada).removeClass("promocionSeleccionada");

        $(promoSeleccionada).addClass("promocionSeleccionable");

        PageMethods.SeleccionarPromocion(0, null);
    }
}

function mostrarTodasPromos() {
    
    if (!animandoCarruselPromociones) {

        animandoCarruselPromociones = true;

        panel = $(this).parents(".panelControlCarrusel");

        flechaIzq = $(panel).find(".flechaIzquierda");

        flechaDer = $(panel).find(".flechaDerecha");

        visualizador = $(panel).find(".visualizadorControlCarrusel");

        listado = $(visualizador).find(".elementosControlCarrusel");

        elementos = $(listado).children();

        totalElementos = $(elementos).length;

        elementosMostrados = parseInt($(panel).attr("numeroelementosmostrados"));

        alturaElemento = $(elementos[0]).height();

        if (totalElementos > elementosMostrados && elementosMostrados > 0) {

            $(this).removeClass("mostrarTodos");

            $(this).addClass("ocultarTodos");

            $(this).unbind("click");

            $(flechaDer).unbind("click");

            $(flechaIzq).unbind("click");

            $(this).click(ocultarTodasPromos);

            ocultaFlechas($(flechaIzq), $(flechaDer));

            filas = (totalElementos / elementosMostrados).toString().split(".")[0];

            alturaFinal = alturaElemento * filas;

            anchuraListado = $(listado).width();

            anchuraFinal = $(visualizador).width();

            posicionElementos = $(elementos[0]).position().left;

            $(panel).animate({ height: "+=" + alturaFinal });

            $(visualizador).animate({ height: "+=" + alturaFinal });

            $(listado).animate({ width: "-=" + (anchuraListado - anchuraFinal) });
            
            $(elementos).animate({ left: "-=" + posicionElementos });
            
            $(panel).attr("numeroElementoInicial", "1");
        }
        
        setTimeout(function () {

            animandoCarruselPromociones = false;
        }, 1000);
    }
}

function ocultarTodasPromos() {
    
    if (!animandoCarruselPromociones) {
        
        animandoCarruselPromociones = true;

        panel = $(this).parents(".panelControlCarrusel");

        flechaDer = $(panel).find(".flechaDerecha");

        visualizador = $(panel).find(".visualizadorControlCarrusel");

        listado = $(visualizador).find(".elementosControlCarrusel");

        elementos = $(listado).children();

        totalElementos = $(elementos).length;

        elementosMostrados = parseInt($(panel).attr("numeroelementosmostrados"));

        alturaElemento = $(elementos[0]).height();

        anchuraElemento = $(elementos[0]).width();

        if (totalElementos > elementosMostrados && elementosMostrados > 0) {

            $(this).removeClass("ocultarTodos");

            $(this).addClass("mostrarTodos");

            $(this).unbind("click");

            $(this).click(mostrarTodasPromos);

            muestraFlecha($(flechaDer));

            filas = 1;

            alturaFinal = $(visualizador).height() - (alturaElemento * filas);

            anchuraListado = $(listado).width();

            anchuraFinal = (totalElementos * anchuraElemento);

            posicionElementos = $(elementos[0]).position().left;

            $(panel).animate({ height: "-=" + alturaFinal });

            $(visualizador).animate({ height: "-=" + alturaFinal });

            $(listado).animate({ width: "+=" + (anchuraFinal - anchuraListado) });

        }

        setTimeout(function () {

            $(flechaDer).click(desplazarDerechaCarrusel);

            $(flechaIzq).click(desplazarIzquierdaCarrusel);

            animandoCarruselPromociones = false;

        }, 1000);
    }
}

function mostrarLineaPromocion(promocion) {
    
    if ($(promocion) != null && $(promocion).attr("descuento") !== undefined) {
        
        importeDescuento = parseFloat($(promocion).attr("descuento").toString().split("€")[0].replace(",", "."));

        $(".filaPromocionSeleccionada").show();

        referencia = $(promocion).attr("id");

        concepto = $(promocion).attr("concepto");

        descuento = $(promocion).attr("descuento");

        precioCalculado = $(promocion).attr("total");

        eliminar = $(".filaPromocionSeleccionada").find(".eliminar");

        $(".filaPromocionSeleccionada").attr("referencia", referencia);

        $(".concepto").html(concepto);

        if (parseFloat(descuento.replace(",", ".").split("€")[0]) >= 0)
            $(".descuento").addClass("oculto");
        else
            $(".descuento").removeClass("oculto");

        $(".descuento").html(descuento);

        $(".valorTotal").html(precioCalculado);

        $(eliminar).click(ocultarLineaPromocion);
     
    }
}

function ocultarLineaPromocion() {

    filaPromocionSeleccionada = $(this).parents(".filaPromocionSeleccionada");

    $(filaPromocionSeleccionada).hide();

    referencia = $(filaPromocionSeleccionada).attr("referencia");
    
    precioCalculado = recalcularImporte($(".descuento"));

    eliminar = $(".filaPromocionSeleccionada").find(".eliminar");

    $(".valorTotal").html(precioCalculado + " €");

    $(eliminar).unbind();

    deseleccionarPromocion(referencia);
}

function recalcularImporte(descuento) {

    importe = parseFloat($(descuento).html().split("€")[0].replace(",","."));

    total = parseFloat($(".valorTotal").html().split("€")[0].replace(",", "."));
    
    return (total - importe).toString().replace(".", ",");
}

/* CONTROL DESTACADOS */
/**********************/

var animandoseCtrlDestacados = false;

function InicializarDestacado(objeto){
    
    indicadoresControlDestacados = $(objeto).find("ul li");  
        
    $(indicadoresControlDestacados).hover(cargarMouseOnIndicadoresCtrlDestacados, cargarMouseOutIndicadoresCtrlDestacados);
    $(indicadoresControlDestacados).click(seleccionaElementoCtrlDestacados);            

    animarCtrlDestacados(objeto);
        
}

function animarCtrlDestacados(objeto){

    animacionEnMarchaControlDestacados = $(objeto).attr("animandose");
    posicionControlDestacados = parseInt($(objeto).attr("posicion"));
    numeroElementosControlDestacados = parseInt($(objeto).attr("numeroElementos"));
    tiempoAnimacionControlDestacados = parseInt($(objeto).attr("tiempoAnimacion"));

    if(animacionEnMarchaControlDestacados == "true"){
    
        if(posicionControlDestacados < numeroElementosControlDestacados - 1 ){
            posicionControlDestacados++;
            $(objeto).attr("posicion", posicionControlDestacados);
        } else{
            posicionControlDestacados = 0;
            $(objeto).attr("posicion", posicionControlDestacados);
        }   
        
        muestraElementoCtrlDestacados(objeto);

    }
    
    setTimeout(function (){
        animarCtrlDestacados(objeto);
    }, tiempoAnimacionControlDestacados);
}

function cargarMouseOnIndicadoresCtrlDestacados(){

    if($(this).attr("seleccionado") == "false"){
        $(this).removeClass("c1 cf7");
        $(this).addClass("c5 cf2");
    }
    
}

function cargarMouseOutIndicadoresCtrlDestacados(){
        
    if($(this).attr("seleccionado") == "false" ){            
        $(this).removeClass("c5 cf2");
        $(this).addClass("c1 cf7");
    }
    
}

function muestraElementoCtrlDestacados(objeto){
    
    elementosControlDestacados = $(objeto).find(".contenedorControlDestacados");
    posicionControlDestacados = parseInt($(objeto).attr("posicion"));
    $(elementosControlDestacados).fadeOut("slow");
    
    focusarIndicadorCtrlDestacados(objeto);
    $(elementosControlDestacados[posicionControlDestacados]).fadeIn("slow");
}

function focusarIndicadorCtrlDestacados(objeto){

    indicadoresControlDestacados = $(objeto).find("ul li");
    posicionControlDestacados = parseInt($(objeto).attr("posicion"));

    $(indicadoresControlDestacados).removeClass("c5 cf2");
    $(indicadoresControlDestacados).addClass("c1 cf7");
    $(indicadoresControlDestacados).attr("seleccionado", "false");

    $(indicadoresControlDestacados[posicionControlDestacados]).removeClass("c1 cf7");
    $(indicadoresControlDestacados[posicionControlDestacados]).addClass("c5 cf2");
    $(indicadoresControlDestacados[posicionControlDestacados]).attr("seleccionado", "true");
        
}

function seleccionaElementoCtrlDestacados(){
    objeto = $(this).parent().parent();
    indicadoresControlDestacados = $(objeto).find("ul li");
    tiempoAnimacionControlDestacados = parseInt($(objeto).attr("tiempoAnimacion"));

    if($(this).attr("seleccionado") == "false" && $(objeto).attr("animandose") == "true"){        
        $(objeto).attr("animandose", "false");
        $(objeto).attr("posicion", $(indicadoresControlDestacados).index($(this)));
        
        muestraElementoCtrlDestacados(objeto);
        
        //setTimeout(function(){ 
            $(objeto).attr("animandose", "true");
            //animarCtrlDestacados(objeto); 
        //}, tiempoAnimacionControlDestacados);
    }
}

/* CONTROL CARRUSSEL DESTACADOS */
/********************************/

var animandoControlCassuselDestacados = false;

function InicializarCarruselDestacados(objeto){

    elementosControlCarruselDestacados = $(objeto).find("ul li");
    elementosToolTips = $(objeto).find(".elementosToolTips .padreToolTip"); 
    numeroElementosControlCarruselDestacados = $(elementosControlCarruselDestacados).length;
    
    anchoElementoMostradoControlCarruselDestacados = parseInt($(objeto).find("ul").attr("anchoElementoDesplegado"));
    anchoImagenElementoControlCarruselDestacados = parseInt($(objeto).find("ul").attr("anchoImagenElemento"));
    margenDerechoElementosControlCarruselDestacados = parseInt($(objeto).find("ul").attr("margenElementos"));
    elementoMostradoControlCarruselDestacados = parseInt($(objeto).find("ul").attr("elementoMostrado"));
    
    $(objeto).find("ul").width(((anchoImagenElementoControlCarruselDestacados + margenDerechoElementosControlCarruselDestacados) * numeroElementosControlCarruselDestacados) + anchoElementoMostradoControlCarruselDestacados);
    
    valorDesplazamientoElementoMostradoControlCarruselDestacados = anchoElementoMostradoControlCarruselDestacados - anchoImagenElementoControlCarruselDestacados;
    valorDesplazamientoElementosControlCarruselDestacados = anchoElementoMostradoControlCarruselDestacados - (valorDesplazamientoElementoMostradoControlCarruselDestacados - margenDerechoElementosControlCarruselDestacados);
    
    $(objeto).find(".botonDerechaControlCarruselDestacados").click(mostrarSiguienteElementoCtrlCarruselDestacados);
    $(objeto).find(".botonIzquierdaControlCarruselDestacados").click(mostrarAnteriorElementoCtrlCarruselDestacados);

    $(objeto).find(".botonDerechaControlCarruselDestacados").mouseover(function oculta() { $(".panelTooltipCarrusel").hide(); });
    $(objeto).find(".botonIzquierdaControlCarruselDestacados").mouseover(function oculta1() { $(".panelTooltipCarrusel").hide(); });

    $(elementosControlCarruselDestacados[0]).width(anchoElementoMostradoControlCarruselDestacados);
    $(elementosToolTips[0]).width(anchoElementoMostradoControlCarruselDestacados);

}

function mostrarSiguienteElementoCtrlCarruselDestacados(){

    if(!animandoControlCassuselDestacados){        

        animandoControlCassuselDestacados = true;
        
        objeto = $(this).parents(".panelControlCarruselDestacados");

        elementosControlCarruselDestacados = $(objeto).find("ul li");
        elementosToolTips = $(objeto).find(".elementosToolTips .padreToolTip"); 
        numeroElementosControlCarruselDestacados = $(elementosControlCarruselDestacados).length;
        
        anchoElementoMostradoControlCarruselDestacados = parseInt($(objeto).find("ul").attr("anchoElementoDesplegado"));
        anchoImagenElementoControlCarruselDestacados = parseInt($(objeto).find("ul").attr("anchoImagenElemento"));
        margenDerechoElementosControlCarruselDestacados = parseInt($(objeto).find("ul").attr("margenElementos"));
        elementoMostradoControlCarruselDestacados = parseInt($(objeto).find("ul").attr("elementoMostrado"));
        numeroElementosMostradosControlCarruselDestacados = parseInt($(objeto).find("ul").attr("numeroElementosMostrados"));
        
        valorDesplazamientoElementoMostradoControlCarruselDestacados = anchoElementoMostradoControlCarruselDestacados - anchoImagenElementoControlCarruselDestacados;
        valorDesplazamientoElementosControlCarruselDestacados = anchoElementoMostradoControlCarruselDestacados - (valorDesplazamientoElementoMostradoControlCarruselDestacados - margenDerechoElementosControlCarruselDestacados);

        
        if(elementoMostradoControlCarruselDestacados <= (numeroElementosControlCarruselDestacados - numeroElementosMostradosControlCarruselDestacados - 1)){
            
            setTimeout(function () {

                $(elementosControlCarruselDestacados[elementoMostradoControlCarruselDestacados]).animate({ width: "-=" + valorDesplazamientoElementoMostradoControlCarruselDestacados });
                $(elementosToolTips[elementoMostradoControlCarruselDestacados]).animate({ width: "-=" + valorDesplazamientoElementoMostradoControlCarruselDestacados });

            }, 100);
                
            setTimeout(function(){   
            
                elementoMostradoControlCarruselDestacados++;  
                $(objeto).find("ul").attr("elementoMostrado", elementoMostradoControlCarruselDestacados.toString());
                $(elementosControlCarruselDestacados[elementoMostradoControlCarruselDestacados]).animate({ width: "+=" + valorDesplazamientoElementoMostradoControlCarruselDestacados });
                $(elementosToolTips[elementoMostradoControlCarruselDestacados]).animate({ width: "+=" + valorDesplazamientoElementoMostradoControlCarruselDestacados });

            }, 110);
            
            setTimeout(function(){

                $(elementosControlCarruselDestacados).animate({ left: "-=" + valorDesplazamientoElementosControlCarruselDestacados });
                $(elementosToolTips).animate({ left: "-=" + valorDesplazamientoElementosControlCarruselDestacados });
                animandoControlCassuselDestacados = false;

            }, 120);
        } else if( elementoMostradoControlCarruselDestacados < numeroElementosControlCarruselDestacados - 1){
        
            setTimeout(function(){

                $(elementosControlCarruselDestacados[elementoMostradoControlCarruselDestacados]).animate({ width: "-=" + valorDesplazamientoElementoMostradoControlCarruselDestacados });
                $(elementosToolTips[elementoMostradoControlCarruselDestacados]).animate({ width: "-=" + valorDesplazamientoElementoMostradoControlCarruselDestacados });

            }, 100);
                
            setTimeout(function(){   
            
                elementoMostradoControlCarruselDestacados++;    
                $(objeto).find("ul").attr("elementoMostrado", elementoMostradoControlCarruselDestacados.toString());
                $(elementosControlCarruselDestacados[elementoMostradoControlCarruselDestacados]).animate({ width: "+=" + valorDesplazamientoElementoMostradoControlCarruselDestacados });
                $(elementosToolTips[elementoMostradoControlCarruselDestacados]).animate({ width: "+=" + valorDesplazamientoElementoMostradoControlCarruselDestacados });
                animandoControlCassuselDestacados = false;

            }, 110);

        } else {

            animandoControlCassuselDestacados = false;
        }
        
    } else {
    
        animandoControlCassuselDestacados = false;
    }
}

function mostrarAnteriorElementoCtrlCarruselDestacados(){
    if(!animandoControlCassuselDestacados){

        animandoControlCassuselDestacados = true;
        
        objeto = $(this).parents(".panelControlCarruselDestacados");

        elementosControlCarruselDestacados = $(objeto).find("ul li");
        elementosToolTips = $(objeto).find(".elementosToolTips .padreToolTip"); 
        numeroElementosControlCarruselDestacados = $(elementosControlCarruselDestacados).length;
        
        anchoElementoMostradoControlCarruselDestacados = parseInt($(objeto).find("ul").attr("anchoElementoDesplegado"));
        anchoImagenElementoControlCarruselDestacados = parseInt($(objeto).find("ul").attr("anchoImagenElemento"));
        margenDerechoElementosControlCarruselDestacados = parseInt($(objeto).find("ul").attr("margenElementos"));
        elementoMostradoControlCarruselDestacados = parseInt($(objeto).find("ul").attr("elementoMostrado"));
        numeroElementosMostradosControlCarruselDestacados = parseInt($(objeto).find("ul").attr("numeroElementosMostrados"));

        valorDesplazamientoElementoMostradoControlCarruselDestacados = anchoElementoMostradoControlCarruselDestacados - anchoImagenElementoControlCarruselDestacados;
        valorDesplazamientoElementosControlCarruselDestacados = anchoElementoMostradoControlCarruselDestacados - (valorDesplazamientoElementoMostradoControlCarruselDestacados - margenDerechoElementosControlCarruselDestacados);
        
        if(elementoMostradoControlCarruselDestacados > 0){

            if (elementoMostradoControlCarruselDestacados <= (numeroElementosControlCarruselDestacados - numeroElementosMostradosControlCarruselDestacados)) {

                setTimeout(function(){

                    $(elementosControlCarruselDestacados[elementoMostradoControlCarruselDestacados]).animate({ width: "-=" + valorDesplazamientoElementoMostradoControlCarruselDestacados });
                    $(elementosToolTips[elementoMostradoControlCarruselDestacados]).animate({ width: "-=" + valorDesplazamientoElementoMostradoControlCarruselDestacados });

                }, 70);
                    
                setTimeout(function(){

                    $(elementosControlCarruselDestacados).animate({ left: "+=" + valorDesplazamientoElementosControlCarruselDestacados });
                    $(elementosToolTips).animate({ left: "+=" + valorDesplazamientoElementosControlCarruselDestacados });    
                    
                }, 450);
                
                setTimeout(function(){
                
                    elementoMostradoControlCarruselDestacados--;  
              
                    $(objeto).find("ul").attr("elementoMostrado", elementoMostradoControlCarruselDestacados.toString());

                    $(elementosControlCarruselDestacados[elementoMostradoControlCarruselDestacados]).animate({ width: "+=" + valorDesplazamientoElementoMostradoControlCarruselDestacados });
                    $(elementosToolTips[elementoMostradoControlCarruselDestacados]).animate({ width: "+=" + valorDesplazamientoElementoMostradoControlCarruselDestacados });
                
                    animandoControlCassuselDestacados = false;
                    
                }, 900);
            } else if (elementoMostradoControlCarruselDestacados > (numeroElementosControlCarruselDestacados - numeroElementosMostradosControlCarruselDestacados)) {

                setTimeout(function(){

                    $(elementosControlCarruselDestacados[elementoMostradoControlCarruselDestacados]).animate({ width: "-=" + valorDesplazamientoElementoMostradoControlCarruselDestacados });
                    $(elementosToolTips[elementoMostradoControlCarruselDestacados]).animate({ width: "-=" + valorDesplazamientoElementoMostradoControlCarruselDestacados });

                }, 70);
                
                setTimeout(function(){
                
                    elementoMostradoControlCarruselDestacados--;        
                    $(objeto).find("ul").attr("elementoMostrado", elementoMostradoControlCarruselDestacados.toString());
                    $(elementosControlCarruselDestacados[elementoMostradoControlCarruselDestacados]).animate({ width: "+=" + valorDesplazamientoElementoMostradoControlCarruselDestacados });
                    $(elementosToolTips[elementoMostradoControlCarruselDestacados]).animate({ width: "+=" + valorDesplazamientoElementoMostradoControlCarruselDestacados });
                    animandoControlCassuselDestacados = false;

                }, 900);
                
            } else {
            
                animandoControlCassuselDestacados = false;
                
            }          
            
        } else {
        
            animandoControlCassuselDestacados = false;
            
        }
        
    }
}


/* CONTROL VISUALIZADOR */
/************************/

var animandoseCtrlVisualizador = false;

function inicializarVisualizadores() {

    visualizadores = $(".panelControlVisualizador");

    for (i = 0; i < $(visualizadores).length; i++) {
        InicializarVisualizador($(visualizadores[i]));
    }
}

function InicializarVisualizador(objeto) {

    imagen = $(objeto).find(".visualizadorImagenesControlVisualizador img");
    texto = $(objeto).find("p");

    animables = $(objeto).find("ul li");
    thumbs = $(objeto).find("ul li img");

    flechaIzquierda = $(objeto).find(".flechaIzquierdaControlVisualizador");
    flechaDerecha = $(objeto).find(".flechaDerechaControlVisualizador");

    $(thumbs).click(mouseClickThumbsCtrlVisualizador);
    $(flechaIzquierda).click(desplazarIzquierdaCarruselCtrlVisualizador);
    $(flechaDerecha).click(desplazarDerechaCarruselCtrlVisualizador);

}

function mouseClickThumbsCtrlVisualizador() {

    if (!animandoseCtrlVisualizador) {
        animandoseCtrlVisualizador = true;

        focusarThumbCtrlVisualizador($(this));

        muestraIndiceCtrlVisualizador($(this));

        mostrarImagenCtrlVisualizador($(this));
    }
}

function muestraIndiceCtrlVisualizador(objeto) {

    texto = $(objeto).parents(".panelControlVisualizador").find("p");
    camposTexto = $(texto).find("span");
    campoIndice = $(camposTexto[0]);
    campoNombre = $(camposTexto[1]);
    indice = $(objeto).attr("indice");
    nombre = $(objeto).attr("alt");

    $(campoIndice).text(indice);
    $(campoNombre).text(nombre);

}

function focusarThumbCtrlVisualizador(objeto) {

    thumbs = $(objeto).parent("li").siblings().children("img");

    for (i = 0; i < $(thumbs).length; i++) {

        $(thumbs[i]).removeClass("seleccionado");

    }

    $(objeto).addClass("seleccionado");

}

function mostrarImagenCtrlVisualizador(objeto) {

    visualizadorImagen = $(objeto).parents(".panelControlVisualizador").find(".visualizadorImagenesControlVisualizador");
    enlace = $(visualizadorImagen).find("a");
    imagen = $(visualizadorImagen).find("img");
    hrefNuevo = $(objeto).attr("enlace");
    srcNuevo = $(objeto).attr("pathImagen");
    titleNuevo = $(objeto).attr("alt");

    alturaActual = $(objeto).parents(".panelControlVisualizador").find(".visualizadorImagenesControlVisualizador").height();


    $(imagen).fadeOut("slow");

    setTimeout(function () {
        modificarEnlaceImagenCtrlVisualizador(enlace, hrefNuevo, imagen, srcNuevo, titleNuevo, alturaActual);
    }, 800);

}

function modificarEnlaceImagenCtrlVisualizador(link, hrefNuevoLink, img, srcNuevoImg, titleNuevoImg, alturaInicial) {

    if ($(link) != null)
        $(link).attr("href", hrefNuevoLink);

    $(img).attr("src", srcNuevoImg);
    $(img).attr("title", titleNuevoImg);

    $(img).fadeIn("slow");

    animandoseCtrlVisualizador = false;
}

function redimensionarCtrlVisualizador(contenedor, valorInicial) {

    altura1 = parseInt(valorInicial);
    //altura2 = parseInt($(contenedor).parents(".panelControlVisualizador").find(".visualizadorImagenesControlVisualizador").height());
    altura2 = parseInt($(contenedor).height());

    diferencia = altura1 - altura2;

    $(contenedor).parents(".panelControlVisualizador").animate({ "height": "-=" + parseInt(diferencia) }, "slow");

    animandoseCtrlVisualizador = false;
}

function desplazarIzquierdaCarruselCtrlVisualizador() {

    var contenedor = $(this).parent().find(".visualizadorThumbsControlVisualizador ul");

    anchoElementoCtrlVisualizador = parseInt($(contenedor).attr("anchoElementos"));
    numeroElementosCtrlVisualizador = parseInt($(contenedor).attr("numeroElementos"));
    numeroElementosAMostrarCtrlVisualizador = parseInt($(contenedor).attr("numeroElementosMostrados"));
    numeroElementoInicialCtrlVisualizador = parseInt($(contenedor).attr("numeroElementoInicial"));

    elementosAnimablesCtrlVisualizador = $(contenedor).find("li");

    if (numeroElementoInicialCtrlVisualizador - numeroElementosAMostrarCtrlVisualizador >= 1) {

        $(elementosAnimablesCtrlVisualizador).animate({ "left": "+=" + anchoElementoCtrlVisualizador * numeroElementosAMostrarCtrlVisualizador }, "slow");

        numeroElementoInicialCtrlVisualizador -= numeroElementosAMostrarCtrlVisualizador;
        $(contenedor).attr("numeroElementoInicial", numeroElementoInicialCtrlVisualizador);

    } else {

        cantidadElementosAMostrarCtrlVisualizador = 0;

        while (numeroElementoInicialCtrlVisualizador > 1) {
            numeroElementoInicialCtrlVisualizador--;
            cantidadElementosAMostrarCtrlVisualizador++;
        }
        $(contenedor).attr("numeroElementoInicial", numeroElementoInicialCtrlVisualizador);
        $(elementosAnimablesCtrlVisualizador).animate({ "left": "+=" + anchoElementoCtrlVisualizador * cantidadElementosAMostrarCtrlVisualizador }, "slow");

    }
}

function desplazarDerechaCarruselCtrlVisualizador() {

    var contenedor = $(this).parent().find(".visualizadorThumbsControlVisualizador ul");

    anchoElementoCtrlVisualizador = parseInt($(contenedor).attr("anchoElementos"));
    numeroElementosCtrlVisualizador = parseInt($(contenedor).attr("numeroElementos"));
    numeroElementosAMostrarCtrlVisualizador = parseInt($(contenedor).attr("numeroElementosMostrados"));
    numeroElementoInicialCtrlVisualizador = parseInt($(contenedor).attr("numeroElementoInicial"));

    elementosAnimablesCtrlVisualizador = $(contenedor).find("li");

    if (numeroElementoInicialCtrlVisualizador + numeroElementosAMostrarCtrlVisualizador <= (numeroElementosCtrlVisualizador - numeroElementosAMostrarCtrlVisualizador)) {
        $(elementosAnimablesCtrlVisualizador).animate({ "left": "-=" + anchoElementoCtrlVisualizador * numeroElementosAMostrarCtrlVisualizador }, "slow");

        numeroElementoInicialCtrlVisualizador += numeroElementosAMostrarCtrlVisualizador;
        $(contenedor).attr("numeroElementoInicial", numeroElementoInicialCtrlVisualizador);
    } else {
        cantidadElementosAMostrarCtrlVisualizador = 0;

        while (numeroElementoInicialCtrlVisualizador < ((numeroElementosCtrlVisualizador + 1) - numeroElementosAMostrarCtrlVisualizador)) {
            numeroElementoInicialCtrlVisualizador++;
            cantidadElementosAMostrarCtrlVisualizador++;
        }
        $(contenedor).attr("numeroElementoInicial", numeroElementoInicialCtrlVisualizador);
        $(elementosAnimablesCtrlVisualizador).animate({ "left": "-=" + anchoElementoCtrlVisualizador * cantidadElementosAMostrarCtrlVisualizador }, "slow");

    }
}

/* CONTROL MENU LATERAL BLOG */
/*****************************/

function InicializarMenuLateralBlog(objeto){

    $(objeto).hover(mouseOverEnlacesCtrlMenuLateralBlog, mouseOutEnlacesCtrlMenuLateralBlog);        
        
}

function mouseOverEnlacesCtrlMenuLateralBlog(){

    if($(this).parent().attr("par") == "true")
        $(this).parent().removeClass("cf15");
        
    $(this).parent().toggleClass("cf5");       
}

function mouseOutEnlacesCtrlMenuLateralBlog(){

    $(this).parent().removeClass("cf5");
    
    if($(this).parent().attr("par") == "true")
        $(this).parent().addClass("cf15");
}


/* CONTROL CARRUSEL VERTICAL */
/*****************************/

var animandoseCarruselVertical = false;

function InicializarCarruselVertical(objeto) {

    flechaArribaCarruselVertical = $(objeto).children(".flechaArribaCtrlCarruselVertical");
    flechaAbajoCarruselVertical = $(objeto).children(".flechaAbajoCtrlCarruselVertical");

    $(flechaArribaCarruselVertical).click(desplazarArribaCarruselVertical);
    $(flechaAbajoCarruselVertical).click(desplazarAbajoCarruselVertical);

    elementos = $(objeto).find(".elementosCtrlCarruselVertical").children();

    $(elementos).css({ opacity: 0.75 });
    $(elementos).hover(mouseOverElementosCarruselVertical, mouseOutElementosCarruselVertical);

}

function desplazarArribaCarruselVertical() {

    if (!animandoseCarruselVertical) {

        animandoseCarruselVertical = true;

        var contenedor = $(this).parent().find(".visualizadorCtrlCarruselVertical ul");

        anchoElementoCtrlCarruselVertical = parseInt($(contenedor).attr("altoElementos"));
        numeroElementosCtrlCarruselVertical = parseInt($(contenedor).attr("numeroElementos"));
        numeroElementosAMostrarCtrlCarruselVertical = parseInt($(contenedor).attr("numeroElementosMostrados"));
        numeroElementoInicialCtrlCarruselVertical = parseInt($(contenedor).attr("numeroElementoInicial"));

        if (numeroElementoInicialCtrlCarruselVertical - numeroElementosAMostrarCtrlCarruselVertical >= 1) {

            $(contenedor).animate({ "top": "+=" + anchoElementoCtrlCarruselVertical * numeroElementosAMostrarCtrlCarruselVertical }, "slow");

            numeroElementoInicialCtrlCarruselVertical -= numeroElementosAMostrarCtrlCarruselVertical;
            $(contenedor).attr("numeroElementoInicial", numeroElementoInicialCtrlCarruselVertical);

        } else {

            cantidadElementosAMostrarCtrlCarruselVertical = 0;

            while (numeroElementoInicialCtrlCarruselVertical > 1) {

                numeroElementoInicialCtrlCarruselVertical--;
                cantidadElementosAMostrarCtrlCarruselVertical++;

            }
            $(contenedor).attr("numeroElementoInicial", numeroElementoInicialCtrlCarruselVertical);

            $(contenedor).animate({ "top": "+=" + anchoElementoCtrlCarruselVertical * cantidadElementosAMostrarCtrlCarruselVertical }, "slow");

        }

        animandoseCarruselVertical = false;
    }
}

function desplazarAbajoCarruselVertical() {

    if (!animandoseCarruselVertical) {

        animandoseCarruselVertical = true;
        var contenedor = $(this).parent().find(".visualizadorCtrlCarruselVertical ul");

        anchoElementoCtrlCarruselVertical = parseInt($(contenedor).attr("altoElementos"));
        numeroElementosCtrlCarruselVertical = parseInt($(contenedor).attr("numeroElementos"));
        numeroElementosAMostrarCtrlCarruselVertical = parseInt($(contenedor).attr("numeroElementosMostrados"));
        numeroElementoInicialCtrlCarruselVertical = parseInt($(contenedor).attr("numeroElementoInicial"));

        if (numeroElementoInicialCtrlCarruselVertical + numeroElementosAMostrarCtrlCarruselVertical <= (numeroElementosCtrlCarruselVertical - numeroElementosAMostrarCtrlCarruselVertical)) {

            $(contenedor).animate({ "top": "-=" + anchoElementoCtrlCarruselVertical * numeroElementosAMostrarCtrlCarruselVertical }, "slow");

            numeroElementoInicialCtrlCarruselVertical += numeroElementosAMostrarCtrlCarruselVertical;
            $(contenedor).attr("numeroElementoInicial", numeroElementoInicialCtrlCarruselVertical);

        } else {

            cantidadElementosAMostrarCtrlCarruselVertical = 0;

            while (numeroElementoInicialCtrlCarruselVertical < ((numeroElementosCtrlCarruselVertical + 1) - numeroElementosAMostrarCtrlCarruselVertical)) {

                numeroElementoInicialCtrlCarruselVertical++;
                cantidadElementosAMostrarCtrlCarruselVertical++;

            }
            $(contenedor).attr("numeroElementoInicial", numeroElementoInicialCtrlCarruselVertical);

            $(contenedor).animate({ "top": "-=" + anchoElementoCtrlCarruselVertical * cantidadElementosAMostrarCtrlCarruselVertical }, "slow");

        }

        animandoseCarruselVertical = false;
    }
}

function mouseOverElementosCarruselVertical() {

    $(this).animate({ "opacity": "+=" + 0.25 }, "fast");
}

function mouseOutElementosCarruselVertical() {

    $(this).animate({ "opacity": "-=" + 0.25 }, "fast");
}

/* CONTROL DESTACADOS AVANZADO */
/*******************************/

var animandoseCtrlDestacadosAvanzado = false;

function InicializarDestacadoAvanzado(objeto) {

    indicadoresControlDestacadosAvanzados = $(objeto).find("ul li");

    $(indicadoresControlDestacadosAvanzados).hover(cargarMouseOnIndicadoresCtrlDestacadosAvanzado, cargarMouseOutIndicadoresCtrlDestacadosAvanzado);
    $(indicadoresControlDestacadosAvanzados).click(seleccionaElementoCtrlDestacadosAvanzado);

    animarCtrlDestacadosAvanzado(objeto);

}

function animarCtrlDestacadosAvanzado(objeto) {

    animacionEnMarchaControlDestacadosAvanzado = $(objeto).attr("animandose");
    posicionControlDestacadosAvanzado = parseInt($(objeto).attr("posicion"));
    numeroElementosControlDestacadosAvanzado = parseInt($(objeto).attr("numeroElementos"));
    tiempoAnimacionControlDestacadosAvanzado = parseInt($(objeto).attr("tiempoAnimacion"));

    if (animacionEnMarchaControlDestacadosAvanzado == "true") {

        if (posicionControlDestacadosAvanzado < numeroElementosControlDestacadosAvanzado - 1) {
            posicionControlDestacadosAvanzado++;
            $(objeto).attr("posicion", posicionControlDestacadosAvanzado);
        } else {
            posicionControlDestacadosAvanzado = 0;
            $(objeto).attr("posicion", posicionControlDestacadosAvanzado);
        }

        muestraElementoCtrlDestacadosAvanzado(objeto);

    }

    setTimeout(function () {
        animarCtrlDestacadosAvanzado(objeto);
    }, tiempoAnimacionControlDestacadosAvanzado);
}

function cargarMouseOnIndicadoresCtrlDestacadosAvanzado() {

    if ($(this).attr("seleccionado") == "false") {
        $(this).removeClass("c1 cf7");
        $(this).addClass("c5 cf2");
    }

}

function cargarMouseOutIndicadoresCtrlDestacadosAvanzado() {

    if ($(this).attr("seleccionado") == "false") {
        $(this).removeClass("c5 cf2");
        $(this).addClass("c1 cf7");
    }

}

function muestraElementoCtrlDestacadosAvanzado(objeto) {
    elementosControlDestacadosAvanzado = $(objeto).find(".contenedorControlDestacadosAvanzado");
    posicionControlDestacadosAvanzado = parseInt($(objeto).attr("posicion"));
    $(elementosControlDestacadosAvanzado).fadeOut("slow");

    focusarIndicadorCtrlDestacadosAvanzado(objeto);
    $(elementosControlDestacadosAvanzado[posicionControlDestacadosAvanzado]).fadeIn("slow");

}

function focusarIndicadorCtrlDestacadosAvanzado(objeto) {

    indicadoresControlDestacadosAvanzado = $(objeto).find("ul li");
    posicionControlDestacadosAvanzado = parseInt($(objeto).attr("posicion"));

    $(indicadoresControlDestacadosAvanzado).removeClass("c5 cf2");
    $(indicadoresControlDestacadosAvanzado).addClass("c1 cf7");
    $(indicadoresControlDestacadosAvanzado).attr("seleccionado", "false");

    $(indicadoresControlDestacadosAvanzado[posicionControlDestacadosAvanzado]).removeClass("c1 cf7");
    $(indicadoresControlDestacadosAvanzado[posicionControlDestacadosAvanzado]).addClass("c5 cf2");
    $(indicadoresControlDestacadosAvanzado[posicionControlDestacadosAvanzado]).attr("seleccionado", "true");

}

function seleccionaElementoCtrlDestacadosAvanzado() {
    objeto = $(this).parent().parent();
    indicadoresControlDestacadosAvanzado = $(objeto).find("ul li");
    tiempoAnimacionControlDestacadosAvanzado = parseInt($(objeto).attr("tiempoAnimacion"));

    if ($(this).attr("seleccionado") == "false" && $(objeto).attr("animandose") == "true") {
        $(objeto).attr("animandose", "false");
        $(objeto).attr("posicion", $(indicadoresControlDestacadosAvanzado).index($(this)));

        muestraElementoCtrlDestacadosAvanzado(objeto);

        $(objeto).attr("animandose", "true");
    }
}


/* CONTROL HISTORIAL VISITAS */
/*****************************/

function inicializarControlesHistorialVisitas() {

    historiales = $(".panelControlHistorialVisitas");

    for (i = 0; i < $(historiales).length; i++) {

        InicializarHistorialVisitas($(historiales[i]));

    }
}

function InicializarHistorialVisitas(objeto) {

    flechaIzquierda = $(objeto).find(".flechaIzquierdaCarrusselHistorialVisitas");
    flechaDerecha = $(objeto).find(".flechaDerechaCarrusselHistorialVisitas");


    $(flechaIzquierda).click(desplazarIzquierdaCarruselHistorialVisitas);
    $(flechaDerecha).click(desplazarDerechaCarruselHistorialVisitas);
}

function desplazarIzquierdaCarruselHistorialVisitas() {

    var contenedor = $(this).parent();

    anchoElementoCtrlVisualizador = parseInt($(contenedor).attr("anchoElementos"));
    numeroElementosCtrlVisualizador = parseInt($(contenedor).attr("numeroElementos"));
    numeroElementosAMostrarCtrlVisualizador = parseInt($(contenedor).attr("numeroElementosMostrados"));
    numeroElementoInicialCtrlVisualizador = parseInt($(contenedor).attr("numeroElementoInicial"));

    elementosAnimablesCtrlVisualizador = $(contenedor).find("li");

    if (numeroElementoInicialCtrlVisualizador - numeroElementosAMostrarCtrlVisualizador >= 1) {

        $(elementosAnimablesCtrlVisualizador).animate({ "left": "+=" + anchoElementoCtrlVisualizador * numeroElementosAMostrarCtrlVisualizador }, "slow");

        numeroElementoInicialCtrlVisualizador -= numeroElementosAMostrarCtrlVisualizador;
        $(contenedor).attr("numeroElementoInicial", numeroElementoInicialCtrlVisualizador);

    } else {

        cantidadElementosAMostrarCtrlVisualizador = 0;

        while (numeroElementoInicialCtrlVisualizador > 1) {
            numeroElementoInicialCtrlVisualizador--;
            cantidadElementosAMostrarCtrlVisualizador++;
        }
        $(contenedor).attr("numeroElementoInicial", numeroElementoInicialCtrlVisualizador);
        $(elementosAnimablesCtrlVisualizador).animate({ "left": "+=" + anchoElementoCtrlVisualizador * cantidadElementosAMostrarCtrlVisualizador }, "slow");

    }

}

function desplazarDerechaCarruselHistorialVisitas() {

    var contenedor = $(this).parent();

    anchoElementoCtrlVisualizador = parseInt($(contenedor).attr("anchoElementos"));

    numeroElementosCtrlVisualizador = parseInt($(contenedor).attr("numeroElementos"));

    numeroElementosAMostrarCtrlVisualizador = parseInt($(contenedor).attr("numeroElementosMostrados"));

    numeroElementoInicialCtrlVisualizador = parseInt($(contenedor).attr("numeroElementoInicial"));

    elementosAnimablesCtrlVisualizador = $(contenedor).find("li");

    if (numeroElementoInicialCtrlVisualizador + numeroElementosAMostrarCtrlVisualizador <= (numeroElementosCtrlVisualizador - numeroElementosAMostrarCtrlVisualizador)) {
        $(elementosAnimablesCtrlVisualizador).animate({ "left": "-=" + anchoElementoCtrlVisualizador * numeroElementosAMostrarCtrlVisualizador }, "slow");

        numeroElementoInicialCtrlVisualizador += numeroElementosAMostrarCtrlVisualizador;
        $(contenedor).attr("numeroElementoInicial", numeroElementoInicialCtrlVisualizador);
    } else {
        cantidadElementosAMostrarCtrlVisualizador = 0;

        while (numeroElementoInicialCtrlVisualizador < ((numeroElementosCtrlVisualizador + 1) - numeroElementosAMostrarCtrlVisualizador)) {
            numeroElementoInicialCtrlVisualizador++;
            cantidadElementosAMostrarCtrlVisualizador++;
        }
        $(contenedor).attr("numeroElementoInicial", numeroElementoInicialCtrlVisualizador);
        $(elementosAnimablesCtrlVisualizador).animate({ "left": "-=" + anchoElementoCtrlVisualizador * cantidadElementosAMostrarCtrlVisualizador }, "slow");

    }
}


/* VALORACIONES */
/************************/

function inicializarValoraciones() {

    valoraciones = $(".valoracion");

    for (i = 0; i < $(valoraciones).length; i++) {

        InicializarValoraciones($(valoraciones[i]));
    }

}

function InicializarValoraciones(objeto) {

    $(objeto).mouseout(reiniciarValoracion);

    $(objeto).find("a").mouseover(mouseOverValoracion);

}

function reiniciarValoracion() {

    enlacesOn = parseInt($(this).attr("enlaceson"));

    enlaces = $(this).find("a");

    $(enlaces).attr("class", "estrella_off");

    for (i = 0; i < enlacesOn; i++) {

        $(enlaces[i]).attr("class", "estrella_on");
    }

}

function mouseOverValoracion() {

    enlaces = $(this).parent().find("a");

    $(enlaces).attr("class", "estrella_off");

    puntos = parseInt($(this).attr("title"));

    for (i = 0; i < $(enlaces).length; i++) {

        if (parseInt($(enlaces[i]).attr("title")) <= puntos)
            $(enlaces[i]).attr("class", "estrella_on");

    }
}

/* CONTROL SECCION */
/*******************/

function inicializarSeccion() {

    secciones = $(".panelSeccion");

    for (i = 0; i < $(secciones).length; i++) {

        InicializarSeccion($(secciones[i]));

    }

}

function InicializarSeccion(objeto) {

    $(objeto).attr("animandose", "true");

    var elementos = $(objeto).find(".elemento");

    $(elementos).hover(detenerAnimacion, reiniciarAnimacion);
        
    animarSeccion(objeto);

}

function detenerAnimacion() {

    $(this).parents(".panelSeccion").attr("animandose", "false");

}

function reiniciarAnimacion() {

    $(this).parents(".panelSeccion").attr("animandose", "true");

}

function animarSeccion(objeto) {

    animandose = $(objeto).attr("animandose");
    posicionSeccion = parseInt($(objeto).attr("posicion"));
    numeroElementosSeccion = parseInt($(objeto).attr("numeroElementos"));
    tiempoAnimacionSeccion = parseInt($(objeto).attr("tiempoAnimacion"));

    if (animandose == "true") {

        if (posicionSeccion < numeroElementosSeccion - 1) {
            posicionSeccion++;
            $(objeto).attr("posicion", posicionSeccion);
        } else {
            posicionSeccion = 0;
            $(objeto).attr("posicion", posicionSeccion);
        }

        muestraElementoSeccion(objeto);

    }

    setTimeout(function () {
        animarSeccion(objeto);
    }, tiempoAnimacionSeccion);
}

function muestraElementoSeccion(objeto) {

    elementosSeccion = $(objeto).find(".elemento");
    posicionSeccion = parseInt($(objeto).attr("posicion"));
    $(elementosSeccion).fadeOut("slow");

    $(elementosSeccion[posicionSeccion]).fadeIn("slow");
}

/* CONTROL TABS */
/****************/

function inicializarTabs() {

    var tabs = $(".panelTabs");

    for(i = 0; i < $(tabs).length; i++){

        InicializarTabs($(tabs[i]));

    }
}

function InicializarTabs(objeto){

    iniciarTabs(objeto);

    iniciarContenidos(objeto);

    mapearTabsContenidos(objeto);
}

function iniciarTabs(objeto) {

    var tabs = $(objeto).find(".tab");
    var tabsP = $(objeto).find(".tabP");

    var classeT0 = $(tabs[0]).attr("class");
    var classeT0On = classeT0.replace(/off$/ig, "on");

    var classeTP0 = $(tabsP[0]).attr("class");
    var classeTP0On = classeTP0.replace(/off$/ig, "on");

    $(tabs[0]).attr("class", " " + classeT0On);
    $(tabsP[0]).attr("class", " " + classeTP0On);

}

function iniciarContenidos(objeto) {

    contenidos = $(objeto).find(".contenido");

    $(contenidos).hide();

    $(contenidos[0]).show();

}

function mapearTabsContenidos(objeto) {

    var tabs = $(objeto).find(".tab");

    contenidos = $(objeto).find(".contenido");

    $(tabs).click(mostrarContenido);

}

function mostrarContenido() {

    indice = parseInt($(this).attr("indice"));

    contenidos = $(this).parent().siblings(".contenidos").find(".contenido");

    var tabs = $(this).siblings();

    for (i = 0; i < $(tabs).length; i++) {

        clasePOff = $(tabs[i]).find("p").attr("class").replace(/on$/ig, "off");
        $(tabs[i]).find("p").attr("class", clasePOff);

        claseOff = $(tabs[i]).attr("class").replace(/on$/ig, "off");
        $(tabs[i]).attr("class", claseOff);

    }

    clasePOn = $(this).find("p").attr("class").replace(/off$/ig, "on");
    $(this).find("p").attr("class", clasePOn);

    claseOn = $(this).attr("class").replace(/off$/ig, "on");
    $(this).attr("class", claseOn);

    $(contenidos).hide();

    $(contenidos[indice]).show();
        
}

/* CONTROL MENU PROA */
/*********************/

function inicializarMenusProa() {

    menusProa = $(".panelControlMenuProa");

    for (i = 0; i < $(menusProa).length; i++) {

        InicializarMenuProa($(menusProa[i]));

    }

}

function InicializarMenuProa(objeto) {

    pestanya = $(objeto).find(".subseccion");
    cerrar = $(objeto).find(".cerrar");

    $(pestanya).click(mostrarDestacadosMenuProa);
    $(cerrar).click(ocultarDestacadosMenuProa);

}

function mostrarDestacadosMenuProa() {

    $(this).siblings(".destacadosMenu").fadeIn("fast");

}

function ocultarDestacadosMenuProa() {

    $(this).parent(".destacadosMenu").fadeOut("fast");

}

/* CONTROL CESTA PROA */
/**********************/

function inicializarCestasProa() {
    
    cestas = $(".panelCestaProa");
    
    for (i = 0; i < $(cestas).length; i++) {
        
        InicializarCestaProa($(cestas[i]));
        
    }
}

function InicializarCestaProa(objeto) {
    
    elementos = $(objeto).find(".elemento");

    $(elementos[$(elementos).length - 1]).css("display", "block");

    flechaIzquierda = $(objeto).find(".flechaIzquierda");

    flechaDerecha = $(objeto).find(".flechaDerecha");

    $(flechaIzquierda).click(mostrarAnteriorCestaProa);

    $(flechaDerecha).click(mostrarSiguienteCestaProa);
}

function mostrarAnteriorCestaProa() {

    indice = parseInt($(this).parent().attr("indice"));
    
    elementos = $(this).parent().siblings(".elemento");

    if (indice > 0) {

        $(elementos).hide();

        $(elementos[--indice]).show();

        $(this).parent().attr("indice", indice);

    }

}

function mostrarSiguienteCestaProa() {

    indice = parseInt($(this).parent().attr("indice"));

    elementos = $(this).parent().siblings(".elemento");

    if (indice < $(elementos).length - 1) {
     
        $(elementos).hide();

        $(elementos[++indice]).show();

        $(this).parent().attr("indice", indice);

    }
}

/* CONTROL BOLETINES */
/*********************/

function inicializarBoletines() {

    boletines = $(".panelBoletines");

    for (i = 0; i < $(boletines).length; i++) {

        InicializarControlBoletin($(boletines[i]));

    }

}

function InicializarControlBoletin(objeto) {

    $(".rcbList li").click(muestraBoletines);

    anoMostrado = $(objeto).find(".rcbInput").val();

    elementosAMostrar = ".elemento" + anoMostrado;

    elementos = $(".panelBoletines").find(".elemento");

    elementosMostrados = $(".panelBoletines").find(elementosAMostrar);

    elementos.hide();

    elementosMostrados.show();
}

function muestraBoletines() {

    anoMostrado = $(this).text();

    elementosAMostrar = ".elemento" + anoMostrado;

    elementos = $(".panelBoletines").find(".elemento");

    elementosMostrados = $(".panelBoletines").find(elementosAMostrar);

    elementos.hide();

    elementosMostrados.show();
}

/* CONTROL AGENDA */
/******************/

function inicializarAgendas() {

    agendas = $(".panelAgenda");

    for (i = 0; i < $(agendas).length; i++) {

        InicializarAgenda($(agendas[i]));

    }

}

function InicializarAgenda(objeto) {

    dias = $(objeto).find(".dia");
    titulos = $(dias).find(".titulo");

    $(dias).hover(mouseOverDia, mouseOutDia);
    $(titulos).click(muestraActividad);
}

function muestraActividad() {

    indice = $(this).attr("indice");

    visualizadores = $(this).siblings(".visualizador");

    for (i = 0; i < $(visualizadores).length; i++) {

        if ($(visualizadores[i]).attr("indice") == indice) {

            actividad = $(visualizadores[i]).find(".actividad");

            alturaInicial = parseInt($(visualizadores[i]).outerHeight());

            alturaFinal = parseInt($(actividad).outerHeight());

            if (alturaInicial == 0) {
                $(visualizadores[i]).animate({ "height": "+=" + alturaFinal }, "slow");
                $(".contenidoCentral").animate({ "min-height": "+=" + alturaFinal }, "slow");
                $(".contenidoCentral").animate({ "height": "+=" + alturaFinal }, "slow");
            }
            else {
                $(visualizadores[i]).animate({ "height": "-=" + alturaFinal }, "slow");
                $(".contenidoCentral").animate({ "min-height": "-=" + alturaFinal }, "slow");
                $(".contenidoCentral").animate({ "height": "-=" + alturaFinal }, "slow");
            }
        }
    }
}


function mouseOverDia() {

    $(this).addClass("diaSeleccionado");

}

function mouseOutDia() {

    $(this).removeClass("diaSeleccionado");

}

/* PANELES COMPARTIR PAGINA */
/****************************/

function inicializarPanelesCompartir() {

    $(".rssImg").hover(mostrarRss, ocultarRss);
    $(".rss").hover(mantenerRss, soltarRss);
    $(".shaImg").hover(mostrarSha, ocultarSha);
    $(".sha").hover(mantenerSha, soltarSha);

}

function mostrarRss() {
    $(this).siblings(".rss").find(".subrss").show();
}

function ocultarRss() {
    $(this).siblings(".rss").find(".subrss").hide();
}

function mantenerRss() {
    $(this).find(".subrss").show();
}

function soltarRss() {
    $(this).find(".subrss").hide();
}

function mostrarSha() {
    $(this).siblings(".sha").find(".subsha").show();
}

function ocultarSha() {
    $(this).siblings(".sha").find(".subsha").hide();
}

function mantenerSha() {
    $(this).find(".subsha").show();
}

function soltarSha() {
    $(this).find(".subsha").hide();
}


/* CONTROLES ENLACE */
/****************************/


function inicializarEnlacesAleatorios() {

    $('.enlaces-aleatorios').each(function (index) {
        animarPanelEnlacesAleatorios(this);
    });

}

function animarPanelEnlacesAleatorios(objeto) {

    var numEnlaces = $(objeto).children().length;
    
    var indice = Math.floor(Math.random() * numEnlaces);

    $(objeto).attr('indice', indice);

    $(objeto).children().hide();

    $(objeto).find(' a:eq(' + indice + ')').fadeIn("slow");

    setInterval(function () { seguirAnimacionPanelEnlacesAleatorios(objeto); }, 4500);
}

function seguirAnimacionPanelEnlacesAleatorios(objeto) {

    var numEnlaces = $(objeto).children().length;

    var indice = $(objeto).attr('indice');

    indice++;

    if (indice > numEnlaces - 1) indice = 0;
    
    $(objeto).attr('indice', indice);

    $(objeto).children().hide();

    $(objeto).find(' a:eq(' + indice + ')').fadeIn("slow");
}
