PageSourceSearch

https://www.stgermainducorbeis.fr/wp-content/themes/novacity-saas/assets/js/slick.js?ver=1784101035

js stgermainducorbeis.fr collected 2026-10-02 20:48:35 UTC 4,000 bytes, 167 lines download raw bytes

1//
2// slick.js
3// Theme module
4//
5'use strict';
6
7( function( $ ) {
8
9	//
10	// Variables
11	//
12	var toggle = $( '[data-toggle="slick"]' );
13
14
15	//
16	// Functions
17	//
18	function init( toggle ) {
19
20		toggle.each( function ( index, el ) {
21
22			var $el = $( el ),
23				userOptions = $el.data(),
24				options;
25
26			// Remove le data attr toggle from the options array
27			delete userOptions.toggle
28
29
30			var breakpoints = {
31				xs: 576,
32				sm: 768,
33				md: 992,
34				lg: 1200,
35			}
36
37			var defaultOptions = {
38				accessibility: true,
39				infinite: true,
40				slidesToShow: 3,
41				dots: true,
42				arrows: true,
43				// adaptiveHeight: true,
44				// mobileFirst: true,
45				responsive: [],
46				prevArrow: '<button class="btn slick-prev" type="button"><span class="sr-only">Précédent</span></button>',
47				nextArrow: '<button class="btn slick-next" type="button"><span class="sr-only">Suivant</span></button>',
48			}
49
50			$.each( userOptions, function( index, val ) {
51
52				if ( [ 'xs', 'sm', 'md', 'lg', 'xl' ].indexOf( index.substring( 0, 2 ) ) !== -1 ) {
53					var bk = index.substring( 0, 2 ),
54						bkOption = index.substring( 2 ).charAt( 0 ).toLowerCase() + index.substring( 2 ).slice( 1 ),
55						exists = false
56
57					if ( bkOption == '' ) {
58
59							var bkOptions = {
60								breakpoint: breakpoints[ bk ],
61								settings: val
62							}
63
64							defaultOptions.responsive.push( bkOptions )
65
66					} else {
67						for ( var i = defaultOptions.responsive.length - 1; i >= 0; i-- ) {
68							if ( defaultOptions.responsive[ i ].breakpoint == breakpoints[ bk ] ) {
69								defaultOptions.responsive[ i ].settings[ bkOption ] = val
70								exists = true
71								break;
72							}
73						}
74
75						if ( ! exists ) {
76							var bkOptions = {
77								breakpoint: breakpoints[ bk ],
78								settings: {}
79							}
80
81							bkOptions.settings[ bkOption ] = val
82
83							defaultOptions.responsive.push( bkOptions )
84						}
85					}
86
87				} else {
88					defaultOptions[ index ] = userOptions[ index ];
89				}
90
91			});
92			options = defaultOptions;
93
94			var $slick = false;
95
96			// If in boostrap modal, refresh map on display
97			if ( $el.parents( '.modal' ).length ) {
98				$el.parents( '.modal' ).on( 'shown.bs.modal', function () {
99					if ( ! $slick ) {
100						$slick = $el.slick( options );
101					}
102				});
103
104			// If in boostrap tab, refresh map on display
105			} else if ( $el.parents( '.tab-pane' ).length ) {
106				var trigger_id = $el.parents( '.tab-pane' ).attr( 'id' );
107				if ( $( '#' + trigger_id ).hasClass( 'active' ) ) {
108					$slick = $el.slick( options );
109				} else {
110					$( '[href="#' + trigger_id + '"], [data-target="#' + trigger_id + '"]' ).on( 'shown.bs.tab', function () {
111						if ( ! $slick ) {
112							$slick = $el.slick( options );
113						}
114					});
115				}
116
117			// If in collapse modal, refresh map on display
118			} else if ( $el.parents( '.collapse' ).length ) {
119				if ( $el.parents( '.collapse' ).hasClass( 'in' ) ) {
120					$slick = $el.slick( options );
121				} else {
122					$el.parents( '.collapse' ).on( 'shown.bs.collapse', function () {
123						if ( ! $slick ) {
124							$slick = $el.slick( options );
125						}
126					});
127				}
128				
129			} else {
130				$slick = $el.slick( options );
131			}
132
133			// Check if is enough items to show nav (dots, arrows) on slider
134			if ( $slick !== false ) {
135				$slick.on('setPosition', function ( event, slick ) {
136
137					if ( slick.activeBreakpoint !== null ) {
138						if ( slick.breakpointSettings[ slick.activeBreakpoint ].slidesToShow != undefined && 
139							slick.slideCount <= slick.breakpointSettings[ slick.activeBreakpoint ].slidesToShow ) {
140							slick.$slider.addClass( 'slick-no-nav' );
141						} else {
142							slick.$slider.removeClass( 'slick-no-nav' );
143						}
144
145					} else {
146						if ( slick.slideCount <= slick.options.slidesToShow ) {
147							slick.$slider.addClass( 'slick-no-nav' );
148						} else {
149							slick.$slider.removeClass( 'slick-no-nav' );
150						}
151					}
152				})
153			}
154
155		} );
156
157	}
158
159
160	//
161	// Events
162	//
163	if ( typeof $.fn.slick !== 'undefined' && toggle ) {
164		init( toggle );
165	}
166
167} )( 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.