{"version":3,"sources":["../src/scripts/ListeResultats/app.js","../src/scripts/ListeResultats/calendrier.js","../src/scripts/ListeResultats/filtring.js","../src/scripts/ListeResultats/menuMobile.js","../src/scripts/ListeResultats/resultat.js","../src/scripts/ListeResultats/taggageAClicks.js","../src/scripts/ListeResultats/utilities.js","Scripts/src/ListeResultats/analytics.js","../src/scripts/lib/datepicker.js"],"names":["_typeof","obj","Symbol","iterator","constructor","prototype","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","o","minLen","_arrayLikeToArray","n","Object","toString","call","slice","name","Array","from","test","iter","isArray","len","length","i","arr2","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","enumerable","configurable","writable","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","ListeResultat","config","this","value","sessionStorage","setItem","JSON","stringify","self","utilities","utilitiesListeResultat","navMobile","menuMobile","filtres","filtring","datepicker","calendrier","presentation","getModale","eventDataJs","document","showMore","true","false","window","addEventListener","_locationHashChanged","filtresResultats","initialize","menuInitialized","documentElement","clientWidth","blocksInfos","infosPratiques","getElementById","expert","information","require","isTouchDevice","switchTelDesktop","classList","add","storePagination","settingsApp","app","belge","commons","convertButtonToLink","isFiltered","getMoreResultats","moreResultat","popupFiltres","hasToggleFunction","querySelectorAll","forEach","el","_modale","calendarElement","tools","childElementCount","childNodes","localName","querySelector","scrollIntoView","behavior","e","showMap","display","btn","parse","getItem","mapState","dataset","map","src","urlCarte","style","id","img","idVideo","videoId","optionsLightbox","className","onShow","body","onClose","remove","settingsListeResultats","modules","moduleLightbox","then","templateInstance","create","show","moduleVideo","video","infosVideo","localStorage","concat","innerHTML","title","description","videoPlayerLib","player","playerVideo","thumbnailsVideo","data","createElement","type","iso8601Format","Math","round","duration","@context","@type","thumbnailUrl","thumbnail_url","contentUrl","appendChild","blocks","_this","_writeSchemaOrg","count","parseInt","helpers","offset","height","nextElementSibling","previousElementSibling","toggle","includes","scrollTop","setAttribute","btns","preventDefault","libelle","modalPopup","contentNotLoaded","overrideStyles","items","popupModal","reopen","hidden","setTimeout","delay","history","pushState","location","pathname","search","isHashed","url","lr","urlListeAvisClient","indexNumeroPageAvisClient","totalPageAvisClient","console","error","$","ajax","index","success","avisList","fragment","avis","importNode","content","titre","nomVoyage","urlProduit","innerText","setProperty","note","prenom","dateDepart","reponse","err","container","btnsAction","filter","item","js","windowWidth","_popup$classList","classes","popup","btnClose","contentPopup","titlePopup","apply","prepend","textContent","hideFiltre","inline","href","numeroPageVoyage","ListeVoyages","indexNumeroPageVoyage","async","beforeSend","append","reload","complete","nbreVoyagesTotal","resultats","nbreVoyages","nbreVoyagesAffiches","hide","showPagination","tri","typeTri","urlTrierListeResultats","dataType","html","jqXHR","textStatus","errorThrown","updateSettingsResultats","_ListeResultat","_super","arguments","_inherits","_createSuper","block","datePicker","selectorCalendar","classFiltring","now","Date","testIfPrevMonthIsPast","datePickerElement","currentMonth","getMonth","currentYear","getFullYear","getDateSelected","calendar","params","URLSearchParams","newDate","get","_newDate$split","split","_newDate$split2","_slicedToArray","day","month","year","date","options","startDay","customDays","customMonths","alwaysShow","maxDate","minDate","disableYearOverlay","showAllDates","dateSelected","onMonthChange","onSelect","dateSelectionne","Intl","DateTimeFormat","format","dateDepartHidden","selectFlexibilite","_getDate","json","reloadResultat","_deleteDate","currentDate","newData","filtre","splice","push","filtringClass","checkbox","updateSettingsFiltres","hasFiltre","isLoadedCalendar","pushFiltersCheckedInArray","a","checked","setFilterInArray","getFlexibilite","valeur","newflex","nbtypes","deleteFilterInArray","deleteObj","newJson","handlerFiltre","event","explicitOriginalTarget","tagName","goBackNavigation","pop","indexOf","_ajaxCall","selection","init","favoris","eventFilterChanged","idBlockFiltres","idNosVoyages","_keepParametersTracking","urlFiltreListeResultats","urlCalculFiltreListeResultats","callback","filtresCoches","urlParams","onpopstate","match","pl","decode","s","decodeURIComponent","replace","query","substring","exec","filtreDansURL","urlMAJ","protocol","host","parametresTracking","urlSansFiltre","path","MENU_NAVIGATION","template","toggleSubMenu","stickyNavbar","stickyFiltres","stickMenu","y","derniere_position_de_scroll_connue","ticking","scrollY","requestAnimationFrame","positionTopFiltre","top","onscroll","menu","li","setActive","isOpen","parentElement","children","sib","removeAttribute","leftPos","max","offsetLeft","scrollLeft","ul","right","left","overflowX","link","boxLinkingRegions","contentHtml","typeDestinations","getAttribute","_getContent","expandLink","boxLinkingActivites","element","list","outerHTML","handlerPagination","isNaN","off","toggleMap","btnMoreResultats","_GetResultats","setTaggage","_tagLinking","categorie","action","boxlinking","closest","checkboxFiltre","trim","btnShowAllFilters","btnTri","circuit","codeCircuit","paths","lastPath","contextualisation","contextualisationType","linkPagePays","btnVideo","boxLinking","arrow","btnMoreresultat","showAvis","contains","mag","linkAllArticles","linkArticlesMag","origin","suggestions","linkSuggestionCircuits","elem","rect","getBoundingClientRect","bodyElem","bottom","hash","keys","selector","classToggle","hasHtmlContent","states","nbLignesAffichees","getComputedStyle","getPropertyValue","hauteurLigne","lineHeight","hauteurBloc","_unused","isObjectEmpty","nodeValue","parent","CustomEvent","bubbles","cancelable","detail","dispatchEvent","load","ajaxComplete","xhr","settings","startsWith","str","word","lastIndexOf","t","exports","module","define","amd","l","m","c","d","r","toStringTag","__esModule","bind","hasOwnProperty","p","Y","L","j","reduce","u","h","f","v","join","M","months","days","disabledDates","weekendIndices","events","getRange","start","end","q","setDate","getDay","D","setMonth","b","getDate","g","w","S","x","C","E","k","O","P","N","_","disabler","noWeekends","I","unshift","overlayPlaceholder","overlayButton","overlayMonths","sibling","disabled","readOnly","respectDisabledReadOnly","deselect","first","currentMonthName","originalMinDate","originalMaxDate","nonInput","formatter","toDateString","noPosition","position","centered","calendarContainer","positionedEl","width","onHide","focus","setFullYear","which","keyCode","__qs_shadow_dom","isMobile","disableMobile","monthNum","direction","removeEventListener","toLowerCase","R","A","shadowDom","inlinePosition","some","F","startDate","second","Node","parentNode","customElement","nodeName","setMin","setMax","navigate"],"mappings":"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","file":"static/scripts/listeResultats/listeResultats.js.map","sourcesContent":["'use strict';\r\n\r\nclass ListeResultat {\r\n\tconstructor(config) {\r\n\t\t/// On surcharge {config} par {defaults}\r\n\t\t/// les propriétés de {defaults} ne sont ajoutées que si elles n'existent pas\r\n\t\tthis.config = config\r\n\t}\r\n\r\n\tinitialize() {\r\n\r\n\t\t/// Variables et variables en session\r\n\t\tsessionStorage.setItem('app', JSON.stringify({}));\r\n\t\tlet self = this;\r\n\r\n\t\t/// On récupère les différentes classes et extension\r\n\t\tconst utilities = new utilitiesListeResultat();\r\n\t\tconst navMobile = new menuMobile();\r\n\t\tconst filtres = new filtring();\r\n\t\tconst datepicker = new calendrier();\r\n\r\n\t\t/// Présentation\r\n\t\tthis.presentation(utilities);\r\n\r\n\t\t/// Avis\r\n\t\tthis.getModale('avis');\r\n\t\tthis.eventDataJs(document);\r\n\t\tutilities.showMore('#blockAvis', '.lr__more', 'is-overflow', false, {\r\n\t\t\ttrue: 'Lire la suite',\r\n\t\t\tfalse: 'Masquer'\r\n\t\t});\r\n\r\n\t\twindow.addEventListener('hashchange', () => {\r\n\t\t\tself._locationHashChanged(utilities);\r\n\t\t}, false);\r\n\r\n\t\t/// Blocks Filtres et Résultats\r\n\t\tthis.filtresResultats(false, filtres, datepicker);\r\n\t\tfiltres.initialize();\r\n\r\n\t\t/// Menu Mobile\r\n\t\tlet menuInitialized = false;\r\n\t\tnavMobile.initialize(document.documentElement.clientWidth, menuInitialized);\r\n\r\n\t\t/// Blocks informations\r\n\t\tconst blocksInfos = {\r\n\t\t\t'infosPratiques': document.getElementById('infosPratiques'),\r\n\t\t\t'expert': document.getElementById('expert')\r\n\t\t}\r\n\t\tthis.information(blocksInfos, utilities);\r\n\r\n\t\tif (document.getElementById('moduleTelAgence')) {\r\n\t\t\t!require('common/helpers').isTouchDevice() && require('common/helpers').switchTelDesktop('moduleTelAgence');\r\n\t\t\t!require('common/helpers').isTouchDevice() && document.getElementById('moduleTelAgence').classList.add('module__link');\r\n\t\t}\r\n\r\n\t\t/// Navigation\r\n\t\tthis.storePagination();\r\n\r\n\t\t/// Uniquement pour terdav.be\r\n\t\tsettingsApp.app === 'TDV' && settingsApp.belge && commons.convertButtonToLink('data-voyage');\r\n\r\n\t}\r\n\r\n\t///\r\n\t/// Blocs filtres et resultats\r\n\t/// Fonction intermédiaire permettant de ne lancer que les fonctions liées aux filtres et aux circuits\r\n\tfiltresResultats(isFiltered, filtring, calendrier) {\r\n\t\tlet self = this;\r\n\t\tconst getMoreResultats = new moreResultat();\r\n\t\tconst utilities = new utilitiesListeResultat();\r\n\r\n\t\t/// Filtres\r\n\t\tdocument.getElementById('blockFiltresAutres') && self.popupFiltres(document.documentElement.clientWidth);\r\n\t\tlet hasToggleFunction = false;\r\n\t\tdocument.querySelectorAll('[data-show]').forEach(el => {\r\n\t\t\tel.addEventListener('click', function () {\r\n\t\t\t\tself._modale('moreFiltres');\r\n\t\t\t\t!hasToggleFunction && utilities.showMore('#blockFiltresAutres', '.labelShowMore', 'is-overflow', true);\r\n\t\t\t\thasToggleFunction = true;\r\n\t\t\t});\r\n\t\t});\r\n\r\n\t\tisFiltered && this.eventDataJs(document.getElementById('blockFiltre'));\r\n\t\tconst calendarElement = document.getElementById('calendrier');\r\n\t\tcalendrier.initialize(calendarElement, filtring);\r\n\r\n\t\t/// Pagination\r\n\t\tgetMoreResultats.initialize();\r\n\t}\r\n\r\n\t///\r\n\t/// Bloc Présentation\r\n\tpresentation(tools) {\r\n\t\ttools.showMore('.section--presentation', '.lr__more', 'is-overflow', true, {});\r\n\r\n\t\t/// Pour styler le contenu\r\n\t\tdocument.querySelectorAll('.section--presentation .bloc__descriptif p').forEach(el => {\r\n\t\t\tif (el.childElementCount === 1 && el.childNodes[0].localName === 'strong') {\r\n\t\t\t\tel.classList.add('intertitre')\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tscrollNext() {\r\n\t\tdocument.querySelector('.section--presentation').scrollIntoView({\r\n\t\t\tbehavior: \"smooth\"\r\n\t\t})\r\n\t}\r\n\r\n\ttoggleMap(e) {\r\n\t\tlet showMap = false,\r\n\t\t\tdisplay = 'none',\r\n\t\t\tbtn = e.target\r\n\t\tif (btn === undefined) {\r\n\t\t\tbtn = e;\r\n\t\t\tshowMap = JSON.parse(sessionStorage.getItem('app')).mapState\r\n\t\t} else {\r\n\t\t\tshowMap = JSON.parse(btn.dataset.map)\r\n\t\t}\r\n\r\n\t\tif (!showMap) {\r\n\t\t\tdisplay = 'flex';\r\n\t\t}\r\n\t\tbtn.dataset.map = !JSON.parse(showMap);\r\n\t\tif (JSON.parse(sessionStorage.getItem('app')) !== null) {\r\n\t\t\tlet obj = JSON.parse(sessionStorage.getItem('app'));\r\n\t\t\tobj.mapState = showMap;\r\n\t\t\tsessionStorage.setItem('app', JSON.stringify(obj));\r\n\t\t}\r\n\r\n\t\tdocument.querySelectorAll('.circuit--carte').forEach(el => {\r\n\t\t\tif (el.querySelector('img').src === '') {\r\n\t\t\t\tel.querySelector('img').src = el.querySelector('img').dataset.urlCarte;\r\n\t\t\t}\r\n\t\t\tel.style.display = display;\r\n\t\t})\r\n\t}\r\n\r\n\tvideo(id) {\r\n\t\tlet img = document.querySelector('#idVideoVimeo img'),\r\n\t\t\tidVideo = id === undefined ? img.dataset.videoId : id.target.dataset.videoId,\r\n\t\t\toptionsLightbox = {\r\n\t\t\t\tclassName: `lightbox--video`,\r\n\t\t\t\tonShow: () => {\r\n\t\t\t\t\tdocument.body.classList.add('lightbox--open');\r\n\t\t\t\t},\r\n\t\t\t\tonClose: () => {\r\n\t\t\t\t\tdocument.body.classList.remove('lightbox--open');\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\r\n\t\tsettingsListeResultats.modules.moduleLightbox.then(() => {\r\n\t\t\tlet moduleLightbox = require('modules/lib/basicLightbox.min');\r\n\r\n\t\t\tconst templateInstance = moduleLightbox.create(document.querySelector(`[data-template='video']`), optionsLightbox);\r\n\t\t\ttemplateInstance.show();\r\n\r\n\t\t\tsettingsListeResultats.modules.moduleVideo.then(() => {\r\n\t\t\t\tlet moduleVideo = require('modules/video'),\r\n\t\t\t\t\tvideo = new moduleVideo();\r\n\t\t\t\tvideo.initialize(idVideo),\r\n\t\t\t\t\tinfosVideo = JSON.parse(localStorage.getItem(`video-${idVideo}`));\r\n\r\n\t\t\t\tif (infosVideo != null) {\r\n\t\t\t\t\tdocument.querySelector(`.lightbox--video .video__titre`).innerHTML = infosVideo.title;\r\n\t\t\t\t\tdocument.querySelector(`.lightbox--video p`).innerHTML = infosVideo.description;\r\n\t\t\t\t\tdocument.querySelectorAll(`.lightbox--video [data-video-id]`).forEach((el) => {\r\n\t\t\t\t\t\tself.video(el.dataset.videoId)\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\tsettingsListeResultats.modules.videoPlayerLib.then(() => {\r\n\t\t\t\t\tconst player = video.playerVideo();\r\n\t\t\t\t\tvideo.thumbnailsVideo(player);\r\n\t\t\t\t});\r\n\t\t\t})\r\n\t\t});\r\n\t}\r\n\r\n\t_writeSchemaOrg(data, idVideo) {\r\n\t\tvar el = document.createElement('script');\r\n\t\tel.type = 'application/ld+json';\r\n\r\n\t\tvar iso8601Format = \"PT\" + Math.round(data.duration / 60) + \"M\" + data.duration % (Math.round(data.duration / 60) * 60) + \"S\";\r\n\t\tel.innerHTML = JSON.stringify({\r\n\t\t\t\"@context\": \"https://schema.org\",\r\n\t\t\t\"@type\": \"VideoObject\",\r\n\t\t\t\"name\": data.title,\r\n\t\t\t\"description\": data.description,\r\n\t\t\t\"thumbnailUrl\": [\r\n\t\t\t\tdata.thumbnail_url\r\n\t\t\t],\r\n\t\t\t\"duration\": iso8601Format,\r\n\t\t\t\"contentUrl\": `https://player.vimeo.com/video/${idVideo}`\r\n\t\t});\r\n\t\tdocument.getElementById('idVideoVimeo').appendChild(el)\r\n\t}\r\n\r\n\tinformation(blocks, utilities) {\r\n\t\tif (document.getElementById('idVideoVimeo') != null) {\r\n\r\n\t\t\tlet idVideo = document.getElementById('idVideoVimeo').dataset.videoId;\r\n\t\t\tsettingsListeResultats.modules.moduleVideo.then(() => {\r\n\t\t\t\tlet moduleVideo = require('modules/video'),\r\n\t\t\t\t\tvideo = new moduleVideo();\r\n\t\t\t\tvideo.initialize(idVideo, this._writeSchemaOrg);\r\n\t\t\t});\r\n\t\t}\r\n\r\n\r\n\t\tif (blocks.expert !== null) {\r\n\t\t\tutilities.showMore('#expert', '.lr__more', 'is-overflow', false, {\r\n\t\t\t\ttrue: 'Lire la suite',\r\n\t\t\t\tfalse: 'Masquer'\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\tif (blocks.infosPratiques !== null) {\r\n\t\t\tutilities.showMore('#infosPratiques', '.btn--toggle', 'is-overflow', true, {\r\n\t\t\t\ttrue: '+',\r\n\t\t\t\tfalse: 'X'\r\n\t\t\t});\r\n\t\t}\r\n\t\tif (document.querySelector('.section--avis .bloc [data-toggle=\"true\"]') !== null) {\r\n\t\t\tutilities.showMore('.section--avis', '[data-toggle=\"true\"]', 'is-overflow', true, {});\r\n\t\t}\r\n\r\n\r\n\t\tdocument.addEventListener('DOMContentLoaded', () => {\r\n\t\t\tdocument.querySelectorAll('.liste--linking').forEach((el) => {\r\n\t\t\t\tif (el.dataset.count !== undefined) {\r\n\t\t\t\t\tif (parseInt(el.dataset.count) > 2) {\r\n\t\t\t\t\t\tif (helpers.offset(el).height > 190) {\r\n\t\t\t\t\t\t\tel.classList.add('has-only-first-items-line-showed');\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tel.nextElementSibling.remove();\r\n\t\t\t\t\t\t\tel.classList.add('has-all-items-showed');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tel.nextElementSibling.remove();\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t})\r\n\t}\r\n\r\n\t// Méthode déplier/replier des box de linking\r\n\tshowAllListe(el) {\r\n\t\tel.target.previousElementSibling.classList.toggle('has-only-first-items-line-showed');\r\n\r\n\t\tif ([...el.target.previousElementSibling.classList].includes('has-only-first-items-line-showed')) {\r\n\t\t\tel.target.previousElementSibling.scrollTop = 0;\r\n\t\t\tel.target.querySelector('use').setAttribute('xlink:href', '#picto-plus')\r\n\t\t} else {\r\n\t\t\tel.target.querySelector('use').setAttribute('xlink:href', '#icon-search-minus')\r\n\t\t}\r\n\t}\r\n\r\n\r\n\t////\r\n\t//// Modales\r\n\tgetModale(type) {\r\n\t\tlet self = this;\r\n\r\n\t\tlet btns = document.querySelectorAll(`a[href=\"#${type}\"]`);\r\n\t\tbtns.forEach(el => {\r\n\t\t\tel.addEventListener('click', function (e) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\tself._modale(type);\r\n\t\t\t})\r\n\t\t});\r\n\t}\r\n\r\n\t_modale(libelle) {\r\n\t\tmodalPopup.contentNotLoaded = true; /// Le contenu préexiste au lancement de la modale\r\n\t\tmodalPopup.overrideStyles = false;\r\n\t\tmodalPopup.items.popupModal = `[data-popup-modal=\"${libelle}\"]`;\r\n\r\n\t\tmodalPopup.reopen();\r\n\t\tif (libelle === 'moreFiltres') {\r\n\t\t\tdocument.documentElement.classList.remove('has-overlay');\r\n\t\t\tdocument.getElementById('blockFiltre').scrollIntoView();\r\n\t\t\tdocument.querySelectorAll('.box--filtre').forEach(el => el.hidden = true);\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tdocument.documentElement.classList.add('has--filtre-open');\r\n\t\t\t}, settingsListeResultats.delay)\r\n\t\t}\r\n\r\n\t\tif (document.querySelector(`[data-popup-modal=\"avis\"]`) !== null) {\r\n\t\t\tdocument.querySelector(`[data-popup-modal=\"avis\"] .popup-modal__close`).addEventListener('click', function (e) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\tdocument.body.classList.remove('has-overlay');\r\n\t\t\t\thistory.pushState(null, document.title, location.pathname + location.search)\r\n\t\t\t\tdocument.querySelector(`[data-popup-modal=\"avis\"]`).classList.remove('is--visible');\r\n\t\t\t\tdocument.querySelector('.body-blackout').classList.remove('is-blacked-out');\r\n\t\t\t\tdocument.getElementById('blockFiltre').classList.remove('is-down')\r\n\t\t\t});\r\n\t\t}\r\n\t\tif (document.querySelector(`[data-popup-modal=\"moreFiltres\"]`) !== null) {\r\n\t\t\tdocument.querySelector(`[data-popup-modal=\"moreFiltres\"] .popup-modal__close`).addEventListener('click', function (e) {\r\n\t\t\t\tdocument.documentElement.classList.remove('has--filtre-open');\r\n\t\t\t\tdocument.body.classList.remove('has-overlay');\r\n\t\t\t\tdocument.querySelector('.body-blackout').classList.remove('is-blacked-out');\r\n\t\t\t\tdocument.querySelector(`[data-popup-modal=\"moreFiltres\"]`).classList.remove('is--visible');\r\n\t\t\t});\r\n\t\t}\r\n\t\tdocument.querySelector('.is-blacked-out').addEventListener('click', function (e) {\r\n\t\t\thistory.pushState(null, document.title, location.pathname + location.search)\r\n\t\t\tdocument.documentElement.classList.remove('has--filtre-open');\r\n\t\t\tdocument.body.classList.remove('has-overlay');\r\n\t\t\tdocument.querySelector('.body-blackout').classList.remove('is-blacked-out');\r\n\t\t\tdocument.getElementById('blockFiltre').classList.remove('is-down');\r\n\t\t\tdocument.querySelector(`[data-popup-modal=\"avis\"]`) !== null && document.querySelector(`[data-popup-modal=\"avis\"]`).classList.remove('is--visible');\r\n\t\t\tdocument.querySelector(`[data-popup-modal=\"moreFiltres\"]`) !== null && document.querySelector(`[data-popup-modal=\"moreFiltres\"]`).classList.remove('is--visible');\r\n\t\t});\r\n\t}\r\n\r\n\t_locationHashChanged(tools) {\r\n\t\tif (tools.isHashed('#avis')) {\r\n\t\t\tthis._modale(('avis'));\r\n\t\t\tdocument.getElementById('blockFiltre').classList.add('is-down')\r\n\t\t} else {\r\n\t\t\tdocument.getElementById('blockFiltre').classList.remove('is-down');\r\n\t\t}\r\n\t}\r\n\r\n\t////\r\n\t//// Avis\r\n\tgetAvis() {\r\n\t\tvar url = settingsListeResultats.lr.urlListeAvisClient;\r\n\t\tvar indexNumeroPageAvisClient = document.getElementById('numeroPageAvisClient').value;\r\n\t\tvar totalPageAvisClient = document.getElementById('totalPageAvisClient').value;\r\n\r\n\t\tif (typeof settingsListeResultats.lr.urlListeAvisClient === 'undefined')\r\n\t\t\tconsole.error('settingsListeResultats.lr.urlListeAvisClient est indéfinie');\r\n\r\n\t\t$.ajax({\r\n\t\t\turl: url,\r\n\t\t\ttype: 'POST',\r\n\t\t\tdata: {\r\n\t\t\t\tindex: indexNumeroPageAvisClient\r\n\t\t\t},\r\n\t\t\tsuccess: function (data) {\r\n\t\t\t\tindexNumeroPageAvisClient++;\r\n\r\n\t\t\t\tconst avisList = document.getElementById('ListeAvisClient');\r\n\t\t\t\tconst fragment = document.getElementById('listAvis');\r\n\r\n\t\t\t\tdata.forEach(avis => {\r\n\t\t\t\t\tconst instance = document.importNode(fragment.content, true);\r\n\t\t\t\t\tinstance.querySelector('.avis__titre').innerHTML = avis.titre;\r\n\r\n\t\t\t\t\tif (avis.nomVoyage !== '') {\r\n\t\t\t\t\t\tinstance.querySelector('.avis__voyage a').setAttribute('href', avis.urlProduit)\r\n\t\t\t\t\t\tinstance.querySelector('.avis__voyage a').innerText = avis.nomVoyage;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tinstance.querySelector('.avis__voyage').remove();\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tinstance.querySelector('.star-rating').style.setProperty('--percent', avis.note * 10 + '%');\r\n\r\n\t\t\t\t\tinstance.querySelector('.avis__note').innerHTML = avis.note > 5 ? 'satisfait' : 'insatisfait';\r\n\t\t\t\t\tinstance.querySelector('.avis__description').innerHTML = avis.avis;\r\n\t\t\t\t\tinstance.querySelector('.avis__prenom').innerHTML = avis.prenom;\r\n\r\n\t\t\t\t\tinstance.querySelector('.avis__date').innerHTML = avis.dateDepart;\r\n\r\n\t\t\t\t\tif (avis.reponse !== null) {\r\n\t\t\t\t\t\tinstance.querySelector('.avis__reponse p').innerText = avis.reponse;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tinstance.querySelector('.avis__reponse').remove();\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tavisList.appendChild(instance);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (indexNumeroPageAvisClient >= totalPageAvisClient)\r\n\t\t\t\t\tavisList.classList.add('is-complete');\r\n\r\n\t\t\t\tdocument.getElementById('numeroPageAvisClient').value = indexNumeroPageAvisClient;\r\n\t\t\t},\r\n\t\t\terror: function (err) {\r\n\t\t\t\tconsole.error(err)\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\teventDataJs(container) {\r\n\t\tlet self = this,\r\n\t\t\tarr = container.querySelectorAll('[data-js]'),\r\n\t\t\tbtnsAction = Array.from(arr)\r\n\t\t\t.filter(item => item.dataset.js !== 'getMoreResultat') /// le chargement des résultats via la pagination se fait dans resultat.js\r\n\r\n\t\tbtnsAction.forEach(el => {\r\n\t\t\tel.addEventListener('click', function (e) {\r\n\t\t\t\tself[e.target.dataset.js](e);\r\n\t\t\t})\r\n\t\t});\r\n\t}\r\n\r\n\tpopupFiltres(windowWidth) {\r\n\r\n\t\tconst classes = ['popup-modal', 'popup-lr', 'popup-filtres'];\r\n\t\tlet popup = document.getElementById('blockFiltresAutres');\r\n\r\n\t\t/// Création des éléments de la popup\r\n\t\tlet btnClose = document.createElement('i');\r\n\t\tbtnClose.className = 'popup-modal__close';\r\n\r\n\t\tlet contentPopup = document.createElement('div');\r\n\t\tcontentPopup.className = 'popup-content';\r\n\r\n\t\tlet titlePopup = document.createElement('div');\r\n\t\ttitlePopup.className = 'lr__titre popup-title';\r\n\r\n\t\t/// On attribut les classes et dataset aux différents éléments de la popup\r\n\t\tpopup.classList.add(...classes);\r\n\t\tpopup.dataset.popupModal = 'moreFiltres';\r\n\r\n\t\t/// On récupère le contenu\r\n\t\tlet content = popup.innerHTML;\r\n\t\tpopup.innerHTML = '';\r\n\r\n\t\t/// On injecte le titre, le contenu et le bouton de fermeture\r\n\t\tpopup.appendChild(contentPopup);\r\n\t\tpopup.prepend(btnClose);\r\n\t\tpopup.prepend(titlePopup);\r\n\t\tpopup.querySelector('.popup-content').innerHTML = content;\r\n\t\ttitlePopup.textContent = 'Plus de filtres';\r\n\t}\r\n\r\n\tshowFiltre(e) {\r\n\t\tdocument.querySelectorAll('.box--filtre').forEach(el => el.hidden = true);\r\n\t\tdocument.querySelectorAll('.popup-modal').forEach(el => el.classList.remove('is--visible'));\r\n\t\te.target.nextElementSibling.hidden = false;\r\n\t\tdocument.querySelector('.body-blackout').classList.add('is-blacked-out');\r\n\t\tthis.hideFiltre(e);\r\n\r\n\t\tdocument.getElementById('blockFiltre').scrollIntoView();\r\n\r\n\t\tsetTimeout(() => {\r\n\t\t\tdocument.documentElement.classList.add('has--filtre-open');\r\n\t\t}, settingsListeResultats.delay)\r\n\r\n\r\n\t\tif (document.documentElement.clientWidth <= 1024) {\r\n\t\t\te.target.scrollIntoView({\r\n\t\t\t\tbehavior: \"smooth\",\r\n\t\t\t\tinline: \"start\"\r\n\t\t\t})\r\n\t\t}\r\n\r\n\t}\r\n\r\n\thideFiltre(e) {\r\n\t\tdocument.querySelector('.body-blackout').addEventListener('click', function (el) {\r\n\t\t\te.target.nextElementSibling.hidden = true;\r\n\t\t\tel.target.classList.remove('is-blacked-out');\r\n\t\t\tdocument.documentElement.classList.remove('has--filtre-open');\r\n\t\t});\r\n\r\n\t\tdocument.querySelectorAll('.close').forEach(el => {\r\n\t\t\tel.addEventListener('click', function () {\r\n\t\t\t\te.target.nextElementSibling.hidden = true;\r\n\t\t\t\tdocument.documentElement.classList.remove('has--filtre-open');\r\n\t\t\t\tdocument.querySelector('.body-blackout').classList.remove('is-blacked-out');\r\n\t\t\t})\r\n\t\t})\r\n\t}\r\n\r\n\r\n\r\n\t/// Back Navigation\r\n\tstorePagination() {\r\n\t\tif (window.sessionStorage.getItem('currentPage') === null) {\r\n\t\t\twindow.sessionStorage.setItem('currentPage', window.location);\r\n\t\t}\r\n\r\n\t\t/// Je reviens sur la dernière liste de resultats consultée\r\n\t\tif (window.location.href === window.sessionStorage.getItem('currentPage')) {\r\n\r\n\t\t\tvar numeroPageVoyage = window.sessionStorage.getItem('numeroPageVoyage');\r\n\t\t\tvar url = settingsListeResultats.lr.ListeVoyages;\r\n\t\t\tvar indexNumeroPageVoyage = 1;\r\n\r\n\t\t\t/// J'avais au moins chargé 20 + n circuits\r\n\t\t\tif (numeroPageVoyage > 1) {\r\n\r\n\t\t\t\twhile (indexNumeroPageVoyage < numeroPageVoyage) {\r\n\t\t\t\t\t$.ajax({\r\n\t\t\t\t\t\turl: url,\r\n\t\t\t\t\t\ttype: \"POST\",\r\n\t\t\t\t\t\tasync: false,\r\n\t\t\t\t\t\tdata: {\r\n\t\t\t\t\t\t\tindex: indexNumeroPageVoyage\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tbeforeSend: function () {\r\n\t\t\t\t\t\t\tdocument.body.classList.add('loading');\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tsuccess: function (data) {\r\n\t\t\t\t\t\t\t$('#blockresults').append(data);\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\terror: function (err) {\r\n\t\t\t\t\t\t\tdocument.location.reload(true);\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tcomplete: function () {\r\n\r\n\t\t\t\t\t\t\t// On met à jour les différents champs\r\n\t\t\t\t\t\t\tlet nbreVoyagesTotal = settingsListeResultats.resultats.nbreVoyages;\r\n\t\t\t\t\t\t\tlet nbreVoyagesAffiches = $('#nos-voyages .circuit').length;\r\n\t\t\t\t\t\t\tdocument.getElementById('nbreCircuitsAffiches').value = nbreVoyagesAffiches;\r\n\t\t\t\t\t\t\tsettingsListeResultats.resultats.nbreVoyagesAffiches = nbreVoyagesAffiches;\r\n\t\t\t\t\t\t\tif (nbreVoyagesAffiches === nbreVoyagesTotal) {\r\n\t\t\t\t\t\t\t\t$('[data-js=\"getMoreResultat\"]').hide();\r\n\t\t\t\t\t\t\t\tsettingsListeResultats.resultats.showPagination = false;\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tdocument.body.classList.remove('loading');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t\tindexNumeroPageVoyage++;\r\n\t\t\t\t\tdocument.getElementById('numeroPageVoyage').value = numeroPageVoyage;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t/// J'étais resté sur le nombre de circuits initial\r\n\t\t\telse if (numeroPageVoyage === null) {\r\n\t\t\t\t/// Si je n'avais pas trié les résultats, je ne fais rien\r\n\t\t\t\t/// sinon je rappelle settingsListeResultats.lr.urlTrierListeResultats ///<%= Url.Action(\"TrierListeResultats\",\"ListeResultats\") %>\r\n\t\t\t\tif (window.sessionStorage.getItem('tri') !== null) {\r\n\t\t\t\t\tlet tri = {\r\n\t\t\t\t\t\ttypeTri: window.sessionStorage.getItem('tri')\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\t\t$.ajax({\r\n\t\t\t\t\t\turl: settingsListeResultats.lr.urlTrierListeResultats,\r\n\t\t\t\t\t\tasync: false,\r\n\t\t\t\t\t\tdata: tri,\r\n\t\t\t\t\t\ttype: \"POST\",\r\n\t\t\t\t\t\tdataType: \"json\",\r\n\t\t\t\t\t\tsuccess: function (data) {\r\n\t\t\t\t\t\t\tif ('#nos-voyages' != '') {\r\n\t\t\t\t\t\t\t\t$('#nos-voyages').html(data);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\terror: function (jqXHR, textStatus, errorThrown) {\r\n\t\t\t\t\t\t\tconsole.error(jqXHR, textStatus, errorThrown)\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tcomplete: function (url) {\r\n\t\t\t\t\t\t\tfiltres.updateSettingsResultats(settingsListeResultats.lr.urlTrierListeResultats);\r\n\t\t\t\t\t\t\twindow.sessionStorage.setItem('currentPage', window.location.href);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} else if (window.location.href !== window.sessionStorage.getItem('currentPage')) {\r\n\t\t\twindow.sessionStorage.setItem('tri', null);\r\n\t\t\twindow.sessionStorage.setItem('numeroPageVoyage', null);\r\n\t\t\twindow.sessionStorage.setItem('currentPage', window.location);\r\n\r\n\t\t} else {\r\n\t\t\twindow.sessionStorage.setItem('currentPage', window.location);\r\n\t\t}\r\n\t}\r\n}","class calendrier extends ListeResultat {\r\n\tinitialize(block, filtring) {\r\n\t\tlet self = this;\r\n\r\n\t\tthis.datePicker(block, filtring);\r\n\t}\r\n\r\n\tdatePicker(selectorCalendar, classFiltring) {\r\n\t\tlet self = this,\r\n\t\t\tnow = new Date();\r\n\r\n\t\t///\r\n\t\t/// Function permettant de détecter \r\n\t\t/// si le calendrier est sur le mois en cours ou non\r\n\t\tvar testIfPrevMonthIsPast = function (obj) {\r\n\t\t\tlet datePickerElement = document.querySelector('.datepicker');\r\n\t\t\tif (obj.currentMonth === now.getMonth() && obj.currentYear === now.getFullYear()) {\r\n\t\t\t\tdatePickerElement.classList.add('is-current-month');\r\n\t\t\t} else {\r\n\t\t\t\tdatePickerElement.classList.remove('is-current-month');\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t/// On récupère la date si elle a été passée en paramètre de l'URL\r\n\t\tvar getDateSelected = function (calendar) {\r\n\t\t\tlet url = window.location.search.slice(2); // on récupère les paramètres\r\n\t\t\tlet params = new URLSearchParams(url);\r\n\t\t\tlet newDate = params.get('_date');\r\n\t\t\tif (newDate != null) {\r\n\t\t\t\tconst [day, month, year] = newDate.split('/');\r\n\t\t\t\tlet date = new Date(+year, month - 1, +day);\r\n\t\t\t\tif (now > date) {\r\n\t\t\t\t\tdate = now;\r\n\t\t\t\t}\r\n\t\t\t\treturn date;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tlet options = {\r\n\t\t\tstartDay: 1, // Calendar week starts on a Monday.\r\n\t\t\tcustomDays: ['Dim', 'Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sa'],\r\n\t\t\tcustomMonths: ['Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre'],\r\n\t\t\talwaysShow: true, // Never hide the calendar.\r\n\t\t\tmaxDate: new Date(2099, 0, 1), // Jan 1st, 2099.\r\n\t\t\tminDate: now, // La date d'aujourd'hui\r\n\t\t\t//startDate: now, // This month.\r\n\t\t\tdisableYearOverlay: true,\r\n\t\t\tshowAllDates: true, // Numbers for leading & trailing days outside the current month will show.\r\n\t\t\t// customOverlayMonths: [],\r\n\t\t\t// overlayButton: 'Go!',\r\n\t\t\t// overlayPlaceholder: 'Enter a 4-digit year',\r\n\t\t\tdateSelected: getDateSelected(),\r\n\t\t\t// position: 'tr', // Top right.\r\n\r\n\t\t\t// Ne pas allez à un mois passé\r\n\t\t\tonMonthChange: instance => {\r\n\t\t\t\ttestIfPrevMonthIsPast(instance);\r\n\t\t\t},\r\n\t\t\tonShow: instance => {\r\n\t\t\t\ttestIfPrevMonthIsPast(instance);\r\n\t\t\t\tgetDateSelected(instance);\r\n\t\t\t},\r\n\t\t\t// Au click sur une date\r\n\t\t\tonSelect: (instance, date) => {\r\n\t\t\t\tconst dateSelectionne = new Intl.DateTimeFormat('fr-FR').format(instance.dateSelected);\r\n\t\t\t\tlet dateDepartHidden = document.getElementById('dateDepartHidden');\r\n\t\t\t\tlet selectFlexibilite = document.getElementById('flexibiliteLR');\r\n\r\n\t\t\t\tif (date != null && date != 'undefined') {\r\n\t\t\t\t\tdateDepartHidden.value = dateSelectionne;\r\n\t\t\t\t\tselectFlexibilite.value = 7;\r\n\t\t\t\t\t//selectFlexibilite.removeAttribute('disabled');\r\n\t\t\t\t\tself._getDate(filtres.json);\r\n\t\t\t\t\tclassFiltring.reloadResultat();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tdateDepartHidden.value = '';\r\n\t\t\t\t\tselectFlexibilite.value = null;\r\n\t\t\t\t\t//selectFlexibilite.setAttribute('disabled', true);\r\n\t\t\t\t\tself._deleteDate(filtres.json);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t// onHide: instance => {\r\n\t\t\t// \tconsole.log('Calendar hidden.')\r\n\t\t\t// },\r\n\t\t\t// Customizations.\r\n\t\t\t// formatter: (input, date, instance) => {\r\n\t\t\t// \t// This will display the date as `1/1/2019`.\r\n\t\t\t// \t//input.value = date.toDateString();\r\n\t\t\t// },\r\n\t\t}\r\n\r\n\t\tconst picker = selectorCalendar !== null ? datepicker(selectorCalendar, options) : '';\r\n\t}\r\n\r\n\t_getDate(obj) {\r\n\t\tlet currentDate = document.getElementById('dateDepartHidden').value,\r\n\t\t\tnewData = {\r\n\t\t\t\t'filtre': 'date',\r\n\t\t\t\t'value': currentDate\r\n\t\t\t};\r\n\t\t// On supprime la date précédente\r\n\t\tfor (var i = obj.length - 1; i >= 0; i--) {\r\n\t\t\tif (obj[i].filtre === 'date') {\r\n\t\t\t\tobj.splice(i, 1);\r\n\t\t\t}\r\n\t\t}\r\n\t\t// On met à jour le json\r\n\t\tobj.push(newData);\r\n\t}\r\n\r\n\t_deleteDate(obj) {\r\n\t\t// On supprime la date renseignée\r\n\t\t// et la flexibilité\r\n\t\t// dans {obj}\r\n\t\tfor (var i = obj.length - 1; i >= 0; i--) {\r\n\t\t\tif (obj[i].filtre === 'date') {\r\n\t\t\t\tobj.splice(i, 1);\r\n\t\t\t} else if (obj[i].filtre === 'flexibilite') {\r\n\t\t\t\tobj.splice(i, 1);\r\n\t\t\t}\r\n\t\t}\r\n\t\t// On reload les résultats\r\n\t\tconst filtringClass = new filtring();\r\n\t\tfiltringClass.reloadResultat();\r\n\t}\r\n}","var filtres = {\r\n\tcheckbox: document.querySelectorAll('#blockFiltre input[type=checkbox]'),\r\n\tjson: [],\r\n\t///\r\n\t/// Mise à jour des valeurs de settingsListeResultats{}\r\n\tupdateSettingsFiltres() {\r\n\t\tsettingsListeResultats.filtres.hasFiltre = document.querySelector('.filtre__container') != null ? true : false;\r\n\t\tsettingsListeResultats.filtres.isLoadedCalendar = document.getElementById('calendrier') != null ? true : false;\r\n\t},\r\n\tupdateSettingsResultats(url) {\r\n\t\t// on met à jour le nombre de résultats\r\n\t\tif (document.getElementById('nbreCircuitsTotal') != null) {\r\n\t\t\tsettingsListeResultats.resultats.nbreVoyages = parseInt(document.getElementById('nbreCircuitsTotal').value);\r\n\t\t} else {\r\n\t\t\tsettingsListeResultats.resultats.nbreVoyages = 0\r\n\t\t}\r\n\t\tsettingsListeResultats.resultats.nbreVoyagesAffiches = document.querySelectorAll('#nos-voyages .circuit').length;\r\n\r\n\t\tsettingsListeResultats.resultats.showPagination = settingsListeResultats.resultats.nbreVoyages > 30 ? true : false;\r\n\r\n\t\tdocument.documentElement.classList.remove('has--filtre-open');\r\n\t},\r\n\r\n\r\n\t///\r\n\t/// Mise à jour de filtres.json (PUT, SET, DELETE)\r\n\tpushFiltersCheckedInArray(a) {\r\n\t\t// On push tous les checked dans le tableau\r\n\t\t[].forEach.call(a, function (el) {\r\n\t\t\tif (el.checked) {\r\n\t\t\t\tlet name = el.name;\r\n\t\t\t\tlet id = el.id;\r\n\t\t\t\tfiltres.setFilterInArray(name, id);\r\n\t\t\t}\r\n\t\t});\r\n\t\t// Cas avec une date\r\n\t\tlet url = window.location.search.slice(2); // on récupère les paramètres\r\n\t\tlet params = new URLSearchParams(url);\r\n\t\tlet newDate = params.get('_date');\r\n\t\tif (newDate != null) {\r\n\t\t\t// On pousse les données dans le json\r\n\t\t\tlet newData = {\r\n\t\t\t\t'filtre': 'date',\r\n\t\t\t\t'value': newDate\r\n\t\t\t}\r\n\t\t\tfiltres.json.push(newData);\r\n\t\t}\r\n\t},\r\n\tgetFlexibilite() {\r\n\t\t// Variables\r\n\t\tlet valeur = document.getElementById('flexibiliteLR').value;\r\n\t\tlet arr = filtres.json;\r\n\t\tlet newflex = {\r\n\t\t\t'filtre': 'flexibilite',\r\n\t\t\t'value': valeur\r\n\t\t}\r\n\r\n\t\t// On supprime la flexibilité précédente\r\n\t\tfor (var i = arr.length - 1; i >= 0; i--) {\r\n\t\t\tif (arr[i].filtre === 'flexibilite') {\r\n\t\t\t\tarr.splice(i, 1);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tfiltres.json.push(newflex);\r\n\t},\r\n\tsetFilterInArray(name, id) {\r\n\t\tlet value = id.split('-');\r\n\t\tlet newData = {\r\n\t\t\t'filtre': name,\r\n\t\t\t'value': value[1]\r\n\t\t}\r\n\r\n\t\tif (name === 'typecircuit') {\r\n\t\t\tvar nbtypes = ['1', '2', '3', '7', '10'];\r\n\r\n\t\t\tfor (var i = 4; i >= 0; i--) {\r\n\t\t\t\tfiltres.deleteFilterInArray('typecircuit', 'typecircuit-' + nbtypes[i]);\r\n\t\t\t}\r\n\t\t}\r\n\t\tfiltres.json.push(newData);\r\n\t},\r\n\tdeleteFilterInArray(name, id) {\r\n\t\tlet arr = filtres.json;\r\n\t\tlet newJson = [];\r\n\t\tlet value = id.split('-');\r\n\t\tlet deletedData = {\r\n\t\t\t'filtre': name,\r\n\t\t\t'value': value[1]\r\n\t\t}\r\n\r\n\t\tfunction deleteObj(obj) {\r\n\t\t\tif (obj.filtre === name) {\r\n\t\t\t\tif (obj.value === value[1]) {\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn true;\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tnewJson = arr.filter(deleteObj);\r\n\t\tfiltres.json = newJson;\r\n\t}\r\n}\r\n\r\n\r\n\r\nclass filtring extends ListeResultat {\r\n\tinitialize() {\r\n\r\n\t\tlet self = this;\r\n\r\n\t\t///\t--------------\t1 \t--------------\r\n\t\t/// Au load, on récupère tous les filtres cochés\r\n\t\t/// et on les push dans l'array d'objects filtres.json\r\n\t\tfiltres.pushFiltersCheckedInArray(filtres.checkbox);\r\n\r\n\r\n\t\t///\t--------------\t2 \t--------------\r\n\t\t/// On écoute tous les événements 'change' de #blockFiltre\r\n\t\t/// et on appelle la fonction handlerFiltre\r\n\t\tdocument.getElementById('blockFiltre').addEventListener('change', function (e) {\r\n\t\t\tself.handlerFiltre(e);\r\n\t\t});\r\n\r\n\t\t///\t--------------\tX \t--------------\r\n\t\t/// Au cas où l'utilisateur fait un back navigateur\r\n\t\t/// on met à jour filtres.json et on upload les résultats\r\n\t\twindow.addEventListener('popstate', function (event) {\r\n\t\t\tif (event.explicitOriginalTarget.tagName !== 'IMG' && event.explicitOriginalTarget.tagName !== 'A') {\r\n\t\t\t\tself.goBackNavigation();\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\t/// La mise à jour de filtres.json en cas de back navigateur\r\n\tgoBackNavigation() {\r\n\t\tfiltres.json.pop();\r\n\t\tthis.reloadResultat();\r\n\t}\r\n\r\n\t///\t--------------\t3 \t--------------\r\n\t/// L'event change est provoqué par trois actions :\r\n\t///\ta. check/uncheck un filtre\r\n\t/// b. choix d'une flexibilité\r\n\t/// c. tri des résultats\r\n\t/// On gère le tri || on met à jour filtres.json puis on appelle\r\n\t/// Selon le cas, on lance les actions correspondantes\r\n\t/// ❌❌ Attention ❌❌\r\n\t/// dans le cas d'une date sélectionnée,\r\n\t/// on appelle le filtring est géré à partir de la méthode onSelect de ListeResultat.calendrier (dans app.js)\r\n\thandlerFiltre(e) {\r\n\t\tlet self = this;\r\n\r\n\t\tdocument.body.classList.add('loading');\r\n\r\n\t\t// On a sélectionné une flexibilité\r\n\t\tif (e.target.id == 'flexibiliteLR') {\r\n\t\t\tfiltres.getFlexibilite();\r\n\t\t}\r\n\t\t// On a trié les résultats\r\n\t\telse if (e.target.className.indexOf('js-tri') >= 0) {\r\n\t\t\tlet tri = {\r\n\t\t\t\ttypeTri: e.target.id\r\n\t\t\t};\r\n\t\t\twindow.sessionStorage.setItem('tri', tri.typeTri);\r\n\t\t\tdocument.querySelector('.tri .box--filtre').hidden = true;\r\n\r\n\t\t\t/// On recharge le block des résultats\r\n\t\t\tself._ajaxCall(settingsListeResultats.lr.urlTrierListeResultats, tri, '#nos-voyages', filtres.updateSettingsResultats);\r\n\r\n\t\t\t///\r\n\t\t\t/// On relance les functions liées aux résultats\r\n\t\t\t///\r\n\t\t\tconst getMoreResultats = new moreResultat();\r\n\r\n\t\t\t/// Les circuits\r\n\t\t\t//sliders.circuits();\r\n\t\t\t//sliders.encartContextualisation();\r\n\r\n\t\t\t/// Pagination\r\n\t\t\tgetMoreResultats.initialize();\r\n\r\n\t\t\t/// Les favoris\r\n\t\t\tselection.init(settingsApp.favoris);\r\n\r\n\t\t\t// On se positionne en haut de liste\r\n\t\t\tdocument.getElementById('nos-voyages').scrollIntoView({\r\n\t\t\t\tblock: \"start\",\r\n\t\t\t\tinline: \"nearest\"\r\n\t\t\t});\r\n\r\n\r\n\t\t\t/// Uniquement pour terdav.be\r\n\t\t\tsettingsApp.app === 'TDV' && settingsApp.belge && commons.convertButtonToLink('data-voyage');\r\n\r\n\t\t\tdocument.body.classList.remove('loading');\r\n\t\t}\r\n\t\t// On a coché ou décoché un filtre\r\n\t\telse {\r\n\t\t\tself.eventFilterChanged(e);\r\n\t\t}\r\n\r\n\t\t// Dans le cas où l'on a filtré (et non trié)\r\n\t\t// on reload les résultats\r\n\t\tif (e.target.id != 'trier' && e.target.className.indexOf('js-tri') < 0) {\r\n\t\t\ttry {\r\n\t\t\t\tself.reloadResultat();\r\n\t\t\t} catch (e) {\r\n\t\t\t\tconsole.error(e);\r\n\t\t\t\tlocation.reload()\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t///\r\n\t/// Appel des fonctions Set/delete de filtres.json\r\n\teventFilterChanged(event) {\r\n\t\tevent.target.checked ? filtres.setFilterInArray(event.target.name, event.target.id) : filtres.deleteFilterInArray(event.target.name, event.target.id);\r\n\t}\r\n\r\n\t///\t--------------\t4 \t--------------\r\n\t/// On poste filtres.json via la function ajaxcall() et on récupère la data\r\n\t/// On réinit les functions js utilisées\r\n\treloadResultat() {\r\n\r\n\r\n\t\tlet idBlockFiltres = 'blockFiltre',\r\n\t\t\tidNosVoyages = 'nos-voyages';\r\n\r\n\t\tthis._keepParametersTracking();\r\n\r\n\t\t// On reload les résultats\r\n\t\tthis._ajaxCall(settingsListeResultats.lr.urlFiltreListeResultats, JSON.stringify(filtres.json), `#${idNosVoyages}`, filtres.updateSettingsResultats);\r\n\r\n\t\t// On reload les filtres\r\n\t\tthis._ajaxCall(settingsListeResultats.lr.urlCalculFiltreListeResultats, JSON.stringify(filtres.json), `#${idBlockFiltres}`, filtres.updateSettingsFiltres);\r\n\r\n\t\t// On relance les functions liées aux filtres et aux résultats\r\n\t\tselection.init(settingsApp.favoris);\r\n\t\tconst calendar = new calendrier();\r\n\t\tconst utilities = new utilitiesListeResultat();\r\n\t\tlr.filtresResultats(true, this, calendar);\r\n\r\n\t\t// On se positionne en haut de liste\r\n\t\tdocument.getElementById(idNosVoyages).scrollIntoView({\r\n\t\t\tblock: \"start\",\r\n\t\t\tinline: \"nearest\"\r\n\t\t});\r\n\r\n\r\n\t\t/// Uniquement pour terdav.be\r\n\t\tsettingsApp.app === 'TDV' && settingsApp.belge && commons.convertButtonToLink('data-voyage');\r\n\r\n\t\t// On retire la class du loader\r\n\t\tdocument.body.classList.remove('loading');\r\n\t}\r\n\r\n\t///\r\n\t/// La requête ajax\r\n\t_ajaxCall(url, data, container, callback) {\r\n\r\n\t\tif (url != settingsListeResultats.lr.urlTrierListeResultats) {\r\n\t\t\tdata = {\r\n\t\t\t\tfiltresCoches: data\r\n\t\t\t};\r\n\t\t}\r\n\t\t$.ajax({\r\n\t\t\turl: url,\r\n\t\t\tasync: false,\r\n\t\t\tdata: data,\r\n\t\t\ttype: \"POST\",\r\n\t\t\tdataType: \"json\",\r\n\t\t\tsuccess: function (data) {\r\n\t\t\t\tif (container != '') {\r\n\t\t\t\t\t$(container).html(data);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\terror: function (jqXHR, textStatus, errorThrown) {\r\n\t\t\t\tdocument.location.reload(true);\r\n\t\t\t\tconsole.error(jqXHR, textStatus, errorThrown)\r\n\t\t\t},\r\n\t\t\tcomplete: function (url) {\r\n\t\t\t\tcallback(url);\r\n\t\t\t\tdocument.body.classList.remove('has-overlay');\r\n\t\t\t\tdocument.querySelector('.body-blackout').classList.remove('is-blacked-out');\r\n\t\t\t\twindow.sessionStorage.setItem('currentPage', window.location.href);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\t/// On doit conserver les paramètres de traking après avoir filtré\r\n\t_keepParametersTracking() {\r\n\r\n\t\tvar urlParams;\r\n\t\t(window.onpopstate = function () {\r\n\t\t\tvar match,\r\n\t\t\t\tpl = /\\+/g, // Regex for replacing addition symbol with a space\r\n\t\t\t\tsearch = /([^&=]+)=?([^&]*)/g,\r\n\t\t\t\tdecode = function (s) {\r\n\t\t\t\t\treturn decodeURIComponent(s.replace(pl, \" \"));\r\n\t\t\t\t},\r\n\t\t\t\tquery = window.location.search.substring(1);\r\n\r\n\t\t\turlParams = {};\r\n\r\n\t\t\twhile (match = search.exec(query))\r\n\t\t\t\turlParams[decode(match[1])] = decode(match[2]);\r\n\t\t})();\r\n\r\n\t\tlet filtreDansURL = '',\r\n\t\t\turlMAJ = window.location.protocol + \"//\" + window.location.host + window.location.pathname,\r\n\t\t\tparametresTracking = '';\r\n\r\n\t\t//On récupère les paramètres de tracking qui devront toujours être présent dans l'URL\r\n\r\n\t\tif (\"codori\" in urlParams)\r\n\t\t\tparametresTracking += \"&codori=\" + urlParams[\"codori\"];\r\n\r\n\t\tif (\"xtor\" in urlParams)\r\n\t\t\tparametresTracking += \"&xtor=\" + urlParams[\"xtor\"];\r\n\r\n\t\tif (\"kard\" in urlParams)\r\n\t\t\tparametresTracking += \"&kard=\" + urlParams[\"kard\"];\r\n\r\n\t\tif (\"cible\" in urlParams)\r\n\t\t\tparametresTracking += \"&cible=\" + urlParams[\"gclid\"];\r\n\r\n\t\tif (\"cible\" in urlParams)\r\n\t\t\tparametresTracking += \"&cible=\" + urlParams[\"cible\"];\r\n\r\n\t\tif (\"flush\" in urlParams)\r\n\t\t\tparametresTracking += \"&flush=\" + urlParams[\"flush\"];\r\n\r\n\t\tif (\"utm_medium\" in urlParams)\r\n\t\t\tparametresTracking += \"&utm_medium=\" + urlParams[\"utm_medium\"];\r\n\r\n\t\tif (\"utm_source\" in urlParams)\r\n\t\t\tparametresTracking += \"&utm_source=\" + urlParams[\"utm_source\"];\r\n\r\n\t\tif (\"utm_campaign\" in urlParams)\r\n\t\t\tparametresTracking += \"&utm_campaign=\" + urlParams[\"utm_campaign\"];\r\n\r\n\t\tif (parametresTracking.length > 0)\r\n\t\t\tparametresTracking = parametresTracking.substring(1);\r\n\r\n\t\tfor (var i = 0; i <= filtres.json.length - 1; i++) {\r\n\t\t\tfiltreDansURL += \"&_\" + filtres.json[i].filtre + \"=\" + filtres.json[i].value;\r\n\t\t}\r\n\r\n\t\tif (filtreDansURL.length > 0) {\r\n\t\t\t//URL SEO\r\n\t\t\tif (window.location.pathname != \"/recherche/listeresultats\")\r\n\t\t\t\turlMAJ = urlMAJ + \"?\" + parametresTracking + filtreDansURL;\r\n\t\t\t//URL Technique\r\n\t\t\telse {\r\n\t\t\t\tvar urlSansFiltre = window.location.search.substring(window.location.search.indexOf(\"?\"));\r\n\r\n\t\t\t\t//On est dans le cas d'une URL technique avec filtre\r\n\t\t\t\tif (urlSansFiltre.indexOf(\"&_\") > -1)\r\n\t\t\t\t\turlSansFiltre = urlSansFiltre.substring(0, urlSansFiltre.indexOf(\"&_\"));\r\n\r\n\t\t\t\turlMAJ = urlMAJ + urlSansFiltre + filtreDansURL;\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\t//Si je déselectionne tous les filtres mais que je suis sur une URL technique, alors garder les critères moteur\r\n\t\t\tif (window.location.pathname == \"/recherche/listeresultats\") {\r\n\t\t\t\tvar urlSansFiltre = window.location.search.substring(window.location.search.indexOf(\"?\"));\r\n\r\n\t\t\t\tif (urlSansFiltre.indexOf(\"&_\") > -1)\r\n\t\t\t\t\turlSansFiltre = urlSansFiltre.substring(0, urlSansFiltre.indexOf(\"&_\"));\r\n\r\n\t\t\t\turlMAJ = urlMAJ + urlSansFiltre;\r\n\t\t\t}\r\n\t\t}\r\n\t\twindow.history.pushState({\r\n\t\t\tpath: urlMAJ\r\n\t\t}, '', urlMAJ);\r\n\t}\r\n}","class menuMobile extends ListeResultat {\r\n\tinitialize(windowWidth, init) {\r\n\r\n\t\tconst MENU_NAVIGATION = document.getElementById('menuNavigation');\r\n\t\tconst utilities = new utilitiesListeResultat();\r\n\t\tlet self = this;\r\n\r\n\t\tif (windowWidth < 1024) {\r\n\t\t\tthis.template(MENU_NAVIGATION);\r\n\t\t\tthis.toggleSubMenu(MENU_NAVIGATION);\r\n\t\t\tthis.stickyNavbar(utilities, windowWidth);\r\n\t\t}\r\n\r\n\t\tthis.stickyFiltres(utilities, windowWidth);\r\n\t\t// On met la variable à true pour eviter de relancer la function déjà initialisée\r\n\t\tinit = true;\r\n\t}\r\n\tstickyNavbar(tools, windowWidth) {\r\n\r\n\t\tif (settingsListeResultats.resultats.nbreVoyages > 1) {\r\n\t\t\tlet derniere_position_de_scroll_connue = 0,\r\n\t\t\t\tticking = false;\r\n\r\n\t\t\twindow.addEventListener('scroll', function (e) {\r\n\t\t\t\tderniere_position_de_scroll_connue = window.scrollY;\r\n\t\t\t\tif (!ticking) {\r\n\t\t\t\t\twindow.requestAnimationFrame(function () {\r\n\t\t\t\t\t\tstickMenu(derniere_position_de_scroll_connue);\r\n\t\t\t\t\t\tticking = false;\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\tticking = true;\r\n\t\t\t});\r\n\r\n\t\t\tfunction stickMenu(y) {\r\n\t\t\t\tif (y >= tools.offset(document.body).height) {\r\n\t\t\t\t\tdocument.querySelector('.menu-navigation').classList.add('is-sticked');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tdocument.querySelector('.menu-navigation').classList.remove('is-sticked');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tstickyFiltres(tools, windowWidth) {\r\n\t\tlet positionTopFiltre = 0,\r\n\t\t\tdelay = settingsListeResultats.delay + 100,\r\n\t\t\tidBlockFiltres = 'blockFiltre';\r\n\r\n\t\t// Comme la présentation est masquée avec un décalage de ${settings.delay}, on calcule la position top des différents blocs avec un décalage de 100ms\r\n\t\tsetTimeout(function () {\r\n\t\t\tif (document.getElementById(idBlockFiltres).length !== 0) {\r\n\t\t\t\tpositionTopFiltre = tools.offset(document.getElementById(idBlockFiltres)).top;\r\n\t\t\t}\r\n\t\t}, delay);\r\n\r\n\t\tif (document.querySelector('.section--presentation .lr__more') !== null) {\r\n\t\t\tdocument.querySelector('.section--presentation .lr__more').addEventListener('click', function () {\r\n\t\t\t\tpositionTopFiltre = tools.offset(document.getElementById(idBlockFiltres)).top;\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\tif (settingsListeResultats.resultats.nbreVoyages > 1) {\r\n\t\t\twindow.onscroll = function () {\r\n\t\t\t\t///\r\n\t\t\t\t/// Barre des filtres\r\n\t\t\t\t///\r\n\t\t\t\tif (window.scrollY >= positionTopFiltre) {\r\n\t\t\t\t\tdocument.getElementById(idBlockFiltres).classList.add('is-sticked');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tdocument.getElementById(idBlockFiltres).classList.remove('is-sticked');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\ttoggleSubMenu(menu) {\r\n\r\n\t\tlet li = [...menu.querySelectorAll('.menu__child')];\r\n\r\n\t\tconst setActive = el => {\r\n\r\n\t\t\tlet isOpen = el.className.indexOf('is-active') >= 0 ? true : false;\r\n\t\t\t[...el.parentElement.children].forEach(sib => sib.classList.remove('is-active'));\r\n\r\n\t\t\t!isOpen && menu.removeAttribute('style');\r\n\t\t\t!isOpen && el.classList.add('is-active');\r\n\r\n\t\t\tif (el.id == 'menuLinkingRegions' || el.id == 'menuLinkingActivites' || el.id == 'isAriane') {\r\n\t\t\t\t/// Positionnement du sous-menu\r\n\t\t\t\tlet leftPos = Math.max(0, el.offsetLeft - menu.scrollLeft - 20 + 7);\r\n\t\t\t\tlet ul = el.querySelector('ul');\r\n\r\n\t\t\t\tif (ul != null) {\r\n\t\t\t\t\t// Si l'item suggestion existe, on cale le sous-menu à droite\r\n\t\t\t\t\tif (document.getElementById('suggestions') !== null && menu.clientWidth < 450) {\r\n\t\t\t\t\t\tul.style.right = 0;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tul.style.left = leftPos + 'px';\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (!isOpen)\r\n\t\t\t\t\t\tmenu.style.overflowX = 'initial';\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\tmenu.removeAttribute('style');\r\n\t\t\t\t}\r\n\t\t\t} else if (el.dataset.link != undefined) {\r\n\t\t\t\twindow.location.href = \"#\" + el.dataset.link;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tli.forEach(el => el.addEventListener('click', e => setActive(el)))\r\n\t}\r\n\r\n\ttemplate(menu) {\r\n\t\tlet self = this;\r\n\r\n\t\tconst fragment = document.getElementById('menuNavigationTemplate');\r\n\t\tconst instance = document.importNode(fragment.content, true);\r\n\t\tdocument.getElementById('menuNavigation').appendChild(instance);\r\n\r\n\t\tlet boxLinkingRegions = document.getElementById('boxLinkingDestinations');\r\n\t\tif (boxLinkingRegions != null) {\r\n\t\t\tlet contentHtml = '',\r\n\t\t\t\ttypeDestinations = 'Régions';\r\n\r\n\t\t\ttypeDestinations = boxLinkingRegions.getAttribute('data-destinations') === 'is-regions' ? typeDestinations : 'Pays';\r\n\t\t\tcontentHtml += '