PageSourceSearch

https://www.developperautrement.net/wp-content/plugins/divi-plus/d…/LogoSlider/assets/script.min.js?ver=2.1.0

js developperautrement.net collected 2026-10-05 21:26:09 UTC 11,115 bytes, 260 lines download raw bytes

1
2
3jQuery(document).ready( function($) {
4	if ( $('body').find( '.dipl_logo_slider' ).length > 0 ) {
5		$( '.dipl_logo_slider' ).each( function() {
6			let $this = $(this);
7			dipl_init_logo_slider( $this );
8		} );
9	}
10
11	$(window).resize( function() {
12		let $winWidth = $(window).width();
13		if ( $('body').find('.dipl_logo_slider').length > 0 ) {
14			$('body').find('.dipl_logo_slider').each(function(){
15				let $arrows = $(this).find('.dipl_swiper_navigation').data();
16				if ( $arrows ) {
17					if ( $winWidth > 980 && typeof($arrows['arrows_desktop']) !== 'undefined' ) {
18						dipl_remove_arrows_classes( $(this).find('.dipl_swiper_navigation') );
19						$(this).find('.dipl_swiper_navigation').addClass('dipl_arrows_'+$arrows['arrows_desktop']);
20					}
21					if ( $winWidth < 981 ) {
22						if ( typeof($arrows['arrows_tablet']) !== 'undefined' ) {
23							dipl_remove_arrows_classes( $(this).find('.dipl_swiper_navigation') );
24							$(this).find('.dipl_swiper_navigation').addClass('dipl_arrows_'+$arrows['arrows_tablet']);
25						} else if ( typeof($arrows['arrows_desktop']) !== 'undefined' ) {
26							dipl_remove_arrows_classes( $(this).find('.dipl_swiper_navigation') );
27							$(this).find('.dipl_swiper_navigation').addClass('dipl_arrows_'+$arrows['arrows_desktop']);
28						}
29					}
30					if ( $winWidth < 768 ) {
31						if ( typeof($arrows['arrows_phone']) !== 'undefined' ) {
32							dipl_remove_arrows_classes( $(this).find('.dipl_swiper_navigation') );
33							$(this).find('.dipl_swiper_navigation').addClass('dipl_arrows_'+$arrows['arrows_phone']);
34						} else if ( typeof($arrows['arrows_tablet']) !== 'undefined' ) {
35							dipl_remove_arrows_classes( $(this).find('.dipl_swiper_navigation') );
36							$(this).find('.dipl_swiper_navigation').addClass('dipl_arrows_'+$arrows['arrows_tablet']);
37						} else if ( typeof($arrows['arrows_desktop']) !== 'undefined' ) {
38							dipl_remove_arrows_classes( $(this).find('.dipl_swiper_navigation') );
39							$(this).find('.dipl_swiper_navigation').addClass('dipl_arrows_'+$arrows['arrows_desktop']);
40						}
41					}
42				}
43			});
44		}
45	} );
46} );
47
48/**
49 * Init the slider for logo.
50 */
51function dipl_init_logo_slider( $wrapObj ) {
52	if ( $wrapObj.find( '.swiper-container' ).length < 1 || $wrapObj.find( '.swiper-slide' ).length < 1 ) {
53		return;
54	}
55
56	let $orderClass                = $wrapObj.prop('class').match(/(dipl_logo_slider\_[^\s]*)/)[0],
57		$slidesPerGroup            = 6,
58		$slidesPerGroupIpad        = 1,
59		$slidesPerGroupMobile      = 1,
60		$slidesPerGroupSkip        = 0,
61		$slidesPerGroupSkipIpad    = 0,
62		$slidesPerGroupSkipMobile  = 0,
63		$logo_per_view             = 1,
64		$logo_per_view_ipad        = 1,
65		$logo_per_view_mobile      = 1,
66		$logo_space_between        = 0,
67		$logo_space_between_ipad   = 0,
68		$logo_space_between_mobile = 0;
69
70	const dataObj = $wrapObj.find( '.dipl_swiper_wrapper' );
71	
72	let settings  = {
73		'show_arrow'                  : dataObj.attr( 'data-show_arrow' ),
74		'show_control'                : dataObj.attr( 'data-show_control' ),
75		'loop'                        : dataObj.attr( 'data-loop' ),
76		'autoplay'                    : dataObj.attr( 'data-autoplay' ),
77		'autoplay_speed'              : dataObj.attr( 'data-autoplay_speed' ),
78		'transition_duration'         : dataObj.attr( 'data-transition_duration' ),
79		'pause_on_hover'              : dataObj.attr( 'data-pause_on_hover' ),
80		'dynamic_bullets'             : dataObj.attr( 'data-dynamic_bullets' ),
81		'per_view'                    : dataObj.attr( 'data-per_view' ),
82		'per_view_tablet'             : dataObj.attr( 'data-per_view_tablet' ),
83		'per_view_phone'              : dataObj.attr( 'data-per_view_phone' ),
84		'per_group'                   : dataObj.attr( 'data-per_group' ),
85		'per_group_tablet'            : dataObj.attr( 'data-per_group_tablet' ),
86		'per_group_phone'             : dataObj.attr( 'data-per_group_phone' ),
87		'space_between_slides'        : dataObj.attr( 'data-space_between_slides' ),
88		'space_between_slides_tablet' : dataObj.attr( 'data-space_between_slides_tablet' ),
89		'space_between_slides_phone'  : dataObj.attr( 'data-space_between_slides_phone' ),
90	};
91
92	$logo_per_view              = ( settings?.per_view ) ? settings.per_view : '1';
93	$logo_per_view_ipad         = ( settings?.per_view_tablet ) ? settings.per_view_tablet : $logo_per_view;
94	$logo_per_view_mobile       = ( settings?.per_view_phone ) ? settings.per_view_phone : $logo_per_view_ipad;
95
96	$logo_space_between   	    = ( settings?.space_between_slides ) ? settings.space_between_slides : '20p
96x';
97	$logo_space_between_ipad    = ( settings?.space_between_slides_tablet ) ? settings.space_between_slides_tablet : $logo_space_between;
98	$logo_space_between_mobile  = ( settings?.space_between_slides_phone ) ? settings.space_between_slides_phone : $logo_space_between_ipad;
99
100	$slidesPerGroup             = ( settings?.per_group ) ? settings.per_group : '1';
101	$slidesPerGroupIpad         = ( settings?.per_group_tablet ) ? settings.per_group_tablet : $slidesPerGroup;
102	$slidesPerGroupMobile       = ( settings?.per_group_phone ) ? settings.per_group_phone : $slidesPerGroupIpad;
103
104	if ( $logo_per_view > $slidesPerGroup && 1 !== $slidesPerGroup ) {
105		$slidesPerGroupSkip = parseInt( $logo_per_view ) - parseInt( $slidesPerGroup );
106	}
107	if ( $logo_per_view_ipad > $slidesPerGroupIpad && 1 !== $slidesPerGroupIpad ) {
108		$slidesPerGroupSkipIpad = parseInt( $logo_per_view_ipad ) - parseInt( $slidesPerGroupIpad );
109	}
110	if ( $logo_per_view_mobile > $slidesPerGroupMobile && 1 !== $slidesPerGroupMobile ) {
111		$slidesPerGroupSkipMobile = parseInt( $logo_per_view_mobile ) - parseInt( $slidesPerGroupMobile );
112	}
113	
114	let autoplay_speed      = ( settings?.autoplay_speed ) ?? 3000,
115		pause_on_hover      = ( settings?.pause_on_hover ) ?? 'on',
116		transition_duration = ( settings?.transition_duration ) ?? 1000,
117		loop_param          = ( 'on' === settings?.loop ) ? true : false,
118		dynamic_bullets     = ( 'on' === settings?.dynamic_bullets ) ? true : false;
119
120	let $show_arrow = 'false';
121	if ( 'on' === settings?.show_arrow ) {
122		$show_arrow = {    
123			nextEl: '.' + $orderClass + ' .swiper-button-next',
124			prevEl: '.' + $orderClass + ' .swiper-button-prev',
125		};
126	}
127	let $show_control = false;
128	if ( 'on' === settings?.show_control ) {
129		$show_control = {
130			el: '.' + $orderClass + ' .swiper-pagination',
131			dynamicBullets: dynamic_bullets,
132			clickable: true,
133		}
134	}
135	let $autoplay_param = 0;
136	if ( 'on' === settings?.autoplay ) {
137		$autoplay_param = {
138			delay: parseInt( autoplay_speed ),
139			disableOnInteraction: ( 'on' === pause_on_hover ) ? true : false,
140		};
141	}
142
143	// Remove the pagination clases.
144	if ( $wrapObj.find( '.swiper-pagination' ).hasClass( 'swiper-pagination-bullets-dynamic' ) ) {
145		$wrapObj.find( '.swiper-pagination' ).removeClass( 'swiper-pagination-bullets-dynamic' ).css( 'width', 'auto' );
146	}
147
148	var swipperSlider = new Swiper( '.' + $orderClass + ' .swiper-container', {
149		slidesPerView: parseInt( $logo_per_view ),
150		autoplay: $autoplay_param,
151		spaceBetween: parseInt( $logo_space_between ),
152		slidesPerGroup: parseInt( $slidesPerGroup ),
153		slidesPerGroupSkip: parseInt( $slidesPerGroupSkip ),
154		effect: 'slide',
155		autoHeight: ( 'on' === settings?.auto_height_slider ) ? true : false,
156		speed: parseInt( transition_duration ),
157		loop: loop_param,
158		pagination: $show_control,
159		navigation: $show_arrow,
160		rebuildOnUpdate: true,
161		grabCursor: true,
162		breakpoints: {
163			1080: {
164				slidesPerView: parseInt( $logo_per_view ),
165				spaceBetween: parseInt( $logo_space_between ),
166				slidesPerGroup: parseInt( $slidesPerGroup ),
167				slidesPerGroupSkip: parseInt( $slidesPerGroupSkip ),
168			},
169			767: {
170				slidesPerView: parseInt( $logo_per_view_ipad ),
171				spaceBetween: parseInt( $logo_space_between_ipad ),
172				slidesPerGroup: parseInt( $slidesPerGroupIpad ),
173				slidesPerGroupSkip: parseInt( $slidesPerGroupSkipIpad ),
174			},
175			0: {
176				slidesPerView: parseInt( $logo_per_view_mobile ),
177				spaceBetween: parseInt( $logo_space_between_mobile ),
178				slidesPerGroup: parseInt( $slidesPerGroupMobile ),
179				slidesPerGroupSkip: parseInt( $slidesPerGroupSkipMobile ),
180			}
181		}
182	} );
183
184	if ( 'on' === pause_on_hover && 'on' === settings?.autoplay ) {
185		const speed = parseInt( transition_duration );
186		jQuery( '.' + $orderClass + ' .swiper-container' ).on( 'mouseleave', function(e) {
187			if ( swipperSlider.autoplay && typeof swipperSlider.autoplay.stop === "function" ) {
188				swipperSlider.autoplay.start();
189			}
190		} );
191		jQuery( '.' + $orderClass + ' .swiper-container' ).on( 'mouseenter', function(e) {
192			if ( swipperSlider.autoplay && typeof swipperSlider.autoplay.start === "function" ) {
193				swipperSlider.params.speed = speed;
194        		swipperSlider.setTransition( speed );
195				swipperSlider.autoplay.stop();
196			}
197		} );
198	}
199	if ( 'on' !== settings?.loop ) {
200		swipperSlider.on( 'reachEnd', function() {
201			swipperSlider.autoplay = false;
202		} );
203	}
204
205	$wrapObj.addClass( 'dipl-slider-initialized' );
206	$wrapObj.data( 'swiper-instance', swipperSlider );
207
208	let $winWidth   = jQuery( window ).width();
209	let navigateObj = $wrapObj.find('.dipl_swiper_navigation');
210	let $arrows     = navigateObj.data();
211	if ( $arrows ) {
212		if ( $winWidth > 980 && typeof($arrows['arrows_desktop']) !== 'undefined' ) {
213			dipl_remove_arrows_classes( navigateObj );
214			navigateObj.addClass( 'dipl_arrows_'+$arrows['arrows_desktop'] );
215		}
216		if ( $winWidth < 981 ) {
217			if ( typeof($arrows['arrows_tablet']) !== 'undefined' ) {
218				dipl_remove_arrows_classes( navigateObj );
219				navigateObj.addClass('dipl_arrows_'+$arrows['arrows_tablet']);
220			} else if ( typeof($arrows['arrows_desktop']) !== 'undefined' ) {
221				dipl_remove_arrows_classes( navigateObj );
222				navigateObj.addClass('dipl_arrows_'+$arrows['arrows_desktop']);
223			}
224		}
225		if ( $winWidth < 768 ) {
226			if ( typeof($arrows['arrows_phone']) !== 'undefined' ) {
227				dipl_remove_arrows_classes( navigateObj );
228				navigateObj.addClass('dipl_arrows_'+$arrows['arrows_phone']);
229			} else if ( typeof($arrows['arrows_tablet']) !== 'undefined' ) {
230				dipl_remove_arrows_classes( navigateObj );
231				navigateObj.addClass('dipl_arrows_'+$arrows['arrows_tablet']);
232			} else if ( typeof($arrows['arrows_desktop']) !== 'undefined' ) {
233				dipl_remove_arrows_classes( navigateObj );
234				navigateObj.addClass('dipl_arrows_'+$arrows['arrows_desktop']);
235			}
236		}
237	}
238}
239
240function dipl_destroy_logo_slider( $wrapObj ) {
241	const swiper = $wrapObj.data( 'swiper-instance' );	
242	if ( swiper && swiper.destroy ) {
243		swiper.autoplay?.stop();
244		swiper.off( 'beforeTransitionStart' );
245		swiper.destroy( true, true );
246	}
247	$wrapObj.removeData( 'swiper-instance' ).removeData( 'swiper-initialized' ).removeClass( 'dipl-slider-initialized' );
248}
249
250function dipl_get_arrows_classes() {
251	return [
252		'dipl_arrows_top_left', 'dipl_arrows_top_center', 'dipl_arrows_top_right',
253		'dipl_arrows_bottom_left', 'dipl_arrows_bottom_center', 'dipl_arrows_bottom_right',
254		'dipl_arrows_outside', 'dipl_arrows_inside',
255	];
256}
257function dipl_remove_arrows_classes( $element ) {
258	let $arrowClasses = dipl_get_arrows_classes();
259	$element.removeClass( $arrowClasses.join(' ') );
260}

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.