fix(répertoire): colonnes différenciées, scrollbars discrètes, fontes conformes maquette, AP entre crochets

- grid-template-columns: années=0.4fr, orientations=1.2fr, AP/finalité/intermédiaires
- scrollbars: WebKit 5px transparent + Firefox scrollbar-width:thin global
- rep-entry: BBBDMSans Regular 398, --step--1
- années: BBBDMSans Medium 498 (semi-bold)
- titres colonnes: Ductus Regular 398, text-secondary, letter-spacing 0.12em
- AP: diminutifs entre crochets (ex: Design et Politique du Multiple [DPM])
- TODO: marquer les 4 correctifs répertoire comme faits
This commit is contained in:
Pontoporeia
2026-06-08 10:50:15 +02:00
parent df70fba5d4
commit 9a8f0cad65
4 changed files with 59 additions and 10 deletions

View File

@@ -30,6 +30,18 @@ ksort($studentWorks);
// ── Shared helpers ──────────────────────────────────────────────────────────
// AP abbreviation mapping (cf. maquette: diminutifs entre crochets)
const AP_ABBREVIATIONS = [
'Atelier Pratiques Situées' => '[APS]',
'Design et Politique du Multiple' => '[DPM]',
'Lieux, Interdisciplinarités, Écologie, Nécessité, Systèmes' => '[L.I.E.N.S.]',
];
function formatApDisplay(string $name): string {
$abbr = AP_ABBREVIATIONS[$name] ?? '';
return $abbr !== '' ? "$name $abbr" : $name;
}
function repToggleUrl(array $sets, string $dim, string $value): string {
if (in_array($value, $sets[$dim], true)) {
$sets[$dim] = array_values(array_filter($sets[$dim], fn($v) => $v !== $value));
@@ -66,7 +78,7 @@ function repFilterEntry(
<button type="button" class="<?= $cls ?>"
aria-pressed="<?= $isActive ? 'true' : 'false' ?>"
<?= $isFaded ? 'disabled' : "hx-get=\"" . htmlspecialchars($url) . "\" $hx" ?>>
<?= htmlspecialchars($val) ?>
<?= htmlspecialchars($dim === 'ap' ? formatApDisplay($val) : $val) ?>
</button>
</li>
<?php