|
"use client"; |
|
|
|
import { useState } from "react"; |
|
import { useRouter } from "next/navigation"; |
|
|
|
export default function JoinPage() { |
|
const [inviteCode, setInviteCode] = useState(""); |
|
const router = useRouter(); |
|
|
|
const handleSubmit = (e: React.FormEvent) => { |
|
e.preventDefault(); |
|
if (!inviteCode) return; |
|
|
|
router.push(`/join/${inviteCode}`); |
|
}; |
|
|
|
return ( |
|
<div className="min-h-screen bg-gray-100 py-8"> |
|
<div className="container mx-auto px-4"> |
|
<div className="max-w-2xl mx-auto bg-white rounded-lg shadow-lg p-8"> |
|
<h1 className="text-3xl font-bold mb-8">Rejoindre une partie</h1> |
|
|
|
<form onSubmit={handleSubmit} className="space-y-6"> |
|
<div> |
|
<label className="block text-sm font-medium text-gray-700 mb-2"> |
|
Code d'invitation |
|
</label> |
|
<input |
|
type="text" |
|
value={inviteCode} |
|
onChange={(e) => setInviteCode(e.target.value)} |
|
className="w-full px-4 py-2 border rounded-lg" |
|
placeholder="Entrez le code d'invitation" |
|
required |
|
/> |
|
</div> |
|
|
|
<button |
|
type="submit" |
|
className="w-full px-6 py-3 bg-blue-600 text-white rounded-lg hover:bg-blue-700" |
|
> |
|
Continuer |
|
</button> |
|
</form> |
|
</div> |
|
</div> |
|
</div> |
|
); |
|
} |