This commit is contained in:
PTA
2026-08-20 17:00:06 +02:00
parent 5d8c0993a6
commit 94e7f09eb4
58 changed files with 5605 additions and 615 deletions

51
docs/README_V7_13.md Normal file
View File

@@ -0,0 +1,51 @@
# PTA V7.13 — Nom et prénom modifiables sur la fiche agent
## Le problème traité
La modale « Modifier les informations de l’agent » couvrait tout sauf l’identité : coordonnées,
diplôme, poste, contrat, lieu principal, commentaire PTA. Le nom et le prénom, eux, n’étaient saisis
qu’à la création.
Or ils changent : mariage, divorce, nom d’usage, ou plus prosaïquement une faute de frappe lors de la
saisie initiale. La seule correction possible passait par une requête SQL — donc par quelqu’un qui a
l’accès à la base, ce que la V7.11 s’était justement employée à restreindre.
## Ce qui change
Deux champs, **Prénom** et **Nom**, ouvrent la modale d’édition. Ils sont obligatoires et bornés à
100 caractères, comme à la création.
Restent volontairement hors d’atteinte :
- le **matricule** — c’est la clé de rapprochement avec les outils RH, et les plannings comme les PDF
déjà produits s’y réfèrent ;
- la **quotité de travail** — elle détermine le quota annuel déjà consommé ; la changer en cours
d’année fausserait rétroactivement tous les suivis.
Un renommage se lit **directement dans le journal**, sans avoir à comparer deux lignes :
```
AGENT_MODIFIE Modification de la fiche de l’agent Marc-Antoine LOUIS, renommé depuis « Marc Louis ».
{"id_structure":1,"type_contrat":"PERMANENT","identite_precedente":"Marc Louis"}
```
L’identité précédente n’apparaît que s’il y a effectivement eu changement : une modification de
coordonnées garde la trace courte.
## Fichiers
| Fichier | Rôle |
| --- | --- |
| `app/Views/partials/administration.php` | Les deux champs dans la modale, `data-nom` / `data-prenom` sur la ligne du tableau |
| `assets/js/administration.js` | Pré-remplissage depuis les `data-*`, envoi, rafraîchissement de la ligne |
| `app/Controllers/AgentController.php` | Validation, fiche relue avant modification pour repérer le renommage |
| `app/Models/AgentModel.php` | `nom` et `prenom` dans l’`UPDATE` de `updateProfile()` |
Aucune migration : les colonnes existent depuis le socle.
## Point d’attention
Les `data-*` de la ligne du tableau sont la SOURCE de la modale : elle s’ouvre à partir d’eux, sans
appel réseau. Ajouter un champ modifiable impose donc de le poser à trois endroits — le partiel
(attribut `data-*`), `setAgentRowData()` et `openAgentProfileModal()` — sans quoi il s’ouvre vide
puis écrase la valeur existante à l’enregistrement.