This commit is contained in:
PTA
2026-08-25 15:12:11 +02:00
parent 44730eefca
commit 1a67080268
25 changed files with 2646 additions and 231 deletions

View File

@@ -223,7 +223,9 @@ final class PageController extends Controller
$this->access->requirePage('teams');
$this->renderPage('teams', 'Équipes des mercredis et vacances', 'teams', [
'pageSubtitle' => 'La composition des équipes sur les mercredis et les périodes de vacances.',
'agents' => (new AgentModel($this->pdo))->allActive(),
// Liste d'AFFECTATION : un agent dont l'accès a été coupé n'est plus
// proposé à la composition d'une équipe (V7.29).
'agents' => (new AgentModel($this->pdo))->allSelectable(),
'structures' => (new StructureModel($this->pdo))->allActive(),
'scripts' => ['teams.js'],
'modules' => ['teams'],
@@ -254,13 +256,16 @@ final class PageController extends Controller
{
$this->access->requirePage('administration');
$this->renderPage('administration', 'Administration', 'administration', [
'pageSubtitle' => 'Les horaires de couverture attendus de chaque lieu : les plages où un effectif minimum doit être présent.',
// Depuis la V7.14, cet écran ne porte plus que les règles de
// couverture : agents et lieux ont leur propre page (management).
// Seule la liste des lieux reste nécessaire, pour son sélecteur.
'pageSubtitle' => 'Les horaires de couverture attendus de chaque lieu, et les jetons d\'accès des agents et des responsables.',
// Depuis la V7.14, cet écran ne porte plus les agents ni les lieux :
// ils ont leur propre page (management). Seule la liste des lieux
// reste nécessaire, pour son sélecteur.
'structures' => (new StructureModel($this->pdo))->allActive(),
'scripts' => ['coverage.js'],
'modules' => ['coverage'],
// V7.27 : la distribution des jetons de terrain rejoint cet écran.
// Le contenu de la section vient entièrement de l'API — le HTML
// servi ne porte aucune information sur les comptes.
'scripts' => ['coverage.js', 'access-tokens.js'],
'modules' => ['coverage', 'accessTokens'],
]);
}
@@ -289,8 +294,11 @@ final class PageController extends Controller
'agents' => $agentModel->allActive(),
'structures' => (new StructureModel($this->pdo))->allActive(),
'posts' => $agentModel->allPosts(),
'scripts' => ['administration.js', 'address-autocomplete.js', 'field-format.js'],
'modules' => ['administration', 'addressAutocomplete', 'fieldFormat'],
// V7.28 : `agentAccess` ajoute sur chaque ligne le bouton qui coupe
// ou rétablit l'accès de l'agent. Il n'ouvre aucun droit nouveau —
// il réutilise les endpoints délégués de la V7.27.
'scripts' => ['administration.js', 'address-autocomplete.js', 'field-format.js', 'agent-access.js'],
'modules' => ['administration', 'addressAutocomplete', 'fieldFormat', 'agentAccess'],
]);
}