3 lines
3.5 KiB
JavaScript
3 lines
3.5 KiB
JavaScript
import{u as y}from"./C_U-NUAd.js";import{C as w}from"./YJHbYJtA.js";import{r as v,g as _,h as k,c as l,a as t,F as D,j as T,b as M,u as F,o as i,t as o,n as z}from"#entry";const S={class:"min-h-full py-16 bg-gray-50"},A={class:"max-w-4xl mx-auto px-4 sm:px-6 lg:px-8"},H={key:0,class:"space-y-4"},J={class:"flex items-start space-x-4"},C={class:"flex-shrink-0 w-16 h-16 bg-primary-600 rounded-xl flex flex-col items-center justify-center text-white"},$={class:"text-2xl font-bold"},B={class:"text-xs"},E={class:"flex-1"},N={class:"flex items-start justify-between"},V={class:"text-xl font-semibold text-gray-900 mb-1"},j={class:"text-gray-600 mb-2"},L={class:"text-sm text-gray-500"},O={key:1,class:"text-center py-16 bg-white rounded-xl shadow-lg"},G={__name:"termine",setup(K){const x=v([]),g=_(()=>{const n=new Date;return n.setHours(0,0,0,0),x.value.filter(e=>new Date(e.datum)>=n).sort((e,s)=>new Date(e.datum)-new Date(s.datum))}),h=n=>new Date(n).getDate(),p=n=>{const e=new Date(n);return["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"][e.getMonth()]},b=n=>{const e=new Date(n),s=["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],a=["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"];return`${s[e.getDay()]}, ${e.getDate()}. ${a[e.getMonth()]} ${e.getFullYear()}`},f=async()=>{try{const n=await fetch("/data/termine.csv");if(!n.ok)throw new Error(`HTTP error! status: ${n.status}`);const s=(await n.text()).split(`
|
|
`).filter(a=>a.trim()!=="");if(s.length<2)return;x.value=s.slice(1).map((a,P)=>{const r=[];let m="",u=!1;for(let d=0;d<a.length;d++){const c=a[d];c==='"'?u=!u:c===","&&!u?(r.push(m.trim()),m=""):m+=c}return r.push(m.trim()),r.length<4?null:{datum:r[0].trim(),titel:r[1].trim(),beschreibung:r[2].trim(),kategorie:r[3].trim()}}).filter(a=>a!==null)}catch(n){console.error("Fehler beim Laden der Termine:",n)}};return k(()=>{f()}),y({title:"Termine & Events - Harheimer TC"}),(n,e)=>(i(),l("div",S,[t("div",A,[e[2]||(e[2]=t("div",{class:"text-center mb-12"},[t("h1",{class:"text-4xl sm:text-5xl font-display font-bold text-gray-900 mb-4"}," Termine & Events "),t("div",{class:"w-24 h-1 bg-primary-600 mx-auto mb-6"}),t("p",{class:"text-xl text-gray-600 max-w-3xl mx-auto"}," Alle kommenden Termine und Veranstaltungen des Harheimer TC ")],-1)),g.value.length>0?(i(),l("div",H,[(i(!0),l(D,null,T(g.value,(s,a)=>(i(),l("div",{key:a,class:"bg-white rounded-xl shadow-lg p-6 hover:shadow-xl transition-shadow"},[t("div",J,[t("div",C,[t("span",$,o(h(s.datum)),1),t("span",B,o(p(s.datum)),1)]),t("div",E,[t("div",N,[t("div",null,[t("h3",V,o(s.titel),1),t("p",j,o(s.beschreibung),1),t("p",L,o(b(s.datum)),1)]),t("span",{class:z(["px-3 py-1 text-sm font-medium rounded-full",s.kategorie==="Turnier"?"bg-yellow-100 text-yellow-800":"bg-blue-100 text-blue-800"])},o(s.kategorie),3)])])])]))),128))])):(i(),l("div",O,[M(F(w),{size:64,class:"text-gray-400 mx-auto mb-4"}),e[0]||(e[0]=t("h3",{class:"text-2xl font-semibold text-gray-900 mb-2"},"Keine kommenden Termine",-1)),e[1]||(e[1]=t("p",{class:"text-gray-600"}," Aktuell sind keine Termine geplant. Schauen Sie bald wieder vorbei! ",-1))])),e[3]||(e[3]=t("div",{class:"mt-12 bg-primary-50 border border-primary-100 rounded-xl p-6"},[t("h3",{class:"text-lg font-semibold text-primary-900 mb-2"}," Hinweis "),t("p",{class:"text-primary-800"}," Alle Termine sind vorbehaltlich kurzfristiger Änderungen. Bei Fragen zu einzelnen Veranstaltungen kontaktieren Sie uns gerne. ")],-1))])]))}};export{G as default};
|