PageSourceSearch

https://www.ftvs-vzdelavani.cz/user/documents/upload/capybarajungle/ftvs-months.min.js

js ftvs-vzdelavani.cz collected 2026-10-06 15:03:33 UTC 5,420 bytes, 45 lines download raw bytes

1(()=>{var _=(o,t)=>Array.from({length:t},(i,d)=>{let r=new Date(o.getFullYear(),o.getMonth()+d,1);return{year:r.getFullYear(),month:r.getMonth()+1}});var p=3,u=2,S=[838,841,844,847,850,853,856,859,862,865,868,871],z={cs:{title:"Kurzy podle m\u011Bs\xEDce",subtitle:"Vyberte si m\u011Bs\xEDc a zobrazte kurzy, kter\xE9 se v n\u011Bm konaj\xED.",show:"Zobrazit kurzy",prev:"P\u0159edchoz\xED 3 m\u011Bs\xEDce",next:"Dal\u0161\xED 3 m\u011Bs\xEDce",category:"/pro-verejnos/"},en:{title:"Courses by month",subtitle:"Pick a month to see the courses taking place in it.",show:"Show courses",prev:"Previous 3 months",next:"Next 3 months",category:"/en/for-the-public/"}},M=`
2.ftvs-months{margin:40px 0 20px}
3.ftvs-months__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px}
4.ftvs-months__head h2{margin:0;padding:0}
5.ftvs-months__head p{margin:4px 0 0;color:#777}
6.ftvs-months__nav{display:flex;gap:12px}
7.ftvs-months__nav button{display:inline-flex;align-items:center;gap:10px;min-height:42px;padding:0 20px;border:2px solid var(--color-primary,#003657);background:#fff;color:var(--color-primary,#003657);font:inherit;cursor:pointer}
8.ftvs-months__nav span{font-size:24px;line-height:1}
9.ftvs-months__nav button:disabled{border-color:#ddd;color:#bbb;cursor:default}
10.ftvs-months__nav button:not(:disabled):hover{background:var(--color-primary,#003657);color:#fff}
11.ftvs-months__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
12.ftvs-months__card{--c:var(--color-primary,#003657);position:relative;border:1px solid #ddd;border-radius:6px;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.05)}
13.ftvs-months__card.is-current{--c:var(--color-secondary,#D22E41)}
14.ftvs-months__card::before,.ftvs-months__card::after{content:"";position:absolute;top:-10px;left:14%;width:10px;height:22px;border-radius:5px;background:#ccc;border:2px solid #fff}
15.ftvs-months__card::after{left:auto;right:14%}
16.ftvs-months__year{padding:8px;border-radius:6px 6px 0 0;background:var(--c);color:#fff;font-weight:700;text-align:center}
17.ftvs-months__body{position:relative;padding:12px 24px 12px;overflow:hidden}
18.ftvs-months__name{position:relative;margin:8px 0 12px;font-size:34px;line-height:1.1;font-weight:700;color:var(--color-primary,#003657)}
19.ftvs-months__num{position:absolute;top:0;right:20px;font-size:92px;line-height:1;font-weight:700;color:#e3e3e3}
20.ftvs-months__link{display:inline-flex;gap:12px;padding:6px 22px;border:2px solid var(--c);color:var(--c);font-weight:700;text-decoration:none}
21.is-current .ftvs-months__link{background:var(--c);color:#fff}
22.ftvs-months__card:hover .ftvs-months__link{background:var(--c);color:#fff}
23.ftvs-months__link::before{content:"";position:absolute;inset:0}
24.ftvs-months__range{margin:16px 0 0;text-align:center;color:#999}
25@media (max-width:767px){.ftvs-months__grid{grid-template-columns:1fr}.ftvs-months__nav{width:100%}.ftvs-months__nav button:last-child{flex:1;justify-content:center}}
26`,E=o=>o.charAt(0).toUpperCase()+o.slice(1),g=()=>{let o=document.documentElement.lang,t=z[o],i=document.querySelector(".in-index .homepage-tabs-wrapper");if(!t||!i||document.querySelector(".ftvs-months"))return;let d=new Intl.DateTimeFormat(o,{month:"long"}),r=({year:e,month:n})=>d.format(new Date(e,n-1,1)),h=e=>E(r(e)),b=_(new Date,p*u);document.head.insertAdjacentHTML("beforeend",`<style>${M}</style>`),i.insertAdjacentHTML("afterend",`
27        <section class="ftvs-months" aria-labelledby="ftvs-months-title">
28            <div class="ftvs-months__head">
29                <div><h2 id="ftvs-months-title" class="homepage-group-title h4">${t.title}</h2><p>${t.subtitle}</p></div>
30                <div class="ftvs-months__nav">
31                    <button type="button" data-step="-1" aria-label="${t.prev}"><span aria-hidden="true">\u2039</span></button>
32                    <button type="button" data-step="1">${t.next} <span aria-hidden="true">\u203A</span></button>
33                </div>
34            </div>
35            <div class="ftvs-months__grid" aria-live="polite"></div>
36            <p class="ftvs-months__range"></p>
37        </section>`);let c=i.nextElementSibling,[x,y]=c.querySelectorAll("button"),s=0,m=()=>{let e=b.slice(s*p,(s+1)*p);c.querySelector(".ftvs-months__grid").innerHTML=e.map((a,w)=>{let $=s===0&&w===0,k=String(a.month).padStart(2,"0"),v=h(a);return`
38                <article class="ftvs-months__card${$?" is-current":""}">
39                    <div class="ftvs-months__year">${a.year}</div>
40                    <div class="ftvs-months__body">
41                        <span class="ftvs-months__num" aria-hidden="true">${k}</span>
42                        <h3 class="ftvs-months__name">${v}</h3>
43                        <a class="ftvs-months__link" href="${t.category}?pv136=${S[a.month-1]}" aria-label="${t.show}: ${v} ${a.year}">${t.show} <span aria-hidden="true">\u2192</span></a>
44                    </div>
45                </article>`}).join("");let n=e[0],l=e[e.length-1],f=r(l);c.querySelector(".ftvs-months__range").textContent=n.year===l.year?`${h(n)} \u2013 ${f} ${l.year}`:`${h(n)} ${n.year} \u2013 ${f} ${l.year}`,x.disabled=s===0,y.disabled=s===u-1};c.querySelector(".ftvs-months__nav").addEventListener("click",e=>{let n=e.target.closest("button");n&&!n.disabled&&(s+=Number(n.dataset.step),m())}),m()};document.readyState==="loading"?document.addEventListener("DOMContentLoaded",g):g();})();

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.