"use client"; import { useState } from "react"; import { useRouter } from "next/navigation"; import Link from "next/link"; import Navigation from "@/components/Navigation"; export default function RegisterPage() { const router = useRouter(); const [formData, setFormData] = useState({ email: "", username: "", password: "", confirmPassword: "", }); const [error, setError] = useState(""); const [loading, setLoading] = useState(false); const handleChange = (e: React.ChangeEvent) => { setFormData({ ...formData, [e.target.name]: e.target.value, }); }; const handleSubmit = async (e: React.FormEvent) => { e.preventDefault(); setError(""); if (formData.password !== formData.confirmPassword) { setError("Les mots de passe ne correspondent pas"); return; } if (formData.password.length < 6) { setError("Le mot de passe doit contenir au moins 6 caractères"); return; } setLoading(true); try { const response = await fetch("/api/register", { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ email: formData.email, username: formData.username, password: formData.password, }), }); const data = await response.json(); if (!response.ok) { setError(data.error || "Une erreur est survenue"); return; } router.push("/login?registered=true"); } catch (err) { setError("Une erreur est survenue"); } finally { setLoading(false); } }; return (
{/* Background Image */}
{/* Register Form */}

INSCRIPTION

Créez votre compte pour commencer

{error && (
{error}
)}

Déjà un compte ?{" "} Se connecter

); }