Checkpoint: Correction de la boucle de connexion
✅ Problème résolu : - Les utilisateurs n'étaient plus redirigés en boucle vers la page de connexion après s'être connectés ✅ Modifications apportées : - Login.tsx : Redirection directe vers /admin après connexion réussie (au lieu de /) - Home.tsx : Suppression de la redirection automatique qui créait un conflit avec la page de connexion ✅ Tests effectués : - Connexion avec identifiants admin : redirection correcte vers /admin ✓ - Pas de boucle de redirection ✓ - Affichage correct du tableau de bord ✓
This commit is contained in:
@@ -10,12 +10,6 @@ export default function Home() {
|
|||||||
const { user, loading, isAuthenticated } = useAuth();
|
const { user, loading, isAuthenticated } = useAuth();
|
||||||
const [, setLocation] = useLocation();
|
const [, setLocation] = useLocation();
|
||||||
|
|
||||||
useEffect(() => {
|
|
||||||
if (!loading && isAuthenticated && user?.role === 'admin') {
|
|
||||||
setLocation('/admin');
|
|
||||||
}
|
|
||||||
}, [loading, isAuthenticated, user?.role, setLocation]);
|
|
||||||
|
|
||||||
if (loading) {
|
if (loading) {
|
||||||
return (
|
return (
|
||||||
<div className="min-h-screen flex items-center justify-center">
|
<div className="min-h-screen flex items-center justify-center">
|
||||||
@@ -24,10 +18,6 @@ export default function Home() {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isAuthenticated && user?.role === 'admin') {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
const features = [
|
const features = [
|
||||||
{
|
{
|
||||||
icon: <GraduationCap className="w-8 h-8 text-blue-600" />,
|
icon: <GraduationCap className="w-8 h-8 text-blue-600" />,
|
||||||
|
|||||||
@@ -17,8 +17,8 @@ export default function Login() {
|
|||||||
|
|
||||||
const loginMutation = trpc.auth.login.useMutation({
|
const loginMutation = trpc.auth.login.useMutation({
|
||||||
onSuccess: () => {
|
onSuccess: () => {
|
||||||
// Rediriger vers le tableau de bord
|
// Rediriger vers le tableau de bord admin
|
||||||
window.location.href = "/";
|
window.location.href = "/admin";
|
||||||
},
|
},
|
||||||
onError: (error) => {
|
onError: (error) => {
|
||||||
setError(error.message);
|
setError(error.message);
|
||||||
|
|||||||
8
todo.md
8
todo.md
@@ -265,3 +265,11 @@
|
|||||||
- [x] Corriger les doublons de fonctions dans server/db.ts
|
- [x] Corriger les doublons de fonctions dans server/db.ts
|
||||||
- [x] Installer jsonwebtoken et corriger les imports
|
- [x] Installer jsonwebtoken et corriger les imports
|
||||||
- [x] Vérifier que le serveur démarre sans erreur
|
- [x] Vérifier que le serveur démarre sans erreur
|
||||||
|
|
||||||
|
## Correction boucle de connexion
|
||||||
|
|
||||||
|
- [x] Diagnostiquer pourquoi l'utilisateur est redirigé vers la page de connexion en boucle
|
||||||
|
- [x] Vérifier que le cookie de session est correctement défini après connexion
|
||||||
|
- [x] Vérifier que le contexte tRPC récupère correctement l'utilisateur depuis le cookie
|
||||||
|
- [x] Corriger le problème de redirection (redirection directe vers /admin au lieu de /)
|
||||||
|
- [x] Tester la connexion complète
|
||||||
|
|||||||
Reference in New Issue
Block a user