PageSourceSearch

https://www.cajaruraldejaen.com/modules/custom/weg_header/js/header.js?tloyea

js cajaruraldejaen.com collected 2026-10-09 04:10:29 UTC 7,032 bytes, 184 lines download raw bytes

1//const { once } = require("gulp");
2
3(function ($, Drupal, drupalSettings) {
4
5  'use strict';
6
7  /**
8   * En el nuevo header nos aseguramos de que la región superior
9   * tenga siempre container-lg en desktop.
10   */
11  function ensureHeaderNuevoContainer() {
12    if ($('#header-nuevo').length && $(window).width() > 991) {
13      $('#header-nuevo #navbar-top .region-top-header').addClass('container-lg');
14    }
15  }
16
17  // Handler for .ready() called.
18  $(function () {
19    /* --------------------------------------------- */
20    // k - 20/10/2021
21    // Hay paginas que no tienen pagina padre dentro del menu, por lo que no se actica el active-trail del segundo nivel del menu.
22    // Se intenta activar en aquellas paginas que no lo tengan. Esta implementacion tiene 2 menus impresos, por lo que hay
23    // que ponerlo 2 veces.
24
25    // Menu fijo ( cuando no hace Scroll )
26    var menu_fijo_has_active_trail = $('.weg-menu-desktop > ul.nav > li.menu-item--active-trail');
27    console.log("lanzamiento de calculo", menu_fijo_has_active_trail);
28    if (menu_fijo_has_active_trail === null || menu_fijo_has_active_trail === undefined || menu_fijo_has_active_trail.length == 0) {
29      // Ponerlo en el primer hijo del segmento, que suele ser particulares
30      $('.weg-menu-desktop > ul.nav > li:first-child').addClass('menu-item--active-trail');
31    }
32
33    // Menu reducido Scroll
34    var menu_reducido_has_active_trail = $('.scrolled-menu > ul > li.menu-item--active-trail');
35    if (menu_reducido_has_active_trail === null || menu_reducido_has_active_trail === undefined || menu_reducido_has_active_trail.length == 0) {
36      $('.scrolled-menu > ul > li:first-child').addClass('menu-item--active-trail');
37    }
38
39    /*
40     * Header nuevo:
41     * Al cargar página, si estamos en desktop, forzamos container-lg.
42     */
43    ensureHeaderNuevoContainer();
44
45    /* --------------------------------------------- */
46  });
47
48  Drupal.behaviors.blogs_weg = {
49    attach: function (context, settings) {
50
51      var bloque = $('.block-block-weg-header');
52      var bloqueMobile = $('.menu-transversal-mobile');
53      var isruralvia = !!settings.block_weg_header_is_ruralvia;
54      var nonreducedmobile = !!settings.block_weg_header_reduced_mobile;
55      var nonreduceddesktop = !!settings.block_weg_header_reduced_desktop;
56      var isHeaderNuevo = $('#header-nuevo').length > 0;
57
58      /*
59       * Header nuevo:
60       * También lo aseguramos al entrar en el behavior de Drupal.
61       */
62      ensureHeaderNuevoContainer();
63
64      if ($('.weg-menu-desktop > ul.nav > li.nav-item.menu-item--expanded.menu-item--active-trail  > .outer-menu > .menu  li.menu-item--expanded.menu-item--active-trail').length == 1) {
65        $('body').addClass('menu-lv-3');
66      } else if ($('.weg-menu-desktop > ul.nav > li.nav-item.menu-item--expanded.menu-item--active-trail  > .outer-menu > .menu  li.menu-item--active-trail').length == 1) {
67        $('body').addClass('menu-lv-2');
68      }
69
70      if (isruralvia === true) {
71        $('.weg-header .block-weg-logo-rv').css('display', 'block');
72      }
73
74      $(window).on('scroll', function () {
75        if ($(window).width() > 991) {
76          //efectos en desktop
77          if (nonreduceddesktop === false) {
78
79            if ($("body").hasClass("scrolled")) {
80
81              bloque.addClass('scrolled');
82
83              bloque.find('.block-weg-block-logo .logo-entidad').hide();
84              bloque.find('.block-weg-block-logo .logo-espiga').show();
85
86              $('.block-weg-block-menu-transversal li:not(.hazte-cliente):not(.acceso-cliente)').hide();
87              bloque.find('.weg-cambio-idioma').hide();
88              bloque.find('.weg-icono-lupa-wrapper').hide();
89              bloque.find('.block-weg-block-logo-rv').hide();
90              bloque.find('.weg-menu-desktop').slideUp();
91              bloque.find('.weg-menu-desktop .menu-item--active-trail .outer-menu').hide('fast');
92
93              if (isHeaderNuevo) {
94                $('#header-nuevo #navbar-top .region-top-header').addClass('container-lg');
95              } else {
96                $('#navbar-top .region-top-header').removeClass('container-lg');
97              }
98
99              bloque.find('.scrolled-menu').show();
100
101            } else {
102
103              bloque.removeClass('scrolled');
104
105              bloque.find('.block-weg-block-logo .logo-entidad').show();
106              bloque.find('.block-weg-block-logo .logo-espiga').hide();
107
108              $('.block-weg-block-menu-transversal li').show();
109              bloque.find('.weg-cambio-idioma').show();
110              bloque.find('.weg-icono-lupa-wrapper').show();
111              bloque.find('.block-weg-block-logo-rv').show();
112              bloque.find('.weg-menu-desktop').show();
113              bloque.find('.weg-menu-desktop .menu-item--active-trail .outer-menu').show();
114
115              $('#navbar-top .region-top-header').addClass('container-lg');
116
117              ensureHeaderNuevoContainer();
118
119              bloque.find('.scrolled-menu').hide();
120
121            }
122          }
123
124        } else {
125          // efectos en mobile
126          if (nonreducedmobile === false) {
127
128            if ($("body").hasClass("scrolled")) {
129
130              bloque.addClass('scrolled');
131
132              bloque.find('.block-weg-block-logo .logo-entidad').hide();
133              bloque.find('.block-weg-block-logo .logo-espiga').show();
134
135            } else {
136
137              bloque.removeClass('scrolled');
138
139              bloque.find('.block-weg-block-logo .logo-entidad').show();
140              bloque.find('.block-weg-block-logo .logo-espiga').hide();
141
142            }
143
144          }
145        }
146
147      });
148
149      /*
150       * Header nuevo:
151       * Si se redimensiona la ventana y pasamos a desktop,
152       * volvemos a asegurar container-lg.
153       */
154      $(window).on('resize', function () {
155        ensureHeaderNuevoContainer();
156      });
157
158      bloque.find('.scrolled-menu > ul.nav > li > .outer-menu > ul.menu > li.nav-item.menu-item--expanded').once().bind('click', function (e) {
159        //if ( $( this ).hasClass('menu-item--expanded') ) {
160        e.preventDefault();
161        //}
162        if ($(this).hasClass('weg-active')) {
163          bloque.find('.scrolled-menu > ul.nav > li > .outer-menu > ul.menu > li.nav-item').removeClass('weg-active');
164        } else {
165          bloque.find('.scrolled-menu > ul.nav > li > .outer-menu > ul.menu > li.nav-item').removeClass('weg-active');
166          $(this).addClass('weg-active');
167        }
168
169      });
170
171      bloque.find('.scrolled-menu > ul.nav > li > .outer-menu > ul.menu > li.nav-item.menu-item--expanded > .outer-menu > ul.menu > .nav-item').once().bind('click', function (e) {
172        e.stopPropagation();
173      });
174
175      bloque.find('.weg-show-menu button').once().bind('click', function (e) {
176        e.preventDefault();
177        bloque.find('.weg-show-menu').toggleClass('menu-open');
178        bloque.find('.weg-menu-desktop').slideToggle('slow');
179        $('body').toggleClass('overflow-hidden');
180      });
181
182    }
183  }
184})(jQuery, Drupal, drupalSettings);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.