mirror of
https://github.com/JMP-MS/ASPIC.git
synced 2026-10-27 16:07:10 +00:00
V1.23.24 Externalisation des prompts et évolutions des collaborateurs
This commit is contained in:
+13
-10
@@ -94,7 +94,7 @@ $method = $_SERVER['REQUEST_METHOD'];
|
||||
if ($method === 'GET') {
|
||||
try {
|
||||
$stmt = $pdo->query(
|
||||
'SELECT AGN_Incr, AGN_Prenom, AGN_Fonction, AGN_Photo, AGN_Couleur, AGN_Identite, AGN_Experience
|
||||
'SELECT AGN_Incr, AGN_Prenom, AGN_Fonction, AGN_Photo, AGN_Couleur, AGN_Identite, AGN_Experience, AGN_Relationnel
|
||||
FROM ASP_Agents ORDER BY AGN_OrdreAffichage ASC'
|
||||
);
|
||||
echo json_encode(['collaborateurs' => $stmt->fetchAll()]);
|
||||
@@ -109,15 +109,18 @@ if ($method === 'PUT') {
|
||||
$data = json_decode(file_get_contents('php://input'), true) ?? [];
|
||||
$incr = (int) ($data['AGN_Incr'] ?? 0);
|
||||
|
||||
// Un seul des deux champs à la fois dans le corps de la requête — jamais
|
||||
// les deux ensemble côté front (voir champActif dans ecran_fond.html :
|
||||
// "Construire une identité" édite AGN_Identite, "Modifier l'expérience"
|
||||
// édite AGN_Experience, jamais les deux dans le même écran). Whitelist
|
||||
// stricte plutôt qu'un nom de colonne construit depuis une clé arbitraire
|
||||
// du JSON reçu, même si en pratique cette donnée ne vient jamais
|
||||
// d'ailleurs que du front interne — même esprit défensif que le reste du
|
||||
// projet (voir contacts.php, contact_ia_interprete.php).
|
||||
$champsAutorises = ['AGN_Identite', 'AGN_Experience'];
|
||||
// Un seul des champs à la fois dans le corps de la requête — jamais
|
||||
// plusieurs ensemble côté front (voir champActif dans bo_collaborateurs.html :
|
||||
// un onglet par champ — Identité/Expérience/Relationnel — jamais deux
|
||||
// édités dans le même appel). AGN_Relationnel (11 septembre 2026) : posture
|
||||
// relationnelle du collaborateur envers l'équipe, statique pour l'instant
|
||||
// — distincte d'AGN_Identite (caractère individuel) et d'AGN_Experience
|
||||
// (qui s'enrichit par append, voir collaborateur_experience_append.php).
|
||||
// Whitelist stricte plutôt qu'un nom de colonne construit depuis une clé
|
||||
// arbitraire du JSON reçu, même si en pratique cette donnée ne vient
|
||||
// jamais d'ailleurs que du front interne — même esprit défensif que le
|
||||
// reste du projet (voir contacts.php, contact_ia_interprete.php).
|
||||
$champsAutorises = ['AGN_Identite', 'AGN_Experience', 'AGN_Relationnel'];
|
||||
$champ = null;
|
||||
foreach ($champsAutorises as $c) {
|
||||
if (array_key_exists($c, $data)) {
|
||||
|
||||
Reference in New Issue
Block a user