PageSourceSearch

https://www.xicom.biz/js/client-testimonials.js

js xicom.biz collected 2026-09-26 01:36:11 UTC 2,375 bytes, 75 lines download raw bytes

1(function() {
2 var owl = $('.x-slider');
3    owl.addClass('first-load');
4    owl.owlCarousel({
5        loop: true,
6        margin: 28,
7        nav: true,
8        navText: [
9            '<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M15 18l-6-6 6-6"/></svg>',
10            '<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M9 18l6-6-6-6"/></svg>'
11        ],
12
13        dots: true,
14        smartSpeed: 700,
15        responsive: {
16            0: { items: 1.05, margin: 10 },
17            576: { items: 1.2, margin: 20 },
18            768: { items: 1.6, margin: 22 },
19            992: { items: 2, margin: 26 },
20            1400: { items: 3.1, margin: 30 }
21        }
22    });
23    owl.one('translated.owl.carousel', function () {
24        owl.removeClass('first-load');
25    });
26
27  // VIDEO MODAL - UNCHANGED
28  var modal = document.getElementById('xVideoModal');
29  var iframe = document.getElementById('xVideoIframe');
30  var closeBtn = document.getElementById('xCloseVideo');
31
32  function openVideo(url) {
33    iframe.src = url;
34    modal.classList.add('active');
35    document.body.style.overflow = 'hidden';
36  }
37  function closeVideo() {
38    iframe.src = '';
39    modal.classList.remove('active');
40    document.body.style.overflow = '';
41  }
42  document.querySelectorAll('.x-play-btn').forEach(function(btn) {
43    btn.addEventListener('click', function(e) {
44      e.preventDefault();
45      e.stopPropagation();
46      var card = this.closest('.x-video-card');
47      if (card) {
48        var url = card.getAttribute('data-video');
49        if (url) openVideo(url);
50      }
51    });
52  });
53  modal.addEventListener('click', function(e) {
54    if (e.target === this) closeVideo();
55  });
56  closeBtn.addEventListener('click', closeVideo);
57  document.addEventListener('keydown', function(e) {
58    if (e.key === 'Escape') closeVideo();
59  });
60
61})();
62
63
64$('.x-slider').on('wheel', function(e) {
65    var deltaX = e.originalEvent.deltaX;
66    var deltaY = e.originalEvent.deltaY;
67
68    if (Math.abs(deltaX) > 10 && Math.abs(deltaX) > Math.abs(deltaY)) {
69        e.preventDefault();
70
71        $(this).trigger(
72            deltaX > 0 ? 'next.owl.carousel' : 'prev.owl.carousel'
73        );
74    }
75});

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.