PageSourceSearch

https://www.727westmadison.com/wp-content/themes/mastertemplatetwo-child/js/child-main.js?ver=1

js 727westmadison.com collected 2026-10-06 02:31:47 UTC 4,736 bytes, 139 lines download raw bytes

1(function ($) {
2  'use strict';
3
4  var AUTOPLAY_SPEED = 5000;
5
6  function formatSlideNumber(index) {
7    var num = index + 1;
8    return num < 10 ? '0' + num : String(num);
9  }
10
11  function initOneColumnSlider() {
12    $('.mt_one_column_slider_section').each(function () {
13      var $section = $(this);
14      var $slider = $section.find('.mt_one_column_slider.mt_slider');
15
16      if (!$slider.length || !$slider.hasClass('slick-initialized')) {
17        return;
18      }
19
20      var $dots = $section.find('.mt_one_column_slider_dot');
21      var $current = $section.find('.mt_one_column_slider_current');
22      var $pauseBtn = $section.find('.mt_play');
23
24      $slider.slick('slickSetOption', 'autoplay', true, true);
25      $slider.slick('slickSetOption', 'autoplaySpeed', AUTOPLAY_SPEED, true);
26      $slider.slick('slickSetOption', 'infinite', true, true);
27      $slider.slick('slickPlay');
28      $pauseBtn.removeClass('paused');
29
30      function setActiveSlide(index) {
31        $dots.removeClass('is-active').find('button').attr('aria-selected', 'false');
32        $dots.eq(index).addClass('is-active').find('button').attr('aria-selected', 'true');
33        $current.text(formatSlideNumber(index));
34        $pauseBtn.attr(
35          'aria-label',
36          $pauseBtn.hasClass('paused') ? 'Play slideshow' : 'Pause slideshow'
37        );
38      }
39
40      $section.find('.mt_one_column_slider_dot button').on('click', function () {
41        var slideIndex = parseInt($(this).data('slide'), 10);
42        $slider.slick('slickGoTo', slideIndex);
43        setActiveSlide(slideIndex);
44      });
45
46      $pauseBtn.on('click.oneColumnSliderAria', function () {
47        var $btn = $(this);
48        window.setTimeout(function () {
49          $btn.attr(
50            'aria-label',
51            $btn.hasClass('paused') ? 'Play slideshow' : 'Pause slideshow'
52          );
53        }, 0);
54      });
55
56      $slider.on('afterChange', function (event, slick, currentSlide) {
57        setActiveSlide(currentSlide);
58      });
59    });
60  }
61
62  function initAccordionImageSlider() {
63    $('.mt_accordion_image_slider_section').each(function () {
64      var $section = $(this);
65      var $slider = $section.find('.mt_accordion_image_slider_carousel');
66      var $items = $section.find('.mt_accordion_item');
67      var $dots = $section.find('.mt_accordion_image_slider_dot');
68      var $current = $section.find('.mt_accordion_image_slider_current');
69
70      function setActiveSlide(index) {
71        $dots.removeClass('is-active').find('button').attr('aria-selected', 'false');
72        $dots.eq(index).addClass('is-active').find('button').attr('aria-selected', 'true');
73        $current.text(index + 1);
74      }
75
76      $section.find('.mt_accordion_trigger').on('click', function () {
77        var $item = $(this).closest('.mt_accordion_item');
78        var $trigger = $item.find('.mt_accordion_trigger');
79        var $panel = $item.find('.mt_accordion_panel');
80        var isOpen = $item.hasClass('is-open');
81
82        $items.find('.mt_accordion_panel').stop(true, true);
83
84        $items.removeClass('is-open');
85        $items.find('.mt_accordion_trigger').attr('aria-expanded', 'false');
86        $items.find('.mt_accordion_panel').slideUp(300, function () {
87          $(this).attr('hidden', 'hidden');
88        });
89
90        if (!isOpen) {
91          $item.addClass('is-open');
92          $trigger.attr('aria-expanded', 'true');
93          $panel.removeAttr('hidden').hide().slideDown(300);
94          
95          var sectionIndex = parseInt($item.data('section'), 10);
96          if ($slider.length && $slider.hasClass('slick-initialized')) {
97            $slider.slick('slickGoTo', sectionIndex);
98            setActiveSlide(sectionIndex);
99          }
100        }
101      });
102
103      if ($slider.length && !$slider.hasClass('slick-initialized')) {
104        $slider.slick({
105          rows: 0,
106          dots: false,
107          arrows: false,
108          infinite: false,
109          fade: true,
110          speed: 800,
111          cssEase: 'ease-in-out',
112          pauseOnHover: false,
113          pauseOnFocus: false,
114          useTransform: true,
115          lazyLoad: 'ondemand'
116        });
117      }
118
119      if ($slider.length && $slider.hasClass('slick-initialized')) {
120        $section.find('.mt_accordion_image_slider_dot button').on('click', function () {
121          var slideIndex = parseInt($(this).data('slide'), 10);
122          $slider.slick('slickGoTo', slideIndex);
123          setActiveSlide(slideIndex);
124        });
125
126        $slider.on('afterChange', function (event, slick, currentSlide) {
127          setActiveSlide(currentSlide);
128        });
129      }
130    });
131  }
132
133  $(function () {
134    setTimeout(function () {
135      initOneColumnSlider();
136      initAccordionImageSlider();
137    }, 0);
138  });
139})(jQuery);

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.