PageSourceSearch

https://ilstewards.org/_static/??-eJydzkEOwjAMBMAPkVpVpcAF8ZY0tUJK…ENI+HPY3+Z8r1i2zldRzg295HN/PNl+sHawLzxcflM=

js ilstewards.org collected 2026-09-25 18:41:04 UTC 8,069 bytes, 244 lines download raw bytes

1(function ($) {
2  'use strict'
3
4  /* Masonry --------------------- */
5  function masonrySetup () {
6    // Exclude Isotope containers so Masonry doesn't initialize on top of them.
7    var $container = $('.obb-masonry-container').not('.obb-isotope');
8    
9    // Ensure Masonry initializes after images have loaded
10    $container.imagesLoaded(function() {
11      $container.masonry({
12        gutter: '.obb-grid-spacer',
13        itemSelector: '.obb-masonry-wrapper'
14      });
15    });
16  }
17
18  /* Isotope --------------------- */
19  function isotopeSetup () {
20    $('.obb-portfolio, .obb-posts').each(function (index, obj) {
21      var filterID = obj.getAttribute('data-id')
22      var $grid = $('#' + filterID + ' .obb-masonry-container.obb-isotope')
23      // Quick search regex
24      var qsRegex
25
26      // Initialize Isotope after images have loaded
27      $grid.imagesLoaded(function () {
28        $grid.isotope({
29          itemSelector: '.obb-masonry-wrapper',
30          percentPosition: true,
31          masonry: {
32            gutter: '.obb-grid-spacer'
33          }
34        })
35      });
36
37      // use value of search field to filter
38      $('#' + filterID + ' .obb-filter-search').on('click', 'input', function () {
39        $('.obb-filter-buttons button').off('click')
40        var $quicksearch = $('.quicksearch').keyup(debounce(function () {
41          qsRegex = new RegExp($quicksearch.val(), 'gi')
42          $grid.isotope({
43            filter: function () {
44              return qsRegex ? $(this).text().match(qsRegex) : true
45            }
46          })
47        }, 200))
48      })
49
50      $('#' + filterID + ' .obb-filter-buttons').on('click', 'button', function () {
51        var filterValue = $(this).attr('data-filter')
52        $grid.isotope({ filter: filterValue })
53      })
54
55      // debounce so filtering doesn't happen every millisecond
56      function debounce (fn, threshold) {
57        var timeout
58        threshold = threshold || 100
59        return function debounced () {
60          clearTimeout(timeout)
61          var args = arguments
62          var _this = this
63          function delayed () {
64            fn.apply(_this, args)
65          }
66          timeout = setTimeout(delayed, threshold)
67        }
68      }
69    })
70  }
71
72  // Recalculate layout on scroll to ensure items are in the correct positions
73  function recalculateLayoutOnScroll() {
74    $(window).on('scroll', function() {
75      $('.obb-masonry-container').each(function() {
76        var $this = $(this);
77        if ($this.is(':visible')) {
78          // Isotope containers must use isotope('layout'); calling masonry('layout')
79          // on them initializes a conflicting Masonry instance that collapses the grid.
80          if ($this.hasClass('obb-isotope')) {
81            $this.isotope('layout');
82          } else {
83            $this.masonry('layout');
84          }
85        }
86      });
87    });
88  }
89
90  $(document).ready(() => {
91    isotopeSetup();
92    masonrySetup();
93    recalculateLayoutOnScroll();
94  });
95
96  $(window).on('resize', () => {
97    isotopeSetup();
98    masonrySetup();
99  });
100})(jQuery);
101;
102!function(){const o=window.navigator.userAgent;Object.entries({android:/android/i,iphone:/iPhone/i,ipad:/iPad/i}).forEach((([n,i])=>{o.match(i)&&document.body.classList.add(`tec-is-${n}`)}))}(),window.tec=window.tec||{},window.tec.common=window.tec.common||{},window.tec.common.userAgent={};;
103(function ($) {
104  'use strict'
105
106  function toggleBlock () {
107    /* Toggle Box --------------------- */
108    $('.obb-toggle-trigger').click(function (e) {
109      // $(this).toggleClass('active').next().fadeToggle('slow')
110      $(this).toggleClass('active')
111      e.preventDefault()
112    })
113  }
114
115  $(document)
116    .ready(toggleBlock)
117})(jQuery)
118;
119(function ($) {
120  'use strict'
121
122  /* Submenu Offset Fix --------------------- */
123  function menuOffset () {
124    var mainWindowWidth = $(window).width() + 120
125
126    $('ul.obb-menu li.menu-item-has-children').mouseover(function () {
127      // Checks if third level menu exist
128      var subMenuExist = $(this).find('.sub-menu').length
129      if (subMenuExist > 0) {
130        var subMenuWidth = $(this).find('.sub-menu').width()
131        var subMenuOffset = $(this).find('.sub-menu').parent().offset().left + subMenuWidth
132
133        // If sub menu is off screen, give new position
134        if ((subMenuOffset + subMenuWidth) > mainWindowWidth) {
135          var newSubMenuPosition = subMenuWidth
136          $(this).find('.sub-menu').css({
137            left: 'auto',
138            right: '0'
139          })
140          $(this).find('.sub-menu .sub-menu').css({
141            left: -newSubMenuPosition - 32,
142            right: '0'
143          })
144        }
145      }
146    })
147  }
148
149  /* Header Block Position --------------------- */
150  function headerSetup () {
151    if ($('.obb-header').hasClass('position-fixed')) {
152      $('.site-header').attr('data-position', 'position-fixed')
153    }
154    if ($('.obb-header').hasClass('position-absolute')) {
155      $('.site-header').attr('data-position', 'position-absolute')
156    }
157    if ($(this).scrollTop() > 80) {
158      $('.header-transparent-scroll').addClass('scrolling')
159      $('.obb-mobile-menu-container').addClass('scrolling')
160    } else {
161      $('.header-transparent-scroll').removeClass('scrolling')
162      $('.obb-mobile-menu-container').removeClass('scrolling')
163    }
164  }
165
166  /* Header Block Mobile Submenus --------------------- */
167  function subMenuSetup() {
168    if ($(window).width() <= 768) {
169      if ($('.obb-mobile-menus #mobile-nav-large ul.obb-menu ul.sub-menu').css('display') == 'none') {
170        // Toggle submenus
171        var subMenuToggle = $('.obb-menu li.menu-item-has-children > .dropdown').off();
172        subMenuToggle.on('click', function(e) {
173          e.preventDefault();
174          var submenu = $(this).parent().children('.obb-mobile-menus ul.obb-menu ul.sub-menu');
175          if ($(submenu).is(':hidden')) {
176            $(submenu).slideDown(200);
177          } else {
178            $(submenu).slideUp(200);
179          }
180        })
181        subMenuToggle.on('dblclick', function (e) {
182          window.location.replace($(this).attr('href'))
183        })
184      }
185    }
186  }
187
188  function generalFunctions () {
189    /* Add Mobile Menu Dropdown Arrows --------------------- */
190    $(".obb-mobile-menus #mobile-nav-large ul.obb-menu li.menu-item-has-children").append("<span class='dropdown'><i class='fas fa-chevron-down'></i></span>");
191
192    /* Toggle Mobile Menu --------------------- */
193    $('.obb-mobile-menu-container').each(function (index, obj) {
194      var mobileMenuID = obj.getAttribute('data-mobile-id')
195      $('#' + mobileMenuID + ' .obb-menu-toggle.open').on('click touchstart', function () {
196        $('.' + mobileMenuID + '.obb-mobile-menu-container').addClass('revealed')
197        $('body').addClass('mobile-menu-open')
198      })
199      $('.' + mobileMenuID + ' .obb-menu-toggle.close, .' + mobileMenuID + ' .obb-mobile-menus li a').on('click swipeleft', function () {
200        $('.' + mobileMenuID + '.obb-mobile-menu-container').removeClass('revealed')
201        $('body').removeClass('mobile-menu-open')
202      })
203    })
204
205    /* Scroll To Top Button --------------------- */
206    $('button.obb-footer-return').click(function () {
207      window.scroll({
208        top: 0,
209        left: 0,
210        behavior: 'smooth'
211      })
212    })
213
214    /* Animate Page Scroll --------------------- */
215    $('.scroll-link a').on('click', function (event) {
216      event.preventDefault()
217      var dest = $(this).attr('href')
218      // console.log(dest)
219      if (dest.length) {
220        $('html,body').animate({ scrollTop: $(dest).offset().top }, 500)
221      }
222    })
223
224    /* Remove Links From Link Container Content --------------------- */
225    $('.obb-link-content a').removeAttr('href')
226
227    /* Modal Button -------------------- */
228    $('.obb-modal-open[rel~="modal:open"]').click(function (event) {
229      $(this).modal()
230      return false
231    })
232  }
233
234  $(document)
235    .ready(generalFunctions)
236    .ready(menuOffset)
237    .ready(headerSetup)
238
239  $(window)
240    .on('scroll', headerSetup)
241    .on('load', subMenuSetup)
242    .on('resize', subMenuSetup)
243})(jQuery)
244;

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.