{"id":156,"date":"2025-08-14T22:39:18","date_gmt":"2025-08-14T20:39:18","guid":{"rendered":"https:\/\/lejournaldelessien.com\/?page_id=156"},"modified":"2025-11-27T13:19:52","modified_gmt":"2025-11-27T12:19:52","slug":"calendrier-de-l-avent-2025","status":"publish","type":"page","link":"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/","title":{"rendered":"Advent calendar 2025"},"content":{"rendered":"<!-- ========= CALENDRIER DE L\u2019AVENT (ouverture \u00e0 18h, sans compte \u00e0 rebours) ========= -->\n\n <!-- En-t\u00eate festif -->\n  <div style=\"max-width: 700px; margin: 0 auto 18px;background: linear-gradient(135deg,#F7B995,#EFA37B);padding: 14px; border-radius: 14px;box-shadow: 0 4px 12px rgba(0,0,0,.12);text-align:center;\">\n    <h1 style=\"margin:0; font-size: 26px; color: #fff; text-shadow: 1px 1px 3px rgba(0,0,0,.25);\">\n      Ouverture des cases, tous les jours \u00e0 18h\n    <\/h1>\n  <\/div>\n\n<!-- 1) Cacher par d\u00e9faut (les extraits de recherche n\u2019ex\u00e9cutent pas ce script) -->\n<div id=\"cal-avent\" style=\"display:none;\">\n  <script>\n    (function(){\n      var r = document.getElementById('cal-avent');\n      if(r) r.style.display='block';\n    })();\n  <\/script>\n\n  <!-- ===== Son de clochettes au clic sur un jour ===== -->\n  <audio id=\"bell-sound\" preload=\"auto\">\n    <source src=\"https:\/\/lejournaldelessien.com\/wp-content\/uploads\/2025\/08\/jingle-bells-107671.mp3\" type=\"audio\/mpeg\">\n  <\/audio>\n\n  <!-- ===== Calendrier (image + pastilles) ===== -->\n  <div style=\"max-width: 680px; margin: auto; text-align: center;\">\n    <div class=\"calendar-wrap\" style=\"position: relative; display: inline-block;\">\n      <img decoding=\"async\" src=\"https:\/\/i.ibb.co\/DHX8cT3j\/Calendrier-01.png\"\n           alt=\"Calendrier de l'avent\"\n           class=\"calendar-image\">\n\n      <!-- Neige limit\u00e9e \u00e0 la zone du calendrier -->\n      <div class=\"snow-overlay\" aria-hidden=\"true\"><\/div>\n\n      <!-- 1 \u00e0 25 (tous visibles) -->\n      <a style=\"position: absolute; top: 20%; left: 20%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"1\"  href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-1\/\"><span>1<\/span><\/a>\n      <a style=\"position: absolute; top: 25%; left: 70%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"2\"  href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-2\/\"><span>2<\/span><\/a>\n      <a style=\"position: absolute; top: 60%; left: 15%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"3\"  href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-3\/\"><span>3<\/span><\/a>\n      <a style=\"position: absolute; top: 50%; left: 40%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"4\"  href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-4\/\"><span>4<\/span><\/a>\n      <a style=\"position: absolute; top: 75%; left: 80%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"5\"  href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-5\/\"><span>5<\/span><\/a>\n      <a style=\"position: absolute; top: 20%; left: 40%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"6\"  href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-6\/\"><span>6<\/span><\/a>\n      <a style=\"position: absolute; top: 65%; left: 55%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"7\"  href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-7\/\"><span>7<\/span><\/a>\n      <a style=\"position: absolute; top: 35%; left: 10%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"8\"  href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-8\/\"><span>8<\/span><\/a>\n      <a style=\"position: absolute; top: 80%; left: 30%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"9\"  href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-9\/\"><span>9<\/span><\/a>\n      <a style=\"position: absolute; top: 45%; left: 85%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"10\" href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-10\/\"><span>10<\/span><\/a>\n      <a style=\"position: absolute; top: 30%; left: 55%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"11\" href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-11\/\"><span>11<\/span><\/a>\n      <a style=\"position: absolute; top: 70%; left: 65%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"12\" href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-12\/\"><span>12<\/span><\/a>\n      <a style=\"position: absolute; top: 15%; left: 85%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"13\" href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-13\/\"><span>13<\/span><\/a>\n      <a style=\"position: absolute; top: 45%; left: 25%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"14\" href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-14\/\"><span>14<\/span><\/a>\n      <a style=\"position: absolute; top: 40%; left: 70%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"15\" href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-15\/\"><span>15<\/span><\/a>\n      <a style=\"position: absolute; top: 90%; left: 60%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"16\" href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-16\/\"><span>16<\/span><\/a>\n      <a style=\"position: absolute; top: 5%;  left: 55%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"17\" href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-17\/\"><span>17<\/span><\/a>\n      <a style=\"position: absolute; top: 88%; left: 10%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"18\" href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-18\/\"><span>18<\/span><\/a>\n      <a style=\"position: absolute; top: 65%; left: 90%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"19\" href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-19\/\"><span>19<\/span><\/a>\n      <a style=\"position: absolute; top: 50%; left: 5%;\"  class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"20\" href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-20\/\"><span>20<\/span><\/a>\n      <a style=\"position: absolute; top: 12%; left: 10%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"21\" href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-21\/\"><span>21<\/span><\/a>\n      <a style=\"position: absolute; top: 38%; left: 50%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"22\" href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-22\/\"><span>22<\/span><\/a>\n      <a style=\"position: absolute; top: 90%; left: 40%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"23\" href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-23\/\"><span>23<\/span><\/a>\n      <a style=\"position: absolute; top: 7%;  left: 22%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"24\" href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-24\/\"><span>24<\/span><\/a>\n      <!-- Jour 25 -->\n      <a style=\"position: absolute; top: 52%; left: 60%;\" class=\"day\" data-year=\"2025\" data-month=\"11\" data-day=\"25\" href=\"https:\/\/lejournaldelessien.com\/en\/calendrier-de-l-avent-2025\/jour-25\/\"><span>25<\/span><\/a>\n    <\/div>\n  <\/div>\n\n  <style>\n    \/* Pastilles *\/\n    #cal-avent .day{\n      position: absolute;\n      z-index: 2; \/* au-dessus de la neige *\/\n      background-color: rgba(255, 182, 129, 0.85);\n      color: #fff;\n      font-weight: bold;\n      border-radius: 50%;\n      width: 36px; height: 36px;\n      display: flex; align-items: center; justify-content: center;\n      cursor: pointer; font-size: 15px; text-decoration: none;\n      user-select: none; transition: background-color .25s ease;\n    }\n    #cal-avent .day:hover { background-color: rgba(239,163,123,1); }\n\n    \/* \u00e9tat verrouill\u00e9 *\/\n    #cal-avent .day.locked{\n      background-color: #cfcfcf !important;\n      cursor: not-allowed !important;\n      pointer-events: none !important;\n    }\n\n    \/* Neige (dans la zone du calendrier) *\/\n    #cal-avent .snow-overlay{\n      position:absolute; inset:0;\n      pointer-events:none; z-index:1; \/* sous les pastilles *\/\n      overflow:hidden;\n    }\n    #cal-avent .snowflake{\n      position:absolute;\n      top:-10px;\n      background:#fff; border-radius:50%;\n      opacity:.9;\n      filter: drop-shadow(0 1px 1px rgba(0,0,0,.15));\n      animation-name: snow-fall, snow-sway;\n      animation-timing-function: linear, ease-in-out;\n      animation-iteration-count: infinite, infinite;\n    }\n    @keyframes snow-fall{ to{ transform: translateY(var(--fall-to, 110%)); } }\n    @keyframes snow-sway{ 0%{margin-left:0;} 50%{margin-left:20px;} 100%{margin-left:0;} }\n\n    @media (prefers-reduced-motion: reduce){\n      #cal-avent .snowflake{ animation:none; opacity:0; }\n    }\n\n    \/* petit responsive pour mobiles \u00e9troits *\/\n    @media (max-width: 480px){\n      #cal-avent .day { width: 30px; height: 30px; font-size: 13px; }\n    }\n\/* Agrandissement propre de l'image *\/\n#cal-avent .calendar-image{\n  width: 820px !important;\n  max-width: 100%;\n  height: auto;\n  display: block;\n  margin: 0 auto;\n}\n\/* Forcer l'image du calendrier \u00e0 une largeur plus grande *\/\n#cal-avent .calendar-wrap img.calendar-image{\n  width: 780px !important;\n  max-width: 100% !important;\n  height: auto !important;\n  display: block !important;\n  margin: 0 auto !important;\n}\n\n\n\n  <\/style>\n\n  <script>\n  \/* D\u00e9bloquer chaque jour du 1 au 25\/12\/2025 \u00e0 18:00 (heure locale) *\/\n  (function () {\n    const now = new Date();\n    document.querySelectorAll('#cal-avent .day').forEach(el => {\n      const y = parseInt(el.getAttribute('data-year'), 10);\n      const m = parseInt(el.getAttribute('data-month'), 10); \/\/ 0=janv, 11=d\u00e9c\n      const d = parseInt(el.getAttribute('data-day'), 10);\n\n      \/\/ Ouverture \u00e0 18h00\n      const unlock = new Date(y, m, d, 18, 0, 0, 0);\n\n      if (now < unlock) {\n        el.classList.add('locked');\n        const dd = String(d).padStart(2,'0');\n        const mm = String(m+1).padStart(2,'0');\n        const label = `Disponible le ${dd}\/${mm}\/${y} \u00e0 18h00`;\n        el.setAttribute('title', label);\n        el.setAttribute('aria-label', label);\n      } else {\n        el.setAttribute('aria-label', `Jour ${d} \u2014 disponible`);\n      }\n    });\n  })();\n\n  \/* Son clochette au clic sur un jour non verrouill\u00e9 (lecture compl\u00e8te avant navigation) *\/\n  (function(){\n    const audio = document.getElementById('bell-sound');\n    if(!audio) return;\n\n    if (isNaN(audio.duration)) {\n      audio.addEventListener('loadedmetadata', ()=>{}, {once:true});\n    }\n\n    function isPlainLeftClick(e){\n      return e.button === 0 && !e.metaKey && !e.ctrlKey && !e.shiftKey && !e.altKey;\n    }\n\n    document.querySelectorAll('#cal-avent .day').forEach(el=>{\n      let navigating = false;\n      el.addEventListener('click', (e) => {\n        const href = el.getAttribute('href') || '';\n        const locked = el.classList.contains('locked');\n        if (locked || !href || href === '#' || !isPlainLeftClick(e)) return;\n\n        e.preventDefault();\n        if (navigating) return;\n        navigating = true;\n\n        const go = () => { window.location.href = href; };\n\n        try {\n          audio.currentTime = 0;\n          const dur = isFinite(audio.duration) && audio.duration > 0 ? audio.duration : 0.9;\n          const safety = setTimeout(go, Math.round(dur * 1000) + 60);\n          audio.addEventListener('ended', () => { clearTimeout(safety); go(); }, { once:true });\n\n          const p = audio.play();\n          if (p && typeof p.catch === 'function') {\n            p.catch(() => { clearTimeout(safety); go(); });\n          }\n        } catch(err){\n          go();\n        }\n      });\n    });\n  })();\n\n  \/* Neige limit\u00e9e \u00e0 la zone du calendrier *\/\n  (function(){\n    const overlay = document.querySelector('#cal-avent .snow-overlay');\n    if(!overlay) return;\n\n    const wrap = overlay.closest('.calendar-wrap');\n    const isMobile = Math.max(screen.width, window.innerWidth) < 768;\n    const FLAKES = isMobile ? 35 : 70;\n\n    \/\/ Hauteur cible pour l\u2019animation\n    const H = wrap.clientHeight || 300; \/\/ fallback\n    overlay.style.setProperty('--fall-to', (H + 40) + 'px');\n\n    for(let i=0;i<FLAKES;i++){\n      const f = document.createElement('i');\n      f.className = 'snowflake';\n\n      const size = 2 + Math.random()*4;\n      f.style.width  = size + 'px';\n      f.style.height = size + 'px';\n\n      const leftPx = Math.random() * (wrap.clientWidth || 500);\n      f.style.left = leftPx + 'px';\n\n      const fallDur  = 8 + Math.random()*10;\n      const fallDelay= -Math.random()*fallDur;\n      const swayDur  = 3 + Math.random()*4;\n      const opacity  = 0.5 + Math.random()*0.5;\n\n      f.style.opacity = opacity.toFixed(2);\n      f.style.animationDuration = `${fallDur}s, ${swayDur}s`;\n      f.style.animationDelay = `${fallDelay}s, ${Math.random()*2}s`;\n      f.style.willChange = 'transform';\n\n      overlay.appendChild(f);\n    }\n  })();\n  <\/script>\n<\/div>\n<!-- ========= FIN CALENDRIER ========= -->\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>","protected":false},"excerpt":{"rendered":"<p>Ouverture des cases, tous les jours \u00e0 18h 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"templates\/fullwidth.php","meta":{"footnotes":""},"class_list":["post-156","page","type-page","status-publish","hentry"],"jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/lejournaldelessien.com\/en\/wp-json\/wp\/v2\/pages\/156","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lejournaldelessien.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/lejournaldelessien.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/lejournaldelessien.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/lejournaldelessien.com\/en\/wp-json\/wp\/v2\/comments?post=156"}],"version-history":[{"count":90,"href":"https:\/\/lejournaldelessien.com\/en\/wp-json\/wp\/v2\/pages\/156\/revisions"}],"predecessor-version":[{"id":892,"href":"https:\/\/lejournaldelessien.com\/en\/wp-json\/wp\/v2\/pages\/156\/revisions\/892"}],"wp:attachment":[{"href":"https:\/\/lejournaldelessien.com\/en\/wp-json\/wp\/v2\/media?parent=156"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}