PageSourceSearch

https://www.accesud.fr/wp-content/themes/accesud/script.js?ver=7.1.2

js accesud.fr collected 2026-09-28 13:48:39 UTC 11,704 bytes, 375 lines download raw bytes

1jQuery(document).ready(function($){
2
3
4setTimeout(function(){
5	var wrappedLink = $(".mobile_nav .et_mobile_menu li.menu-item-has-children > a");
6	wrappedLink.removeAttr('href');
7	wrappedLink.off("click").click(function(e){
8		$(this).parent().toggleClass("active");
9		$(this).parent().children(".sub-menu").toggleClass("open");
10	})
11}, 300);
12
13
14
15//////////////////////////
16// Texte défilant GSAP //
17/////////////////////////
18let currentScroll = 0;
19let isScrollingDown = true;
20if($(".marquee__part").length > 0){	
21	let tween = gsap.to(".marquee__part", {xPercent: -100, repeat: -1, duration: 20, ease: "linear"}).totalProgress(0.5);
22	gsap.set(".marquee__inner", {xPercent: -50})
23}
24if($(".marquee__part2").length > 0){	
25	let tween = gsap.to(".marquee__part2", {xPercent: -100, repeat: -1, duration: 60, ease: "linear"}).totalProgress(0.5);
26	gsap.set(".marquee__inner2", {xPercent: -50})
27}
28
29
30////////////////////////
31/* Carroussel Actus */
32////////////////////////
33   $(".actu-hp.et_pb_module.dpdfg_filtergrid .dp-dfg-container").addClass("swiper-container actucar");
34   $(".actu-hp .et_pb_module_inner .dp-dfg-container .dp-dfg-items").addClass("swiper-wrapper actucar");
35   $(".actu-hp .et_pb_module_inner .dp-dfg-container .dp-dfg-items .dp-dfg-item").addClass("swiper-slide actucar");
36   $(".swiper-container.actucar").append("<div class='swiper-scrollbar'></div>");
37
38   var swiper2 = new Swiper('.actucar.swiper-container', {
39    // Optional parameters
40    loop: false,
41    /*slidesPerView: 3,*/
42    spaceBetween: 40,
43    breakpoints: {
44      480: {
45        slidesPerView: 1,
46      },
47      820: {
48        slidesPerView: 1,
49      },
50      1024: {
51        slidesPerView: 2,
52      },
53    },
54    // Navigation arrows
55    scrollbar: {
56      el: ".swiper-scrollbar",
57      hide: false,
58    },
59  });
60
61
62
63///////////////////////////////
64// Tourniquet home ///*mobile*/
65///////////////////////////////
66
67function tourniquetMobile(){
68	if($('.container-tourniquet').length > 0){
69		var screenWitdth = $(window).width();
70		if(screenWitdth <= 980){
71			$('.container-tourniquet > .outercircle').wrapAll('<div class="line-outercircle"></div>');
72			$('.container-tourniquet > .innercircle').wrapAll('<div class="line-innercircle"></div>');
73
74			// Les deux éléments ciblés
75		    var $outerCircle = $('.line-outercircle');
76		    var $innerCircle = $('.line-innercircle');
77		    
78		    // Le conteneur qui définit la zone de l'effet (le et_pb_section_0)
79		    var $container = $('.container-tourniquet');
80		    
81		    // 1. Définir l'amplitude du mouvement (en pixels)
82		    // Plus cette valeur est grande, plus l'effet sera prononcé au scroll.
83		    var movementRange = 750; 
84		    
85		    // 2. Définir une fonction qui gère le défilement
86		    $(window).on('scroll', function() {
87		        var windowScrollTop = $(window).scrollTop();
88		        var containerTop = $container.offset().top;
89		        var containerHeight = $container.outerHeight();
90		        var windowHeight = $(window).height();
91		        var startScroll = containerTop - windowHeight;
92		        var endScroll = containerTop + containerHeight;
93		        if (windowScrollTop < startScroll || windowScrollTop > endScroll) {
94		            return;
95		        }
96
97		        var progress = (windowScrollTop - startScroll) / (endScroll - startScroll);
98		        progress = Math.max(0, Math.min(1, progress));
99		        var offset = progress * movementRange;
100		        $outerCircle.css({
101		            //'left': -offset + 'px'
102		            'transform': 'translateX(-' + offset + 'px)'
103		        });
104
105		        $innerCircle.css({
106		            //'left': offset + 'px'
107		            'transform': 'translateX(' + offset + 'px)'
108		        });
109		    }).trigger('scroll');
110
111		}else{
112			$('.line-outercircle > .outercircle').unwrap();
113			$('.line-innercircle > .innercircle').unwrap();
114		}
115	}
116}
117
118tourniquetMobile();
119
120//////////////////////
121/* HEADER CANDIDATS */
122//////////////////////
123
124function headerCandidat(){
125	if($('.container-tourniquet2').length > 0){
126		$('.container-tourniquet2 > .outercircle2').wrapAll('<div class="line-outercircle2"></div>');
127		$('.container-tourniquet2 > .innercircle2').wrapAll('<div class="line-innercircle2"></div>');
128
129		// Les deux éléments ciblés
130	    var $outerCircle2 = $('.line-outercircle2');
131	    var $innerCircle2 = $('.line-innercircle2');
132	    
133	    const $outerCircle2Html = $('.line-outercircle2').html()
134	    const $innerCircle2Html = $('.line-innercircle2').html()
135
136    	$outerCircle2.append($outerCircle2Html).append($outerCircle2Html)
137    	$innerCircle2.append($innerCircle2Html)
138
139	    // Le conteneur qui définit la zone de l'effet (le et_pb_section_0)
140	    var $container2 = $('.container-tourniquet2');
141	    
142	    // 1. Définir l'amplitude du mouvement (en pixels)
143	    // Plus cette valeur est grande, plus l'effet sera prononcé au scroll.
144	    var movementRange2 = 750; 
145	    
146	    // 2. Définir une fonction qui gère le défilement
147	    $(window).on('scroll', function() {
148	        var windowScrollTop2 = $(window).scrollTop();
149	        var containerTop2 = $container2.offset().top;
150	        var containerHeight2 = $container2.outerHeight();
151	        var windowHeight2 = $(window).height();
152	        var startScroll2 = containerTop2 - windowHeight2;
153	        var endScroll2 = containerTop2 + containerHeight2;
154	        if (windowScrollTop2 < startScroll2 || windowScrollTop2 > endScroll2) {
155	            return;
156	        }
157
158	        var progress2 = (windowScrollTop2 - startScroll2) / (endScroll2 - startScroll2);
159	        progress2 = Math.max(0, Math.min(1, progress2));
160	        var offset2 = progress2 * movementRange2;
161	        $outerCircle2.css({
162	            //'left': -offset2 + 'px'
163	            'transform': 'translateX(-' + offset2 + 'px)'
164	        });
165
166	        $innerCircle2.css({
167	            //'left': offset2 + 'px'
168	            'transform': 'translateX(' + offset2 + 'px)'
169	        });
170	    }).trigger('scroll');
171	}
172		
173}
174
175headerCandidat();
176
177//////////////////////////////////////
178/* BLOCK WRAP + CARROUSEL EXPERTISE */
179//////////////////////////////////////
180
181const $wrapsExpertise = $(".wrap-expertise");
182function wrapsExpertise(){
183	if($(window).width() > 980){
184		$wrapsExpertise.on({
185			mouseenter: function () {		
186				$(".wrap-expertise.unwrap").removeClass("unwrap");
187				$(this).addClass("unwrap");
188				var $wrapExpertiseNb = $(this).index();
189				switch($wrapExpertiseNb){
190					case 0 :
191						$(".wrap-expertise-img").css('background-image',"url(/wp-content/uploads/2025/12/accesud-bkd-experiences-logistique.png)")
192						break;			
193					case 1 :				
194						$(".wrap-expertise-img").css('background-image',"url(/wp-content/uploads/2025/10/accesud-bkd-experiences.png)")
195						break;			
196					case 2 :				
197						$(".wrap-expertise-img").css('background-image',"url(/wp-content/uploads/2025/12/accesud-bkd-experiences-restauration.png)")
198						break;			
199					case 3 :				
200						$(".wrap-expertise-img").css('background-image',"url(/wp-content/uploads/2025/12/accesud-bkd-experiences-tertiaire.png)")
201						break;
202					default:
203						$(".wrap-expertise-img").css('background-image',"url(/wp-content/uploads/2025/12/accesud-bkd-experiences-logistique.png)")
204				}
205			}
206		});
207		$(".swiper-expertises-home .swiper-slide").addClass("visible-desktop")
208	}else{
209		$(".swiper-expertises-home .swiper-slide").removeClass("visible-desktop")
210	}
211}
212
213wrapsExpertise();
214
215$(".wrap-expertise").wrapAll("<div class='swiper-wrapper' />");
216$(".swiper-expertises-home").append("<div class='swiper-btn'><div class='swiper-button-next'></div><div class='swiper-button-prev'></div></div>");
217
218var swiper = new Swiper('.swiper-expertises-home',{
219	slidesPerView: 1,
220	centerSlide: true,
221	effect: "fade",
222  spaceBetween: 30,
223  navigation: {
224    nextEl: ".swiper-button-next",
225    prevEl: ".swiper-button-prev",
226  },
227  breakpoints: {
228    981: {
229      slidesPerView: 4,
230      spaceBetween: 20,
231			effect: "slide",
232			enabled: false,
233    },
234  }
235});
236
237swiper.on('slideChange',function(){
238	const indexReelActif = swiper.realIndex;
239	switch(indexReelActif){
240		case 0 :
241			$(".wrap-expertise-img").css('background-image',"url(/wp-content/uploads/2025/12/accesud-bkd-experiences-logistique.png)")
242			break;			
243		case 1 :				
244			$(".wrap-expertise-img").css('background-image',"url(/wp-content/uploads/2025/10/accesud-bkd-experiences.png)")
245			break;			
246		case 2 :				
247			$(".wrap-expertise-img").css('background-image',"url(/wp-content/uploads/2025/12/accesud-bkd-experiences-restauration.png)")
248			break;			
249		case 3 :				
250			$(".wrap-expertise-img").css('background-image',"url(/wp-content/uploads/2025/12/accesud-bkd-experiences-tertiaire.png)")
251			break;
252		default:
253			$(".wrap-expertise-img").css('background-image',"url(/wp-content/uploads/2025/12/accesud-bkd-experiences-logistique.png)")
254	}
255});
256
257///////////////////////
258/* CARROUSEL BESOINS */
259///////////////////////
260
261$(".swiper-besoins .swiper-slide").wrapAll("<div class='swiper-wrapper' />");
262$(".swiper-besoins").append("<div class='swiper-btn'><div class='swiper-button-next'></div><div class='swiper-button-prev'></div></div>");
263
264var swiperBesoins = new Swiper('.swiper-besoins',{
265	slidesPerView: 1,
266	centerSlide: true,
267  spaceBetween: 80,
268  navigation: {
269    nextEl: ".swiper-button-next",
270    prevEl: ".swiper-button-prev",
271  },
272  breakpoints: {
273    480: {
274      slidesPerView: 2,
275      spaceBetween: 20,
276    },
277    768: {
278      slidesPerView: 3,
279      spaceBetween: 45,
280    },
281    1140: {
282      slidesPerView: 4,
283      spaceBetween: 40,
284    },
285  }
286});
287
288function squarify(){
289	var squareBesoin = $(".swiper-besoins .swiper-slide").width();
290	$(".swiper-besoins-txt, .swiper-besoins-img").css("height",squareBesoin)
291}
292squarify()
293
294
295////////////////////////
296/* elements onresize */
297////////////////////////
298
299var resizeTimer;
300$(window).on('resize', function() {
301  clearTimeout(resizeTimer);
302  resizeTimer = setTimeout(function() {
303      wrapsExpertise();
304      squarify();
305      tourniquetMobile();
306  }, 250); 
307});
308
309////////////////////////
310/* elements onresize */
311////////////////////////
312
313$(".swiper-candidat .swiper-slide").wrapAll("<div class='swiper-wrapper' />");
314$(".swiper-candidat").append("<div class='swiper-btn'><div class='swiper-button-next'></div><div class='swiper-button-prev'></div></div>");
315
316var swiperCandidat = new Swiper('.swiper-candidat',{
317	observer : true,
318	observeParents: true,
319	centeredSlides: true,
320	effect: "slide",
321  spaceBetween: 60,
322  slidesPerView: 'auto',
323  navigation: {
324    nextEl: ".swiper-button-next",
325    prevEl: ".swiper-button-prev",
326  },
327});
328
329////////////////
330/* FORMULAIRE */
331////////////////
332
333$('textarea[name="message"]').attr("rows","6")
334
335$(".contact-type").change(function(){
336	var demandValue = $(this).val();
337
338	if (demandValue === "Un candidat"){		
339		$(".field-pj").addClass("visible");
340		$(".row-entreprise").removeClass("visible");
341    $(".row-entreprise input").val("");
342	}else if (demandValue === "Une entreprise"){
343		$(".field-pj").removeClass("visible");
344		$(".row-entreprise").addClass("visible");
345		$(".field-pj").text("Charger mon CV*");
346    $(".hidden-field-pj").val("");
347	}
348})
349
350$('.wpcf7-form').on('submit', function(e) {
351  var objetDemande = $(".contact-type").val();
352  var nomEntreprise = $(".row-entreprise input").val();
353  var fileInput = $('input[name="piece-jointe"]');
354  
355  if (objetDemande === 'Un candidat' && !fileInput.val()) {
356    e.preventDefault();
357    alert('Veuillez joindre votre CV pour un dépôt de candidature.');
358    return false;
359  } 
360
361});
362
363
364$(".field-pj").click(function(){
365	$(".hidden-field-pj").trigger("click");
366})
367
368$(".hidden-field-pj").change(function(){
369	var attachPj = ($(this).val())
370	var nomFichier = attachPj.split('/').pop();
371	$(".field-pj").text(nomFichier);
372})
373
374
375});

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.