(function ($) { function notes() { var $link = $('#presentation a'); var allNotes = $ ('.notes > div'); allNotes.hide(); $link.each(function(){ $(this).click(function(e) { $this = $(this); if ( $this.is('#ressource') || $this.is('#bibliographie') ) { e.preventDefault(); var $url = $this.attr("href"); if ($( ".side_notes" )[0]) { $( ".side_notes" ).fadeOut(200, function() { $(this).remove(); }); } else if ($('.notes > div')[0]) { $( ".notes > div" ).fadeOut(200); } content_type($url, $this); ajax($url, $this); } else if ($this.is('#note')) { e.preventDefault(); var id_notes = $this.attr('href'); var notes = $(".notes "+id_notes); if ($( ".side_notes" )[0]) { $( ".side_notes" ).fadeOut(200, function() { $(this).remove(); }); } else if ($('.notes > div')[0]) { $( ".notes > div" ).fadeOut(200); } notes.fadeIn(200); position_link($this, notes); $(window).resize(function() { position_link($this, notes); }); close(); } }); }) function content_type($url, $this) { if ($this.is('#ressource')) { $("
").insertAfter(".__wrap_side .notes"); } else if ( $this.is('#bibliographie') ) { $("
").insertAfter(".__wrap_side .notes"); } } function ajax($url , $this) { $.ajax({ url: $url + '#publicationAjax', method: "GET", dataType:'text', async: true, success: function(data) { if ($this.is('#ressource')) { var hero = 'article .__wrapper .__hero'; var head = 'article .__wrapper .__head'; $(data).find(hero +','+ head).appendTo('.side_notes > div a').hide().fadeIn(200); $("
").appendTo(".side_notes > div"); }else if ($this.is('#bibliographie')) { $(data).find('article.bibliographie').appendTo('.side_notes > div'); $("
").appendTo(".side_notes > div"); } position_link($this); $(window).resize(function() { position_link($this); }); close(); }, }) } function position_link($this, id_notes) { var $top_link = $this.position().top; var width = $(window).width(); if ( $this.is('#ressource') || $this.is('#bibliographie') ) { $('.side_notes').css("top", $top_link); } if ( $this.is('#note') ) { id_notes.css("top", $top_link); } if (width <= '754') { var $top_link = $this.offset().top; if ( $this.is('#ressource') || $this.is('#bibliographie') ) { $('.side_notes').css("top", $top_link); } if ( $this.is('#note') ) { id_notes.css("top", $top_link); } } } function close() { var $croix = $('.close'); $croix.click(function(e) { $(this).parents('.side_notes').fadeOut(200, function() { $(this).remove(); }); $(this).parents('.notes > div').fadeOut(200); }); } } function slide() { var $slide = $('main section .__slide'); var thumbnails = $('.__slide article.programme.is-selected'); var $head_date = $('#block-colloque2024-views-block-slide-programme-block-1 section.first:before'); $slide.each(function() { $(this).flickity({ cellAlign: 'left', pageDots: false, contain: true, on: { ready: function() { var dates = {}, date; var $cells = this.cells; $('.__slide article.programme[data-date]').each(function(i, el){ date = $(el).data('date'); if (dates.hasOwnProperty(date)) { dates[date] += 1; $(this).addClass('last'); } else { dates[date] = 1; $(this).addClass('first'); var dateValue = $(this).data('date'); $(""+dateValue+"").prependTo($(this)); } }); }, } }) }); var $footer_slide = $('footer .__slide'); $footer_slide.each(function() { $(this).flickity({ cellAlign: 'left', pageDots: false, autoPlay: true, pauseAutoPlayOnHover: false, contain: true, prevNextButtons: false, }) }); var $slide_paragrpahe = $('main .paragraph .__slide'); $slide_paragrpahe.each(function() { $(this).flickity({ cellAlign: 'left', pageDots: false, prevNextButtons: false, contain: true, watchCSS: true, }) }); } function burger() { var hamburgers = document.querySelector(".hamburger"); var nav = document.querySelector(".nav-main"); hamburgers.addEventListener("click", function() { this.classList.toggle("is-active"); nav.classList.toggle("is-active"); $('html, body').toggleClass("is-active"); $('#block-popsu-colloque-branding').toggleClass("is-active"); }); } function replaceAny(){ var $selects = $(".js-form-type-select .form-select"); $.each( $selects , function(i) { var selectOptionAll = $(this).find("option[value='All']"); var optionContent = selectOptionAll.html(); if ($(this).attr('id') == 'edit-field-theme-target-id') { var newhtml = optionContent.replace("- Any -", "Thèmes").replace("- Tout -", "Thèmes"); } else if ($(this).attr('id') == 'edit-field-type-de-publication-target-id' ) { var newhtml = optionContent.replace("- Any -", "Publications").replace("- Tout -", "Publications"); } else { // nothing } selectOptionAll.html(newhtml); }); } function select_custom() { var x, i, j, l, ll, selElmnt, a, b, c; /* Look for any elements with the class "form-select": */ x = document.querySelectorAll(".js-form-item-field-theme-target-id, .js-form-item-field-type-de-publication-target-id "); l = x.length; for (i = 0; i < l; i++) { selElmnt = x[i].getElementsByTagName("select")[0]; ll = selElmnt.length; /* For each element, create a new DIV that will act as the selected item: */ a = document.createElement("DIV"); a.setAttribute("class", "select-selected"); a.innerHTML = selElmnt.options[selElmnt.selectedIndex].innerHTML; x[i].appendChild(a); /* For each element, create a new DIV that will contain the option list: */ b = document.createElement("DIV"); b.setAttribute("class", "select-items select-hide"); for (j = 1; j < ll; j++) { /* For each option in the original select element, create a new DIV that will act as an option item: */ c = document.createElement("DIV"); c.innerHTML = selElmnt.options[j].innerHTML; c.addEventListener("click", function(e) { /* When an item is clicked, update the original select box, and the selected item: */ var y, i, k, s, h, sl, yl; s = this.parentNode.parentNode.getElementsByTagName("select")[0]; sl = s.length; h = this.parentNode.previousSibling; for (i = 0; i < sl; i++) { if (s.options[i].innerHTML == this.innerHTML) { s.selectedIndex = i; h.innerHTML = this.innerHTML; y = this.parentNode.getElementsByClassName("same-as-selected"); yl = y.length; for (k = 0; k < yl; k++) { y[k].removeAttribute("class"); } this.setAttribute("class", "same-as-selected"); break; } } h.click(); }); b.appendChild(c); } x[i].appendChild(b); a.addEventListener("click", function(e) { /* When the select box is clicked, close any other select boxes, and open/close the current select box: */ e.stopPropagation(); closeAllSelect(this); this.nextSibling.classList.toggle("select-hide"); this.classList.toggle("select-arrow-active"); }); } function closeAllSelect(elmnt) { /* A function that will close all select boxes in the document, except the current select box: */ var x, y, i, xl, yl, arrNo = []; x = document.getElementsByClassName("select-items"); y = document.getElementsByClassName("select-selected"); xl = x.length; yl = y.length; for (i = 0; i < yl; i++) { if (elmnt == y[i]) { arrNo.push(i) } else { y[i].classList.remove("select-arrow-active"); } } for (i = 0; i < xl; i++) { if (arrNo.indexOf(i)) { x[i].classList.add("select-hide"); } } } /* If the user clicks anywhere outside the select box, then close all select boxes: */ document.addEventListener("click", closeAllSelect); } function remove_isactive() { $( window ).resize(function() { var width = $(window).width(); if (width <= '1185') { $('header .is-active').removeClass("is-active"); $('body.is-active').removeClass("is-active"); } }); } function hidden_morelinkMoment(){ TxtMomentHeght = $('#moments .__content').height(); limitHeight = 16 * 8; $morelink = $('#moments .more_link'); if(TxtMomentHeght <= limitHeight){ $morelink.addClass('is_active'); } $morelink.click(function(e) { e.preventDefault(); $('#moments .__content').addClass('is_active'); $morelink.addClass('is_active'); }) } function scrollReaveal(){ const nodes = { hero : document.querySelectorAll('.__img-hero'), hero_participant : document.querySelectorAll('.participant_full .__img'), title_participant: document.querySelectorAll('.participant_full figcaption'), article : document.querySelectorAll('.home #txt_present, article#presentation'), blocs : document.querySelectorAll('#block-views-block-slide-programme-block-1, #block-views-block-dernieres-publications-block-1, .__ressources > *'), p : document.querySelectorAll('article#presentation p, .letter-sort, .participant_full .content > *'), programme: document.querySelectorAll('.programme.container'), thumbnails : document.querySelectorAll('.programme .thumbnails, .views.__publications .thumbnails, .les_intervenants .thumbnails_participants'), node_moment : document.querySelectorAll('#moments .__title, #moments .__wrapper, #moments .__wrap_content .__content > *, #moments .__wrap_side') } const showUp = { origin: 'bottom', delay: 100, duration: 600, distance: '50px', easing: 'cubic-bezier(0.5, 0, 0, 1)' } const Show = { delay: 100, duration: 600, easing: 'cubic-bezier(0.5, 0, 0, 1)' } const showleft = { origin: 'left', delay: 100, duration: 600, distance: '50px', easing: 'cubic-bezier(0.5, 0, 0, 1)' } console.log(nodes.front); ScrollReveal().reveal(nodes.hero, Show); ScrollReveal().reveal(nodes.hero_participant, showleft); ScrollReveal().reveal(nodes.article, showUp); ScrollReveal().reveal(nodes.blocs, showUp); ScrollReveal().reveal(nodes.p, showUp); ScrollReveal().reveal(nodes.programme, showUp); ScrollReveal().reveal(nodes.thumbnails, showUp); ScrollReveal().reveal(nodes.views, showUp); ScrollReveal().reveal(nodes.title_participant, Show); ScrollReveal().reveal(nodes.node_moment, showUp); } function pagination(){ const $next = $('#block-views-block-gallerie-block-1 .pager a'); $next.on("click",function(event){ event.preventDefault(); const $url = $(this).attr('href'); var PageMax = $(this).attr('data-totalpages'); var split = $url.split('='); var base_uri = split[0]; var currentPage = split[1]; currentPage++; ajaxPage(base_uri, currentPage, $url); if (currentPage > PageMax) { $(this).remove(); } }); function ajaxPage(base_uri, currentPage, $url) { $('.loader').addClass('show'); $.ajax({ method: "GET", url: $url, async: true, cache: false, dataType: "html", statusCode: { //traitement en cas de succès 200: function() { $('.loader').removeClass('show'); }, } }) .done(function( data ) { let $data = $(data).find(".wrap--image"); $( "#block-views-block-gallerie-block-1 section.d-flex" ).append($data); $next.attr('href', base_uri +'='+ currentPage); }); } } function Light(){ lightbox.option({ 'resizeDuration': 200, 'wrapAround': true, 'alwaysShowNavOnTouchDevices':true, 'positionFromTop': 50, 'disableScrolling':true }) } $( document ).ready(function() { // currenturl(); scrollReaveal(); notes(); slide(); burger(); replaceAny(); select_custom(); remove_isactive(); hidden_morelinkMoment(); pagination(); Light(); }); })(jQuery);