7 lines
5.7 KiB
JavaScript
7 lines
5.7 KiB
JavaScript
import{e as w,r as d,c as f,a as s,k as h,h as b,l,v as n,b as u,d as m,u as p,t as y,m as k,w as M,_ as P,o as g,z as V}from"#entry";import{u as _}from"./C_U-NUAd.js";import{A as B}from"./C8kQt0fa.js";import{C as I}from"./DaSgy0Cl.js";import{L as R}from"./CUq_0rkE.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 S=w("InfoIcon",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]),T={class:"min-h-full flex items-center justify-center py-16 px-4 sm:px-6 lg:px-8 bg-gray-50"},z={class:"max-w-md w-full space-y-8"},C={class:"bg-white rounded-xl shadow-lg p-8"},L={key:0,class:"bg-red-50 border border-red-200 rounded-lg p-4"},N={class:"text-sm text-red-800 flex items-center"},Z={key:1,class:"bg-green-50 border border-green-200 rounded-lg p-4"},D={class:"text-sm text-green-800 flex items-center"},U=["disabled"],q={class:"text-center"},E={class:"bg-yellow-50 border border-yellow-200 rounded-lg p-4"},A={class:"text-sm text-yellow-800"},G={__name:"registrieren",setup(H){const r=d({name:"",email:"",phone:"",password:"",confirmPassword:""}),o=d(!1),a=d(""),i=d(""),v=async()=>{if(a.value="",i.value="",r.value.password.length<8){a.value="Das Passwort muss mindestens 8 Zeichen lang sein.";return}if(r.value.password!==r.value.confirmPassword){a.value="Die Passwörter stimmen nicht überein.";return}o.value=!0;try{(await $fetch("/api/auth/register",{method:"POST",body:{name:r.value.name,email:r.value.email,phone:r.value.phone,password:r.value.password}})).success&&(i.value="Registrierung erfolgreich! Sie erhalten eine E-Mail, sobald Ihr Zugang freigeschaltet wurde.",r.value={name:"",email:"",phone:"",password:"",confirmPassword:""},setTimeout(()=>{V("/login")},3e3))}catch(c){a.value=c.data?.message||"Registrierung fehlgeschlagen. Bitte versuchen Sie es später erneut."}finally{o.value=!1}};return _({title:"Registrierung - Harheimer TC"}),(c,e)=>{const x=P;return g(),f("div",T,[s("div",z,[e[14]||(e[14]=s("div",{class:"text-center"},[s("h2",{class:"text-3xl font-display font-bold text-gray-900"}," Registrierung "),s("p",{class:"mt-2 text-sm text-gray-600"}," Beantragen Sie Zugang zum Mitgliederbereich ")],-1)),s("div",C,[s("form",{onSubmit:h(v,["prevent"]),class:"space-y-6"},[s("div",null,[e[5]||(e[5]=s("label",{for:"name",class:"block text-sm font-medium text-gray-700 mb-2"}," Vollständiger Name ",-1)),l(s("input",{id:"name","onUpdate:modelValue":e[0]||(e[0]=t=>r.value.name=t),type:"text",required:"",autocomplete:"name",class:"w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-primary-600 focus:border-transparent transition-all",placeholder:"Max Mustermann"},null,512),[[n,r.value.name]])]),s("div",null,[e[6]||(e[6]=s("label",{for:"email",class:"block text-sm font-medium text-gray-700 mb-2"}," E-Mail-Adresse ",-1)),l(s("input",{id:"email","onUpdate:modelValue":e[1]||(e[1]=t=>r.value.email=t),type:"email",required:"",autocomplete:"email",class:"w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-primary-600 focus:border-transparent transition-all",placeholder:"ihre-email@example.com"},null,512),[[n,r.value.email]])]),s("div",null,[e[7]||(e[7]=s("label",{for:"phone",class:"block text-sm font-medium text-gray-700 mb-2"}," Telefonnummer (optional) ",-1)),l(s("input",{id:"phone","onUpdate:modelValue":e[2]||(e[2]=t=>r.value.phone=t),type:"tel",autocomplete:"tel",class:"w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-primary-600 focus:border-transparent transition-all",placeholder:"069-12345678"},null,512),[[n,r.value.phone]])]),s("div",null,[e[8]||(e[8]=s("label",{for:"password",class:"block text-sm font-medium text-gray-700 mb-2"}," Passwort ",-1)),l(s("input",{id:"password","onUpdate:modelValue":e[3]||(e[3]=t=>r.value.password=t),type:"password",required:"",autocomplete:"new-password",class:"w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-primary-600 focus:border-transparent transition-all",placeholder:"••••••••"},null,512),[[n,r.value.password]]),e[9]||(e[9]=s("p",{class:"mt-1 text-xs text-gray-500"}," Mindestens 8 Zeichen ",-1))]),s("div",null,[e[10]||(e[10]=s("label",{for:"confirmPassword",class:"block text-sm font-medium text-gray-700 mb-2"}," Passwort bestätigen ",-1)),l(s("input",{id:"confirmPassword","onUpdate:modelValue":e[4]||(e[4]=t=>r.value.confirmPassword=t),type:"password",required:"",autocomplete:"new-password",class:"w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-primary-600 focus:border-transparent transition-all",placeholder:"••••••••"},null,512),[[n,r.value.confirmPassword]])]),a.value?(g(),f("div",L,[s("p",N,[u(p(B),{size:18,class:"mr-2"}),m(" "+y(a.value),1)])])):b("",!0),i.value?(g(),f("div",Z,[s("p",D,[u(p(I),{size:18,class:"mr-2"}),m(" "+y(i.value),1)])])):b("",!0),s("button",{type:"submit",disabled:o.value,class:"w-full px-6 py-3 bg-primary-600 hover:bg-primary-700 disabled:bg-gray-400 text-white font-semibold rounded-lg transition-colors flex items-center justify-center"},[o.value?(g(),k(p(R),{key:0,size:20,class:"mr-2 animate-spin"})):b("",!0),s("span",null,y(o.value?"Wird gesendet...":"Registrierung beantragen"),1)],8,U),s("div",q,[u(x,{to:"/login",class:"text-sm text-primary-600 hover:text-primary-700 font-medium"},{default:M(()=>[...e[11]||(e[11]=[m(" Bereits registriert? Zum Login ",-1)])]),_:1})])],32)]),s("div",E,[s("p",A,[u(p(S),{size:16,class:"inline mr-1"}),e[12]||(e[12]=s("strong",null,"Hinweis:",-1)),e[13]||(e[13]=m(" Ihre Registrierung muss vom Vorstand freigegeben werden. Sie erhalten eine E-Mail, sobald Ihr Zugang aktiviert wurde. ",-1))])])])])}}};export{G as default};
|