Onglet Enfants « Ajouter » ouvre la fiche en mode création ; bloc Famille/dossier ; client POST /enfants avec parent_user_id (contrat back à livrer).
Co-authored-by: Cursor <cursoragent@cursor.com>
Les emplacements vides de la grille ouvrent le même flux que le lien footer, avec hover et respect de la capacité max.
Co-authored-by: Cursor <cursoragent@cursor.com>
Le lien du footer est grisé avec tooltip quand enfants ≥ capacité max ; il se réactive après détachement.
Co-authored-by: Cursor <cursoragent@cursor.com>
Réutilise AdminSelectListModal avec filtre Libre, cartes saturées en rouge, avertissement + lien fiche AM, et recalcul des places à chaque rattachement.
Co-authored-by: Cursor <cursoragent@cursor.com>
Les cartes compactes montrent plus d'enfants d'un coup ; le nom ne monopolise plus la largeur au détriment des infos.
Co-authored-by: Cursor <cursoragent@cursor.com>
Recherche dynamique, filtre Sans garde côté AM, confirmation de transfert et détachement préalable pour laisser le point de vigilance places sur l'AM d'origine.
Co-authored-by: Cursor <cursoragent@cursor.com>
Même UX que les responsables de la fiche enfant : ouverture de
AdminParentEditModal au clic sur le nom du co-parent.
Co-authored-by: Cursor <cursoragent@cursor.com>
Attach/détach AM restent locaux comme sur la fiche AM ; la sync API
n'a lieu qu'à l'enregistrement, avec rechargement du statut au retour
de la fiche AM.
Co-authored-by: Cursor <cursoragent@cursor.com>
Les noms du sous-titre deviennent des liens cliquables vers
AdminParentEditModal, comme l'ouverture de fiche AM.
Co-authored-by: Cursor <cursoragent@cursor.com>
Améliore la zone AM/scolarisation (carte dédiée + titre), envoie
consent_photo à l'inscription parent, et parse le consentement enfant
de façon plus robuste (heuristique photo tant que le back ne persiste pas).
Co-authored-by: Cursor <cursoragent@cursor.com>
En statut sans_garde, la zone placement affiche toujours le cadre vide ;
sélectionner une AM passe le statut à en garde, et passer à sans_garde
détache l'AM rattachée.
Co-authored-by: Cursor <cursoragent@cursor.com>
Alignement sur les fiches AM/parent : photo identité, champs en grille,
zone AM rattachable (y compris à naître) ou carte scolarisation,
suppression réservée au super_admin et ouverture au clic sur la carte
depuis la fiche parent.
Refs: #138
Co-authored-by: Cursor <cursoragent@cursor.com>
Unifie le comportement des listes Parents, AM, Enfants, Gestionnaires, Admins et À valider avec le bouton d'action au survol.
Co-authored-by: Cursor <cursoragent@cursor.com>
Rattachement et détachement restent locaux, recalculent places_available et sont persistés avec le PATCH fiche.
Co-authored-by: Cursor <cursoragent@cursor.com>
Compare l'état de la fiche à un snapshot initial (liste enfants, statut, places, formulaire) et corrige la gélule statut pour les valeurs hors liste.
Co-authored-by: Cursor <cursoragent@cursor.com>
Aligne le front sur les statuts enfant back (garde/sans_garde), refond l’onglet Enfants accueillis en grille 2×2 avec correction des places, et unifie les champs validation éditables/lecture seule.
Co-authored-by: Cursor <cursoragent@cursor.com>
Fiche pro entièrement éditable, places déclarées en lecture seule avec alerte rouge, icône vigilance sur la liste AM, et cadrage photo aligné sur le wizard validation.
Co-authored-by: Cursor <cursoragent@cursor.com>
Modale admin AM (identité, dossier pro, enfants), API front avec repli, note back affiliation, et extraction gélule statut / liste enfants pour la fiche parent.
Co-authored-by: Cursor <cursoragent@cursor.com>
Le titre, le sélecteur de statut et le bouton fermer partagent le même
padding : la gélule n'est plus collée au bord supérieur de la modale.
Co-authored-by: Cursor <cursoragent@cursor.com>
Affiche le prénom/nom du parent en titre et le co-parent en sous-titre ; note handoff back dans archive/temporaires.
Co-authored-by: Cursor <cursoragent@cursor.com>
Partage AdminEnfantUserCard entre fiche parent et onglet Enfants, enrichit ParentChildSummary (photo, dates) et compacte la modale parent.
Co-authored-by: Cursor <cursoragent@cursor.com>
Extrait IdentityBlock réutilisable, aligne les modales parent/enfant sur le style validation, corrige le parsing parentChildren et les URLs /uploads en Flutter web.
Co-authored-by: Cursor <cursoragent@cursor.com>
Squash merge de develop vers master.
Livrables principaux (ticket #101 et mise au point associée) :
- Branchement du formulaire d'inscription parent sur POST /api/v1/auth/register/parent
- Payload DTO (parents, enfants, photos base64, CGU) et services Auth
- Parcours gestionnaire : cartes dossiers, wizard validation famille, images authentifiées
- Scripts d'inscription test (Martin, Durand/Rousseau, Lecomte) ; .gitignore .cursor/
Inclut également les ajustements develop fusionnés dans ce lot (inscription AM, champs relais, etc.).
Closes#101
Made-with: Cursor
Intègre en un seul commit les évolutions récentes de develop vers master, incluant la modale admin/gestionnaire, les protections super admin, les ajustements API associés et la mise à jour documentaire des tickets/spec.
Co-authored-by: Cursor <cursoragent@cursor.com>
Intègre en un seul commit les évolutions de develop, avec la création/édition/suppression de gestionnaires via modale unifiée (#35) et les correctifs associés sur la gestion admin.
Co-authored-by: Cursor <cursoragent@cursor.com>
Homogénéise le dashboard admin (onglets/listes/cartes/états) via composants réutilisables, finalise la création gestionnaire côté backend, et intègre la gestion des Relais avec rattachement gestionnaire.
Co-authored-by: Cursor <cursoragent@cursor.com>
- Redirection vers /login après première config réussie
- Gestion défensive des réponses API (200/201, bool/string)
- Force l'onglet Paramètres si setup non terminé
Co-authored-by: Cursor <cursoragent@cursor.com>
- Au chargement admin: appel getSetupStatus(), si non terminé → onglet Paramètres par défaut
- Onglet Gestion des utilisateurs grisé et inaccessible tant que setup non complété
- Sauvegarder: updateBulk + completeSetup + déblocage des panneaux
- Tester SMTP: saveBulkOnly puis test (sans completeSetup, panneaux restent verrouillés)
Co-authored-by: Cursor <cursoragent@cursor.com>