AdminJO Front - Documentation API - v0.1.0
    Preparing search index...
    • Composant LieuxManagement - Gestion complète des lieux olympiques AdminJO

      Returns Element

      Interface complète de gestion des lieux olympiques

      LieuxManagement Ce composant principal orchestre la gestion complète des lieux olympiques pour les Jeux Olympiques 2024. Il intègre toutes les fonctionnalités CRUD (création, lecture, mise à jour, suppression) des établissements sportifs olympiques avec une interface utilisateur complète incluant header, recherche/filtres, tableau des données et modal de saisie. Conçu pour les administrateurs des JO 2024, il permet la gestion centralisée de tous les lieux olympiques (Stade de France, Centre Aquatique, Arena Bercy, etc.) avec notifications utilisateur et gestion d'erreurs avancée.

      • LieuxHeader : En-tête avec navigation et bouton création
      • SearchAndFilters : Barre de recherche et filtres lieux
      • LieuxTable : Tableau principal affichage/gestion lieux
      • LieuModal : Modal création/édition lieu olympique
      • Notification : Système notifications succès/erreur
      • useLieuxManagement : Logique métier complète gestion lieux
      • useSessionExpiry : Sécurité session administrateur
      • useState local : États UI modal, édition, notifications
      • Trigger : Bouton "Nouveau Lieu" dans LieuxHeader
      • Modal : LieuModal en mode création (editingLieu = null)
      • Validation : Données validées avant envoi API
      • Callback : handleSaveLieu avec CreateLieuRequest
      • Notification : "Lieu créé avec succès !" en cas de succès
      • Gestion erreur : Affichage erreur si échec création
      • Refresh : Rechargement liste après création réussie
      • Source : Hook useLieuxManagement avec état lieux[]
      • Tableau : LieuxTable pour affichage structuré
      • Recherche : Filtrage temps réel via SearchAndFilters
      • Loading : États de chargement pendant récupération
      • Pagination : Gérée dans composants enfants si nécessaire
      • Actualisation : Bouton refresh dans tableau
      • Trigger : Bouton "Modifier" dans LieuxTableRow
      • Pré-remplissage : Modal avec données lieu sélectionné
      • Mode édition : editingLieu contient lieu à modifier
      • Update API : updateLieu(id, data) via hook
      • Notification : "Lieu modifié avec succès !" si réussite
      • Persistence : Mise à jour immédiate dans liste
      • Trigger : Bouton "Supprimer" dans LieuxTableRow
      • Confirmation : Gestion dans composants enfants
      • API call : deleteLieu(id) avec gestion erreur
      • Notification : Messages succès/erreur appropriés
      • Mise à jour : Retrait immédiat de la liste
      • Sécurité : Vérification autorisations via session
      • showModal : boolean contrôle affichage LieuModal
      • editingLieu : Lieu | null pour mode création/édition
      • Mode création : editingLieu = null, modal vierge
      • Mode édition : editingLieu = lieu sélectionné, pré-remplissage
      • Fermeture propre : Reset états lors fermeture modal
      1. Clic "Nouveau Lieu" → handleOpenModal() sans paramètre
      2. Ouverture modal vierge (editingLieu = null)
      3. Saisie données lieu par utilisateur
      4. Validation données côté client et serveur
      5. Création API call createLieu(data)
      6. Notification succès + fermeture modal
      7. Refresh liste lieux mise à jour
      1. Clic "Modifier" sur ligne → handleOpenModal(lieu)
      2. Pré-remplissage modal avec données existantes
      3. Modification données par utilisateur
      4. Sauvegarde updateLieu(id, data) via handleSaveLieu
      5. Notification "Lieu modifié avec succès !"
      6. Mise à jour immédiate affichage tableau
      1. Clic "Supprimer" → handleDeleteLieu(id)
      2. Confirmation (gérée dans composants enfants)
      3. Suppression API call deleteLieu(id)
      4. Notification résultat opération
      5. Refresh liste sans lieu supprimé
      1. Saisie terme recherche dans SearchAndFilters
      2. Transmission handleSearch(terme) vers hook
      3. Filtrage côté client ou serveur
      4. Mise à jour affichage LieuxTable
      5. Temps réel résultats instantanés
      • useSessionExpiry : Surveillance continue session
      • Auto-logout : Redirection si session expirée
      • Renouvellement : Gestion silencieuse tokens
      • Intercepteurs : Gestion 401/403 automatique
      • Persistance : Sauvegarde état si déconnexion
      • Types TypeScript : Interfaces strictes Lieu/CreateLieuRequest
      • Validation côté client : Contrôles avant envoi
      • Sanitisation : Nettoyage données utilisateur
      • CSRF protection : Tokens anti-forgerie
      • Autorisations : Vérification droits modification