// components/events/EventRegistrationForm.tsx 'use client'; import { useState } from 'react'; import { useRouter } from 'next/navigation'; export default function EventRegistrationForm({ eventId }: { eventId: number }) { const router = useRouter(); const [formData, setFormData] = useState({ steamId: '', carModel: '', carSkin: '', teamName: '', }); const [loading, setLoading] = useState(false); const [error, setError] = useState(''); const [success, setSuccess] = useState(false); const handleSubmit = async (e: React.FormEvent) => { e.preventDefault(); setLoading(true); setError(''); setSuccess(false); try { const response = await fetch('/api/events/register', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ eventId, ...formData, }), }); const data = await response.json(); if (!response.ok) { throw new Error(data.error || 'Registration failed'); } setSuccess(true); setTimeout(() => { router.refresh(); }, 1500); } catch (err: any) { setError(err.message); } finally { setLoading(false); } }; return (
{/* Steam ID */}
setFormData({ ...formData, steamId: e.target.value })} className="w-full px-4 py-3 bg-black border border-white/20 text-white focus:border-white focus:outline-none transition-colors" placeholder="76561198XXXXXXXXX" />

Your Steam ID from the database

{/* Car Model */}
setFormData({ ...formData, carModel: e.target.value })} className="w-full px-4 py-3 bg-black border border-white/20 text-white focus:border-white focus:outline-none transition-colors font-mono" placeholder="ks_ferrari_488_gt3" />

Assetto Corsa car folder name

{/* Car Skin */}
setFormData({ ...formData, carSkin: e.target.value })} className="w-full px-4 py-3 bg-black border border-white/20 text-white focus:border-white focus:outline-none transition-colors" placeholder="01_red_white (optional)" />
{/* Team Name */}
setFormData({ ...formData, teamName: e.target.value })} className="w-full px-4 py-3 bg-black border border-white/20 text-white focus:border-white focus:outline-none transition-colors" placeholder="Enter team name (optional)" />
{/* Error Message */} {error && (
{error}
)} {/* Success Message */} {success && (
Registration successful! Redirecting...
)} {/* Submit Button */}

* Required fields

); }