(()=>{document.addEventListener("DOMContentLoaded",function(){function $(e,t,a,d,m){let r=e.querySelector(`.${t}`);if(!r)return;r.innerHTML="";let i=document.createElement("label");i.className="filter-radio-button-label",i.innerHTML=` Reset `,r.appendChild(i),Array.from(d).forEach((_,h)=>{let y=document.createElement("label");y.className="filter-radio-button-label",y.innerHTML=` ${_} `,r.appendChild(y)});let u=r.querySelector('input[value="all"]');u&&u.parentElement&&u.parentElement.classList.add("fs-cmsfilter_active")}let H=[{label:"Reset",value:"all"},{label:"Thursday, July 16",value:"2026-07-16"},{label:"Friday, July 17",value:"2026-07-17"},{label:"Saturday, July 18",value:"2026-07-18"},{label:"Sunday, July 19",value:"2026-07-19"}],A=document.getElementById("schedule-tabs"),w=document.getElementById("category-wrapper"),E=document.getElementById("global-category-wrapper"),o=document.getElementById("content-all");if(!A||!w||!E||!o){console.warn("Schedule script: one or more required containers are missing.");return}function k(e,t){let a=e?.querySelector(".filter-heading, .filter-title, .w-form-label, h1, h2, h3, h4, h5, h6");a&&(a.textContent=t)}k(w,"Filter by Team Affinity"),k(E,"Filter by Appearance");let p=document.getElementById("pagination-controls");p||(p=document.createElement("div"),p.id="pagination-controls",p.className="pagination-controls",o.appendChild(p));let s=1,C=10,c={date:"all",affinity:"all",appearance:"all"};function g(e){if(e==null||e==="")return!1;let t=String(e).trim().toLowerCase();if(t===""||t==="null"||t==="undefined"||t==="tba"||t==="tbd")return!1;let a=new Date(e);return!isNaN(a.getTime())}function T(e){if(!g(e))return!1;let t=String(e).trim();return!(t.includes("00:00:00")||t.includes("T00:00:00"))}function q(e){return g(e.start_time)?e.start_time.split(" ")[0]:""}function N(e){return g(e)?new Date(e).toLocaleDateString("en-US",{weekday:"long",month:"long",day:"numeric"}):"TBA"}function M(e){return T(e)?new Date(e).toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0}):""}function P(e,t){let a=g(e.start_time),d=T(e.start_time),m=T(e.end_time);if(!a)return"TBA";let r=N(e.start_time),i=M(e.start_time),u=M(e.end_time);return d?t||!m?`${r} ${i}`:`${r} ${i} - ${u}`:`${r} TBA`}function D(e=3){if(o){o.innerHTML="";for(let t=0;t
`,o.appendChild(a)}}}function F(e){o.innerHTML="",e.forEach(t=>{let a=t.venue_location?.name?.trim()||"",d=t.schedule_categories||[],m=d.map(u=>u.name?.trim()).join(","),r=document.createElement("div");r.className="row_to_copy",r.setAttribute("data-venue",a.replace(/[’‘']/g,"").trim().toLowerCase()),r.setAttribute("data-date",q(t)),r.setAttribute("data-schedule-category",m.replace(/[’‘']/g,"").toLowerCase());let i=d.some(u=>u.name?.trim().toLowerCase()==="autographs");r.innerHTML=`
${t.title||
${P(t,i)}

${t.title||"Untitled Event"}

${a}
${t.description||""}
`,o.appendChild(r)})}function R(e){let t=Math.ceil(e/C);if(p.innerHTML="",t<=1)return;let a=5,d=Math.max(1,s-Math.floor(a/2));d+a-1>t&&(d=Math.max(1,t-a+1));let m=Math.min(t,d+a-1);if(s>1){let r=document.createElement("button");r.className="pagination-arrow",r.textContent="<",r.addEventListener("click",()=>{s=Math.max(1,s-1);let i=o.getBoundingClientRect().top+window.scrollY-200;window.scrollTo({top:i,behavior:"smooth"}),f()}),p.appendChild(r)}for(let r=d;r<=m;r++){let i=document.createElement("button");i.textContent=r,i.className=`pagination-btn ${r===s?"active":""}`,i.addEventListener("click",()=>{let u=o.getBoundingClientRect().top+window.scrollY-200;window.scrollTo({top:u,behavior:"smooth"}),s=r,f()}),p.appendChild(i)}if(m",r.addEventListener("click",()=>{s=Math.min(t,s+1);let i=o.getBoundingClientRect().top+window.scrollY-200;window.scrollTo({top:i,behavior:"smooth"}),f()}),p.appendChild(r)}}function z(){document.querySelectorAll(".date-radio").forEach(e=>{e.onchange=()=>{c.date=e.value,s=1,document.querySelectorAll(".date-radio").forEach(t=>t.parentElement?.classList.remove("fs-cmsfilter_active")),e.parentElement?.classList.add("fs-cmsfilter_active"),f()}}),document.querySelectorAll(".category-radio").forEach(e=>{e.onchange=()=>{c.affinity=e.value,s=1,document.querySelectorAll(".category-radio").forEach(t=>t.parentElement?.classList.remove("fs-cmsfilter_active")),e.parentElement?.classList.add("fs-cmsfilter_active"),f()}}),document.querySelectorAll(".schedule-category-radio").forEach(e=>{e.onchange=()=>{c.appearance=e.value,s=1,document.querySelectorAll(".schedule-category-radio").forEach(t=>t.parentElement?.classList.remove("fs-cmsfilter_active")),e.parentElement?.classList.add("fs-cmsfilter_active"),f()}})}function f(){D(),o.classList.add("skeleton-active"),fetch("https://conventions.leapevent.tech/api/schedules?key=29aedf86-48bf-45a0-87c8-fba0e35485f8").then(e=>e.json()).then(e=>{let t=e.schedules||[];c.date!=="all"&&(t=t.filter(n=>n.start_time&&n.start_time.startsWith(c.date))),c.affinity!=="all"&&(t=t.filter(n=>(n.schedule_categories||[]).some(l=>l.name?.trim().toLowerCase().replace(/[’‘]/g,"'")===c.affinity.trim().toLowerCase().replace(/[’‘]/g,"'")))),c.appearance!=="all"&&(t=t.filter(n=>(n.schedule_categories||[]).some(l=>l.name?.trim().toLowerCase().replace(/[’‘]/g,"'")===c.appearance.trim().toLowerCase().replace(/[’‘]/g,"'"))));let a=["Panels","Podcasts","Photo Ops","Autographs"];t.sort((n,l)=>{let L=g(n.start_time)?new Date(n.start_time):null,b=g(l.start_time)?new Date(l.start_time):null;if(L&&b&&L.getTime()!==b.getTime())return L-b;if(L&&!b)return-1;if(!L&&b)return 1;function S(O){let J=(O.schedule_categories||[]).map(v=>v.name?.trim());for(let v=0;v{(n.schedule_categories||[]).forEach(l=>{l.name&&m.add(l.name.trim())})});let r=["College Football","Men's Soccer","MLB","NBA","NFL","NHL","WNBA","WWE"],i=new Map;m.forEach(n=>{let l=n.replace(/[’‘']/g,"").trim().toLowerCase();i.set(l,n)});let u=r.map(n=>n.replace(/[’‘']/g,"").trim().toLowerCase()).filter(n=>i.has(n)).map(n=>i.get(n));w.querySelector(".category-checkbox-filter input")||$(w,"category-checkbox-filter","category-radio",u,"category-radio");let _=["Panels","Podcasts","Live Programming"],h=new Map;m.forEach(n=>{let l=n.replace(/[’‘']/g,"").trim().toLowerCase();h.set(l,n)});let y=_.map(n=>n.replace(/[’‘']/g,"").trim().toLowerCase()).filter(n=>h.has(n)).map(n=>h.get(n));if(E.querySelector(".global-category-filter input")||$(E,"global-category-filter","schedule-category-radio",y,"schedule-category-radio"),c.affinity){let n=c.affinity.replace(/[’‘']/g,"").trim().toLowerCase();document.querySelector(`input[name='category-radio'][value='${n}']`)?.parentElement?.classList.add("fs-cmsfilter_active")}if(c.appearance){let n=c.appearance.replace(/[’‘']/g,"").trim().toLowerCase();document.querySelector(`input[name='schedule-category-radio'][value='${n}']`)?.parentElement?.classList.add("fs-cmsfilter_active")}let I=t.slice((s-1)*C,s*C);t.length===0?(o.innerHTML='
No results found. Try adjusting your filter settings.
',p.innerHTML="",o.classList.remove("skeleton-active"),o.style.minHeight="",o.style.paddingBottom=""):(o.classList.remove("skeleton-active"),F(I),R(d)),z()}).catch(e=>{console.error("Schedule fetch error:",e),o.classList.remove("skeleton-active"),o.innerHTML='
Schedule is currently unavailable. Please try again later.
',p.innerHTML=""})}H.forEach((e,t)=>{let a=document.createElement("label");a.className="filter-radio-button-label",e.value==="all"&&a.classList.add("fs-cmsfilter_active"),a.innerHTML=` ${e.label} `,A.appendChild(a)}),f()});})();