Files
harheimertc/.output/public/_nuxt/KD1G0xGW.js
2025-10-21 15:41:42 +02:00

8 lines
9.3 KiB
JavaScript

import{_ as k}from"./DlAUqK2U.js";import{e as L,c as i,o as l,f as S,r as $,g as H,h as T,a as e,i as z,F as D,j as N,t as u,n as V,b as n,u as x,w as _,d as b,_ as v}from"#entry";import{C as M}from"./YJHbYJtA.js";import{U as A}from"./oN0_bS6A.js";import{M as C}from"./BC4PNGtJ.js";/**
* @license lucide-vue-next v0.344.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const y=L("ArrowRightIcon",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]),j={},I={id:"home",class:"relative min-h-full flex items-center justify-center overflow-hidden py-20 bg-gradient-to-br from-gray-50 to-gray-100"};function K(f,a){return l(),i("section",I,[...a[0]||(a[0]=[S('<div class="absolute inset-0 z-0" data-v-ff244c06><div class="absolute top-0 right-0 w-96 h-96 bg-primary-200/30 rounded-full blur-3xl" data-v-ff244c06></div><div class="absolute bottom-0 left-0 w-96 h-96 bg-gray-300/30 rounded-full blur-3xl" data-v-ff244c06></div><div class="absolute inset-0 opacity-10" style="background-image:url(&#39;/images/club_about_us.png&#39;);background-size:cover;background-position:center;" data-v-ff244c06></div></div><div class="relative z-20 max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-20 sm:py-32" data-v-ff244c06><div class="text-center" data-v-ff244c06><h1 class="text-5xl sm:text-6xl lg:text-7xl font-display font-bold text-gray-900 mb-6 leading-tight animate-fade-in" data-v-ff244c06> Willkommen beim<br data-v-ff244c06><span class="text-primary-600" data-v-ff244c06>Harheimer TC</span></h1><p class="text-xl sm:text-2xl text-gray-700 mb-8 max-w-3xl mx-auto animate-fade-in-delay-1" data-v-ff244c06> Tradition trifft Moderne - Ihr Tischtennisverein in Frankfurt-Harheim seit über 45 Jahren </p></div></div><div class="absolute bottom-8 left-1/2 transform -translate-x-1/2 z-20 animate-bounce" data-v-ff244c06><div class="w-6 h-10 border-2 border-gray-400 rounded-full flex justify-center pt-2" data-v-ff244c06><div class="w-1.5 h-3 bg-primary-600 rounded-full" data-v-ff244c06></div></div></div>',3)])])}const F=Object.assign(k(j,[["render",K],["__scopeId","data-v-ff244c06"]]),{__name:"Hero"}),E={key:0,class:"space-y-2 mb-6"},J={class:"flex items-center justify-between"},P={class:"flex items-center space-x-3"},R={class:"w-10 h-10 bg-primary-600 rounded-lg flex flex-col items-center justify-center text-white text-xs font-bold"},W={class:"font-semibold text-gray-900"},O={class:"text-sm text-gray-600"},B={key:1,class:"text-center py-8 bg-gray-50 rounded-lg"},U={key:2,class:"text-center"},q={__name:"TermineVorschau",setup(f){const a=$([]),t=H(()=>{const s=new Date;console.log("Heute ist:",s.toISOString().split("T")[0]);const r=a.value.filter(c=>{const p=new Date(c.datum)>=s;return console.log(`Termin ${c.titel} (${c.datum}): ${p?"KOMMEND":"VERSTRICHEN"}`),p}).sort((c,o)=>new Date(c.datum)-new Date(o.datum));return console.log("Kommende Termine:",r),r}),m=s=>new Date(s).getDate(),d=s=>{const r=new Date(s);return["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"][r.getMonth()]},h=async()=>{try{console.log("Lade Termine...");const s=await fetch("/data/termine.csv");if(console.log("Response:",s),!s.ok)throw new Error(`HTTP error! status: ${s.status}`);const r=await s.text();console.log("CSV Text:",r);const c=r.split(`
`).filter(o=>o.trim()!=="");if(console.log("CSV Lines:",c),c.length<2){console.log("Keine Datenzeilen gefunden");return}a.value=c.slice(1).map((o,p)=>{const g=o.replace(/"/g,"").split(",");if(g.length<4)return console.log(`Zeile ${p+2} hat zu wenige Werte:`,g),null;const w={datum:g[0].trim(),titel:g[1].trim(),beschreibung:g[2].trim(),kategorie:g[3].trim()};return console.log(`Termin ${p+1}:`,w),w}).filter(o=>o!==null),console.log("Alle geparsten Termine:",a.value)}catch(s){console.error("Fehler beim Laden der Termine:",s)}};return T(()=>{h()}),(s,r)=>{const c=v;return l(),i("div",null,[r[2]||(r[2]=e("div",{class:"text-center mb-6"},[e("h2",{class:"text-2xl font-display font-bold text-gray-900 mb-2"}," Kommende Termine "),e("div",{class:"w-16 h-0.5 bg-primary-600 mx-auto"})],-1)),t.value.length>0?(l(),i("div",E,[(l(!0),i(D,null,N(t.value,(o,p)=>(l(),i("div",{key:p,class:"bg-gray-50 rounded-lg p-3 hover:bg-gray-100 transition-colors"},[e("div",J,[e("div",P,[e("div",R,[e("span",null,u(m(o.datum)),1),e("span",null,u(d(o.datum)),1)]),e("div",null,[e("h3",W,u(o.titel),1),e("p",O,u(o.beschreibung),1)])]),e("span",{class:V(["px-2 py-1 text-xs font-medium rounded-full",o.kategorie==="Turnier"?"bg-yellow-100 text-yellow-800":"bg-blue-100 text-blue-800"])},u(o.kategorie),3)])]))),128))])):(l(),i("div",B,[n(x(M),{size:32,class:"text-gray-400 mx-auto mb-2"}),r[0]||(r[0]=e("p",{class:"text-gray-600 text-sm"},"Keine kommenden Termine",-1))])),t.value.length>0?(l(),i("div",U,[n(c,{to:"/termine",class:"inline-flex items-center px-4 py-2 bg-primary-600 hover:bg-primary-700 text-white text-sm font-medium rounded-lg transition-colors"},{default:_(()=>[r[1]||(r[1]=b(" Alle Termine anzeigen ",-1)),n(x(y),{size:16,class:"ml-1"})]),_:1})])):z("",!0)])}}},G={class:"py-16 sm:py-20 bg-gray-50"},Z={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"},Q={class:"max-w-4xl mx-auto"},X={class:"text-center mt-8"},Y={__name:"HomeTermine",setup(f){return(a,t)=>{const m=v;return l(),i("section",G,[e("div",Z,[t[1]||(t[1]=e("div",{class:"text-center mb-12"},[e("h2",{class:"text-4xl sm:text-5xl font-display font-bold text-gray-900 mb-4"}," Kommende Termine "),e("div",{class:"w-24 h-1 bg-primary-600 mx-auto mb-6"})],-1)),e("div",Q,[n(q)]),e("div",X,[n(m,{to:"/termine",class:"inline-flex items-center px-6 py-3 bg-primary-600 hover:bg-primary-700 text-white font-semibold rounded-lg transition-colors"},{default:_(()=>[t[0]||(t[0]=b(" Alle Termine anzeigen ",-1)),n(x(y),{size:20,class:"ml-2"})]),_:1})])])])}}},ee={key:0,class:"py-16 sm:py-20 bg-white"},te={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"},se={class:"grid md:grid-cols-2 lg:grid-cols-3 gap-8"},ne={class:"flex items-center text-sm text-gray-500 mb-3"},re={class:"text-xl font-display font-bold text-gray-900 mb-3"},oe={class:"text-gray-700 line-clamp-3"},ae={__name:"PublicNews",setup(f){const a=$([]),t=async()=>{try{const d=await $fetch("/api/news-public");a.value=d.news}catch(d){console.error("Fehler beim Laden der öffentlichen News:",d)}},m=d=>d?new Date(d).toLocaleDateString("de-DE",{year:"numeric",month:"long",day:"numeric"}):"";return T(()=>{t()}),(d,h)=>a.value.length>0?(l(),i("section",ee,[e("div",te,[h[0]||(h[0]=e("div",{class:"text-center mb-16"},[e("h2",{class:"text-4xl sm:text-5xl font-display font-bold text-gray-900 mb-4"}," Aktuelles "),e("div",{class:"w-24 h-1 bg-primary-600 mx-auto mb-6"}),e("p",{class:"text-xl text-gray-600 max-w-3xl mx-auto"}," Die neuesten Nachrichten aus unserem Verein ")],-1)),e("div",se,[(l(!0),i(D,null,N(a.value,s=>(l(),i("article",{key:s.id,class:"bg-gray-50 rounded-xl p-6 border border-gray-200 hover:shadow-lg transition-shadow"},[e("div",ne,[n(x(M),{size:16,class:"mr-2"}),b(" "+u(m(s.created)),1)]),e("h3",re,u(s.title),1),e("p",oe,u(s.content),1)]))),128))])])])):z("",!0)}},ie=k(ae,[["__scopeId","data-v-f894f108"]]),le={class:"py-16 sm:py-20 bg-gradient-to-b from-white to-gray-50"},ce={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"},de={class:"grid md:grid-cols-2 gap-8 max-w-4xl mx-auto"},me={class:"flex items-center mb-4"},ue={class:"w-16 h-16 bg-primary-100 rounded-xl flex items-center justify-center group-hover:bg-primary-600 transition-colors"},xe={class:"flex items-center text-primary-600 font-semibold group-hover:translate-x-2 transition-transform"},pe={class:"flex items-center mb-4"},ge={class:"w-16 h-16 bg-primary-100 rounded-xl flex items-center justify-center group-hover:bg-primary-600 transition-colors"},fe={class:"flex items-center text-primary-600 font-semibold group-hover:translate-x-2 transition-transform"},he={__name:"HomeActions",setup(f){return(a,t)=>{const m=v;return l(),i("section",le,[e("div",ce,[e("div",de,[n(m,{to:"/mitgliedschaft",class:"group bg-white rounded-2xl p-8 shadow-lg hover:shadow-xl transition-all border-2 border-transparent hover:border-primary-600"},{default:_(()=>[e("div",me,[e("div",ue,[n(x(A),{size:32,class:"text-primary-600 group-hover:text-white transition-colors"})]),t[0]||(t[0]=e("h3",{class:"ml-4 text-2xl font-display font-bold text-gray-900"}," Mitglied werden ",-1))]),t[2]||(t[2]=e("p",{class:"text-gray-600 mb-4"}," Werden Sie Teil unserer Tischtennisfamilie und profitieren Sie von regelmäßigem Training, Wettkämpfen und einer tollen Gemeinschaft. ",-1)),e("div",xe,[t[1]||(t[1]=b(" Mehr erfahren ",-1)),n(x(y),{size:20,class:"ml-2"})])]),_:1}),n(m,{to:"/kontakt",class:"group bg-white rounded-2xl p-8 shadow-lg hover:shadow-xl transition-all border-2 border-transparent hover:border-primary-600"},{default:_(()=>[e("div",pe,[e("div",ge,[n(x(C),{size:32,class:"text-primary-600 group-hover:text-white transition-colors"})]),t[3]||(t[3]=e("h3",{class:"ml-4 text-2xl font-display font-bold text-gray-900"}," Kontakt aufnehmen ",-1))]),t[5]||(t[5]=e("p",{class:"text-gray-600 mb-4"}," Haben Sie Fragen oder möchten ein kostenloses Probetraining vereinbaren? Wir freuen uns auf Ihre Nachricht! ",-1)),e("div",fe,[t[4]||(t[4]=b(" Jetzt kontaktieren ",-1)),n(x(y),{size:20,class:"ml-2"})])]),_:1})])])])}}},be={class:"min-h-full"},Te={__name:"index",setup(f){return(a,t)=>(l(),i("div",be,[n(F),n(Y),n(ie),n(he)]))}};export{Te as default};