- Create migration script for existing data - Update admin interface to show only short URLs - Implement redirect system to avoid code duplication - Maintain backward compatibility with old URLs
47 lines
1.6 KiB
TypeScript
47 lines
1.6 KiB
TypeScript
'use client';
|
|
|
|
import { Card, CardContent } from '@/components/ui/card';
|
|
import { Button } from '@/components/ui/button';
|
|
import { CheckCircle, ArrowLeft } from 'lucide-react';
|
|
import Link from 'next/link';
|
|
import { useParams } from 'next/navigation';
|
|
|
|
export default function ProposeSuccessPage() {
|
|
const params = useParams();
|
|
const slug = params.slug as string;
|
|
|
|
return (
|
|
<div className="min-h-screen bg-gradient-to-br from-blue-50 to-indigo-100 dark:from-slate-900 dark:to-slate-800 flex items-center justify-center py-8 px-4">
|
|
<Card className="w-full max-w-md shadow-lg">
|
|
<CardContent className="p-8 text-center">
|
|
<CheckCircle className="w-16 h-16 text-green-500 mx-auto mb-6" />
|
|
|
|
<h1 className="text-2xl font-bold text-gray-900 dark:text-gray-100 mb-4">
|
|
Proposition soumise avec succès !
|
|
</h1>
|
|
|
|
<p className="text-gray-600 dark:text-gray-400 mb-6">
|
|
Votre proposition a été enregistrée et sera examinée par l'équipe organisatrice.
|
|
Vous recevrez une confirmation par email.
|
|
</p>
|
|
|
|
<div className="space-y-3">
|
|
<Button asChild className="w-full">
|
|
<Link href={`/p/${slug}`}>
|
|
<ArrowLeft className="w-4 h-4 mr-2" />
|
|
Déposer une autre proposition
|
|
</Link>
|
|
</Button>
|
|
|
|
<Button variant="outline" asChild className="w-full">
|
|
<Link href="/">
|
|
Retour à l'accueil
|
|
</Link>
|
|
</Button>
|
|
</div>
|
|
</CardContent>
|
|
</Card>
|
|
</div>
|
|
);
|
|
}
|