{quaisCounts[quai.nom] ? `${quaisCounts[quai.nom]} horaire(s)` : '0 horaire'}
diff --git a/src/pages/login/Login.css b/src/pages/login/Login.css
index 492d2b1..68a141a 100644
--- a/src/pages/login/Login.css
+++ b/src/pages/login/Login.css
@@ -166,43 +166,6 @@
}
/* ── Mock / debug banner ── */
-.admin-login-mock-banner {
- margin-top: 16px;
- padding: 10px 14px;
- background: #fffbeb;
- border: 1px solid #f59e0b;
- border-radius: 10px;
- display: flex;
- align-items: center;
- justify-content: space-between;
- gap: 10px;
- flex-wrap: wrap;
-}
-
-.admin-login-mock-banner span {
- font-size: 12px;
- color: #92400e;
- font-weight: 500;
-}
-
-.admin-login-mock-btn {
- background: #f59e0b;
- color: #1c1917;
- border: none;
- border-radius: 6px;
- padding: 5px 12px;
- font-size: 12px;
- font-weight: 700;
- cursor: pointer;
- transition: background 0.15s;
- white-space: nowrap;
-}
-
-.admin-login-mock-btn:hover {
- background: #d97706;
- color: #fff;
-}
-
/* ── Responsive ── */
@media (max-width: 900px) {
.admin-login-page {
diff --git a/src/pages/login/Login.js b/src/pages/login/Login.js
index eb22a6f..e809f0b 100644
--- a/src/pages/login/Login.js
+++ b/src/pages/login/Login.js
@@ -2,23 +2,6 @@ import React, { useRef, useState, useEffect } from 'react';
import supabase, { isSupabaseConfigured } from '../../supabaseClient';
import './Login.css';
-// ─── Compte mocké pour debug ────────────────────────────────────────────────
-// Désactiver en production en passant REACT_APP_ENABLE_MOCK_LOGIN=false
-const MOCK_LOGIN_ENABLED = process.env.REACT_APP_ENABLE_MOCK_LOGIN !== 'false';
-
-const MOCK_USER = {
- id: 'mock-admin-001',
- email: 'mock@ferrovia.dev',
- nom: 'Mock',
- prenom: 'Admin',
- name: 'Mock Admin',
- role: 'admin',
- permissions: {},
- region_admin: true,
- region_id: null,
- region_nom: null,
-};
-// ────────────────────────────────────────────────────────────────────────────
async function tryFallbackAuth(email, password) {
try {
@@ -64,13 +47,7 @@ export default function Login({ onLogin }) {
// nothing for now
}, []);
- // ── Login mocké (debug uniquement) ──────────────────────────────────────
- const handleMockLogin = () => {
- console.info('[Mock Login] Connexion avec le compte de debug', MOCK_USER);
- try { window.localStorage.setItem('app_user', JSON.stringify(MOCK_USER)); } catch (_) {}
- onLogin(MOCK_USER);
- };
- // ────────────────────────────────────────────────────────────────────────
+
const handleSubmit = async (e) => {
if (e && e.preventDefault) e.preventDefault();
@@ -125,6 +102,9 @@ export default function Login({ onLogin }) {
const user = Array.isArray(effectiveData) ? (effectiveData.length ? effectiveData[0] : null) : effectiveData;
if (user && user.id) {
+ // S'assurer que permissions est au moins un objet vide pour que le RBAC applique les templates de base
+ user.permissions = user.permissions || {};
+
// Complète le profil avec les infos régionales nécessaires au RBAC front.
try {
const { data: profile } = await supabase
@@ -221,19 +201,6 @@ export default function Login({ onLogin }) {
Activer mon Compte
- {/* ── Bannière de debug (mock login) ── */}
- {MOCK_LOGIN_ENABLED && (
-