Files
pta/assets/js/access-tokens.js
2026-08-27 11:38:59 +02:00

46 lines
2.1 KiB
JavaScript

/**
* Jetons d'accès de terrain (`PTA.modules.accessTokens`), écran administration.php
* — V7.27.
*
* Le Service Enfance équipe ses agents et ses responsables de lieu : création
* d'un compte, régénération d'un jeton perdu, désactivation, suppression, et
* génération en lot pour les identités qui n'en ont pas encore.
*
* PÉRIMÈTRE : agents et responsables de lieu, RIEN D'AUTRE. Les comptes Service
* Enfance et DSI ne sont ni listés ni créables. Ce module ne les propose pas, et
* le serveur les refuse en 403 (AccessAccountController) : l'écran ne fait que
* refléter une frontière qu'il ne décide pas.
*
* Tout le comportement vient de `comptes-acces.js`, partagé avec l'espace DSI :
* ce fichier ne fait que le brancher sur les ancres HTML `access-*` et sur les
* endpoints délégués `api/acces_*.php`. La version DSI du même écran ajoute, en
* plus, les rôles privilégiés, les mots de passe et le journal — c'est la seule
* différence de fond entre les deux.
*/
(() => {
'use strict';
const PTA = window.PTA;
// core.js ou comptes-acces.js absent : la page reste lisible, simplement non
// interactive. Ces deux fichiers sont chargés avant celui-ci par footer.php,
// dans l'ordre déclaré par PageController.
if (!PTA?.shared?.ecranComptesAcces) return;
const ecran = PTA.shared.ecranComptesAcces({
prefixe: 'access',
endpoints: {
liste: 'api/acces_comptes.php',
creer: 'api/acces_compte_creer.php',
jeton: 'api/acces_compte_jeton.php',
statut: 'api/acces_compte_statut.php',
manquants: 'api/acces_comptes_manquants.php',
},
// Ni champ « Nom du titulaire » ni aide de saisie propres : les deux
// rôles distribués ici pointent vers une identité déjà en base, et leurs
// aides sont celles, communes, de la fabrique.
});
// La section n'existe que sur l'écran Administration : ailleurs, `attacher()`
// se retire sans rien tenter.
PTA.modules.accessTokens = { init: ecran.attacher, refresh: ecran.chargerComptes };
})();