7 lines
8.0 KiB
JavaScript
7 lines
8.0 KiB
JavaScript
import{_ as y}from"./DlAUqK2U.js";import{e as N,c as o,o as i,f as z,r as v,g as M,h as w,a as e,F as k,i as $,t as m,n as H,b as r,u as x,w as _,d as h,_ as T,j as S}from"#entry";import{C as D}from"./YJHbYJtA.js";import{U as I}from"./oN0_bS6A.js";import{M as V}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 b=N("ArrowRightIcon",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]),j={},A={id:"home",class:"relative min-h-full flex items-center justify-center overflow-hidden bg-gradient-to-br from-gray-50 to-gray-100"};function C(u,a){return i(),o("section",A,[...a[0]||(a[0]=[z('<div class="absolute inset-0 z-0" data-v-779d39d7><div class="absolute top-0 right-0 w-96 h-96 bg-primary-200/30 rounded-full blur-3xl" data-v-779d39d7></div><div class="absolute bottom-0 left-0 w-96 h-96 bg-gray-300/30 rounded-full blur-3xl" data-v-779d39d7></div><div class="absolute inset-0 opacity-10" style="background-image:url('/images/club_about_us.png');background-size:cover;background-position:center;" data-v-779d39d7></div></div><div class="relative z-20 max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-20 sm:py-8" data-v-779d39d7><div class="text-center" data-v-779d39d7><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-779d39d7> Willkommen beim<br data-v-779d39d7><span class="text-primary-600" data-v-779d39d7>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-779d39d7> Tradition trifft Moderne - Ihr Tischtennisverein in Frankfurt-Harheim seit über 45 Jahren </p></div></div>',2)])])}const F=Object.assign(y(j,[["render",C],["__scopeId","data-v-779d39d7"]]),{__name:"Hero"}),K={key:0,class:"space-y-2 mb-6"},L={class:"flex items-center justify-between"},E={class:"flex items-center space-x-3"},J={class:"w-10 h-10 bg-primary-600 rounded-lg flex flex-col items-center justify-center text-white text-xs font-bold"},O={class:"font-semibold text-gray-900"},P={class:"text-sm text-gray-600"},R={key:1,class:"text-center py-8 bg-gray-50 rounded-lg"},W={__name:"TermineVorschau",setup(u){const a=v([]),t=M(()=>{const s=new Date;console.log("Heute ist:",s.toISOString().split("T")[0]);const l=a.value.filter(n=>{const f=new Date(n.datum)>=s;return console.log(`Termin ${n.titel} (${n.datum}): ${f?"KOMMEND":"VERSTRICHEN"}`),f}).sort((n,g)=>new Date(n.datum)-new Date(g.datum));return console.log("Kommende Termine:",l),l}),c=s=>new Date(s).getDate(),d=s=>{const l=new Date(s);return["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"][l.getMonth()]},p=async()=>{try{const s=await $fetch("/api/termine");a.value=s.termine||[]}catch(s){console.error("Fehler beim Laden der Termine:",s),a.value=[]}};return w(()=>{p()}),(s,l)=>(i(),o("div",null,[l[1]||(l[1]=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?(i(),o("div",K,[(i(!0),o(k,null,$(t.value,(n,g)=>(i(),o("div",{key:g,class:"bg-gray-50 rounded-lg p-3 hover:bg-gray-100 transition-colors"},[e("div",L,[e("div",E,[e("div",J,[e("span",null,m(c(n.datum)),1),e("span",null,m(d(n.datum)),1)]),e("div",null,[e("h3",O,m(n.titel),1),e("p",P,m(n.beschreibung),1)])]),e("span",{class:H(["px-2 py-1 text-xs font-medium rounded-full",n.kategorie==="Turnier"?"bg-yellow-100 text-yellow-800":"bg-blue-100 text-blue-800"])},m(n.kategorie),3)])]))),128))])):(i(),o("div",R,[r(x(D),{size:32,class:"text-gray-400 mx-auto mb-2"}),l[0]||(l[0]=e("p",{class:"text-gray-600 text-sm"},"Keine kommenden Termine",-1))]))]))}},B={class:"py-16 sm:py-20 bg-gray-50"},U={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"},q={class:"max-w-4xl mx-auto"},G={class:"text-center mt-8"},Q={__name:"HomeTermine",setup(u){return(a,t)=>{const c=T;return i(),o("section",B,[e("div",U,[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,[r(W)]),e("div",G,[r(c,{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]=h(" Alle Termine anzeigen ",-1)),r(x(b),{size:20,class:"ml-2"})]),_:1})])])])}}},X={key:0,class:"py-16 sm:py-20 bg-white"},Y={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"},Z={class:"grid md:grid-cols-2 lg:grid-cols-3 gap-8"},ee={class:"flex items-center text-sm text-gray-500 mb-3"},te={class:"text-xl font-display font-bold text-gray-900 mb-3"},se={class:"text-gray-700 line-clamp-3"},re={__name:"PublicNews",setup(u){const a=v([]),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)}},c=d=>d?new Date(d).toLocaleDateString("de-DE",{year:"numeric",month:"long",day:"numeric"}):"";return w(()=>{t()}),(d,p)=>a.value.length>0?(i(),o("section",X,[e("div",Y,[p[0]||(p[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",Z,[(i(!0),o(k,null,$(a.value,s=>(i(),o("article",{key:s.id,class:"bg-gray-50 rounded-xl p-6 border border-gray-200 hover:shadow-lg transition-shadow"},[e("div",ee,[r(x(D),{size:16,class:"mr-2"}),h(" "+m(c(s.created)),1)]),e("h3",te,m(s.title),1),e("p",se,m(s.content),1)]))),128))])])])):S("",!0)}},ae=y(re,[["__scopeId","data-v-f894f108"]]),ne={class:"py-16 sm:py-20 bg-gradient-to-b from-white to-gray-50"},oe={class:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"},ie={class:"grid md:grid-cols-2 gap-8 max-w-4xl mx-auto"},le={class:"flex items-center mb-4"},de={class:"w-16 h-16 bg-primary-100 rounded-xl flex items-center justify-center group-hover:bg-primary-600 transition-colors"},ce={class:"flex items-center text-primary-600 font-semibold group-hover:translate-x-2 transition-transform"},me={class:"flex items-center mb-4"},xe={class:"w-16 h-16 bg-primary-100 rounded-xl flex items-center justify-center group-hover:bg-primary-600 transition-colors"},ue={class:"flex items-center text-primary-600 font-semibold group-hover:translate-x-2 transition-transform"},pe={__name:"HomeActions",setup(u){return(a,t)=>{const c=T;return i(),o("section",ne,[e("div",oe,[e("div",ie,[r(c,{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",le,[e("div",de,[r(x(I),{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",ce,[t[1]||(t[1]=h(" Mehr erfahren ",-1)),r(x(b),{size:20,class:"ml-2"})])]),_:1}),r(c,{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",me,[e("div",xe,[r(x(V),{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",ue,[t[4]||(t[4]=h(" Jetzt kontaktieren ",-1)),r(x(b),{size:20,class:"ml-2"})])]),_:1})])])])}}},ge={class:"min-h-full"},ve={__name:"index",setup(u){return(a,t)=>(i(),o("div",ge,[r(F),r(Q),r(ae),r(pe)]))}};export{ve as default};
|