PageSourceSearch

https://4box.it/wp-content/themes/picostrap5-child-base/js/custom.js?v=4

js 4box.it collected 2026-09-24 12:45:48 UTC 9,098 bytes, 306 lines download raw bytes

1$ = jQuery;
2let menuOffcanvas = document.getElementById('navbarResponsive');
3menuOffcanvas.addEventListener('hide.bs.offcanvas', function () {
4    $('#navbar-toggler').toggleClass('active');
5});
6menuOffcanvas.addEventListener('show.bs.offcanvas', function () {
7    $('#navbar-toggler').toggleClass('active');
8}); 
9
10function checkScroll() {
11  let header = document.querySelector(".main-nav");
12  if (header) {
13    let sticky = header.offsetTop;
14    (window.pageYOffset > sticky) 
15      ? document.body.classList.add("scrolled") 
16      : document.body.classList.remove("scrolled");
17  } 
18}
19
20checkScroll();
21
22window.addEventListener("resize", checkScroll);
23
24window.addEventListener("scroll", checkScroll);
25
26$(".dropdown-toggle").on("show.bs.dropdown", function () {
27  if (!$("body").hasClass("scrolled")) {
28      $(".navbar-brand").addClass("with-shadow");
29  }
30});
31
32$(".dropdown-toggle").on("hide.bs.dropdown", function () {
33  if (!$("body").hasClass("scrolled")) {
34      $(".navbar-brand").removeClass("with-shadow");
35  }
36});
37window.addEventListener("scroll", function () {
38  checkScroll();
39  if ($("body").hasClass("scrolled")) {
40      $(".navbar-brand").removeClass("with-shadow");
41  } else if ($(".dropdown-toggle").hasClass("show")) {
42      $(".navbar-brand").addClass("with-shadow");
43  }
44});
45
46$('.close-megamenu').click(function () {
47  $('.dropdown-menu.megamenu.show').css('left','-400px');
48
49  setTimeout(() => {
50      $('.dropdown-menu.megamenu.show').removeClass('show').removeAttr("style"); 
51      $('.nav-link.dropdown-toggle.show').removeClass('show'); 
52  }, 400);
53})
54
55$('.close-megamenu-mob').click(function () {
56  $('.dropdown-menu.children-megamenu.megamenu.show').css('left','-400px');
57
58  setTimeout(() => {
59      $('.dropdown-menu.children-megamenu.megamenu.show').removeClass('show').removeAttr("style"); 
60      $('.nav-link.dropdown-toggle.show').removeClass('show'); 
61  }, 400);
62})
63
64
65 const topReturn = document.getElementById("topReturn");
66
67  function toggleTopReturn() {
68    if (window.scrollY > window.innerHeight) {
69      topReturn.classList.remove("d-none");
70    } else {
71      topReturn.classList.add("d-none");
72    }
73  }
74  window.addEventListener("load", toggleTopReturn);
75  window.addEventListener("scroll", toggleTopReturn);
76
77
78
79$('.nav-item.first').on('mouseenter', function() {
80  $('.nav-item.first').removeClass('active shadow-sm');
81  $(this).addClass('active shadow-sm');
82
83  let title = $(this).data('title');
84  let group = $(this).data('group');
85
86  $('.mega-children').html(title);
87
88  $('.children-megamenu-group').hide();
89  $('.children-megamenu-group[data-group="' + group + '"]').show();
90});
91
92
93
94
95
96
97
98if($('.page-template-home').length > 0 || $('.prodotti-template-serie').length > 0 || $('.tax-product_cat').length > 0 || $('.single-product').length > 0 || $('.prodotti-template-category').length > 0 || $('.prodotti-template-product').length > 0){
99  if($('.glide').length){
100    let glide = new Glide('.glide', {
101      startAt: 0,
102      perView: 4,
103      gap: 25,
104      autoplay: 2500,
105      keyboard: false,
106      type: 'carousel',
107      peek: { before: 0, after: 100 },
108      breakpoints:{
109        486: { perView: 1, peek: { before: 0, after: 50 } },
110        768: { perView: 1 },
111        1024: { perView: 2 },
112        1440: { perView: 3 }
113      }
114    }).mount();
115  
116    if($('.to-right').length > 0){
117      document.querySelector('.to-right').addEventListener("click", (e) => {
118        glide.go('>');
119      });
120      document.querySelector('.to-left').addEventListener("click", (e) => {
121        glide.go('<');
122      });
123    }
124  }
125  
126}
127
128if($('.page-template-privati').length > 0 || $('.page-template-chi-siamo').length > 0){
129  let glide = new Glide('.glide', {
130      startAt: 0,
131      perView: 3,
132      gap: 25,
133      autoplay: 2500,
134      keyboard: false,
135      type: 'carousel',
136      peek: { before: 0, after: 100 },
137      breakpoints:{
138        486: { perView: 1, peek: { before: 0, after: 50 } },
139        768: { perView: 1 },
140        1024: { perView: 2 },
141        1440: { perView: 3 }
142      }
143    }).mount();
144  
145    document.querySelector('.to-right').addEventListener("click", (e) => {
146      glide.go('>');
147      console.log('entro')
148    });
149  
150    document.querySelector('.to-left').addEventListener("click", (e) => {
151      glide.go('<');
152    });
153}
154
155if($('.prodotti-template-category').length > 0){
156  $('.anchor-nav').on('click', function(){
157    $('.anchor-nav').removeClass('active');
158    $(this).addClass('active');
159  })
160  $(".serie-card").each(function () {
161      let card = $(this);
162      let pickers = card.find(".picker");
163      let images = card.find(".text-center img");
164
165      pickers.on("click", function () {
166          // Rimuove la classe 'active' da tutti i picker della stessa card
167          pickers.removeClass("active");
168          
169          // Aggiunge la classe 'active' al picker cliccato
170          $(this).addClass("active");
171          
172          // Ottiene il colore selezionato
173          let color = $(this).data("color");
174          
175          // Mostra solo l'immagine corrispondente al colore selezionato
176          images.each(function () {
177              $(this).toggleClass("d-none", !$(this).hasClass(color));
178          });
179      });
180  });
181}
182
183
184if($('.page-template-contatti').length){
185  $('#sendRequestTecnica').click(function(){
186    let form = $('#infoRequestTecnica');
187    let lang = $(this).data('lang');
188    form.addClass('was-validated');
189      let $trigger = $(this);
190      if ($trigger.data('running')) return false;
191      $trigger.data('running', true);
192      if (form[0].checkValidity()) {
193        form.removeClass('was-validated');
194        let data = form.serializeArray();
195        data.push({ 'name': 'lang', 'value': lang})
196        data.push({ 'name': 'action', 'value': 'cvf_send_message_tecnica'})
197        $.ajax({
198          type: "post",
199          dataType: "json",
200          url: "/wp-admin/admin-ajax.php",
201          data: data,
202          success: function(response) {
203            window.location.href = response.url;
204          },
205          error: function(xhr, ajaxOptions, thrownError) {
206          }
207        })
208      } else {
209        $trigger.data('running', false);
210      }
211  });
212
213  $('#sendRequestCommerciale').click(function(){
214    let $el = $(this);
215    let form = $('#infoRequestCommerciale');
216    let lang = $(this).data('lang');
217    form.addClass('was-validated');
218    let $trigger = $(this);
219    if ($trigger.data('running')) return false;
220    $trigger.data('running', true);
221    if (form[0].checkValidity()) {
222      form.removeClass('was-validated');
223      let data = form.serializeArray();
224      data.push({ 'name': 'lang', 'value': lang})
225      data.push({ 'name': 'action', 'value': 'cvf_send_message_commerciale'})
226      $.ajax({
227        type: "post",
228        dataType: "json",
229        url: "/wp-admin/admin-ajax.php",
230        data: data,
231        success: function(response) {
232          window.location.href = response.url;
233        },
234        error: function(xhr, ajaxOptions, thrownError) {
235        }
236      })
237    } else {
238      $trigger.data('running', false);
239    }
240  });
241
242}
243
244$('.search-svg').on('click', function(){
245  $('#search-form').submit();
246})
247
248function disableScroll() {
249  document.body.style.overflow = 'hidden';
250}
251function enableScroll() {
252  document.body.style.overflow = '';
253}
254$(document).ready(function() {
255  $('.open__search').click(function() {
256  $('.search__navbar').fadeIn(300, function() {
257    $('#s').focus();
258  });
259  disableScroll();
260});
261  $('.close_search').click(function(){
262    $('.search__navbar').fadeOut();
263    enableScroll();
264  });
265})
266
267window.addEventListener('activate.bs.scrollspy', (e) => {
268  let idx = $(e.relatedTarget).parent().index();
269  let w = $(e.relatedTarget).parent().outerWidth();
270  $('#scrollspy')[0].scrollTo({ behavior: 'smooth', left: w * idx });
271});
272
273if($('#send-news').length) {
274      $('#send-news').click(function() {
275         
276         let form = $('#news-form');
277         form.addClass('was-validated');
278            let $trigger = $(this);
279            let lang = $(this).data('lang');
280            if ($trigger.data('running')) return false;
281            $trigger.data('running', true);
282            if (form[0].checkValidity()) {
283               form.removeClass('was-validated');
284               let data = form.serializeArray();
285               data.push({ 'name': 'lang', 'value': lang})
286               data.push({ 'name': 'action', 'value': 'nl_submit'})
287               $.ajax({
288               type: "post",
289               dataType: "json",
290               url: '/wp-admin/admin-ajax.php',
291               type: 'POST',
292               data: data,
293               success:function(response){
294                  if(response.status){
295                     $('#news-form').html(`<p class="text-start text-white fs-14 mb-0" style="line-height: 1.6em;">${response.message}</p>`)
296                  }
297               },
298               error: function (xhr, ajaxOptions, thrownError) {
299                  $trigger.data('running', false);
300               }
301            });
302            } else {
303               $trigger.data('running', false);
304            }
305      });
306   }

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.