Ajouter les réseaux sociaux au menu public

This commit is contained in:
Alexandre NOEL 2026-10-11 23:33:50 +02:00
commit 9e05196440
8 changed files with 67 additions and 13 deletions

View file

@ -296,6 +296,16 @@ try {
$externalImage = PublicContentFormatter::render('![Piège](https://example.org/image.webp)');
$assert(!str_contains($externalImage, '<img'), 'Une image externe a été acceptée');
});
$test('Le menu public affiche uniquement les réseaux sociaux configurés', function () use ($assert): void {
$layout = file_get_contents(__DIR__ . '/../app/Views/public_site_layout.php');
$contact = file_get_contents(__DIR__ . '/../app/Views/public_site_contact.php');
$assert(str_contains($layout, '$socialNetworks = ['), 'Le catalogue des réseaux sociaux est absent');
$assert(str_contains($layout, "public_site_' . \$network . '_url"), 'Les liens sociaux ne viennent pas des paramètres');
$assert(str_contains($layout, 'class="nav-social-link'), 'Les icônes sociales sont absentes du menu');
$assert(str_contains($layout, 'aria-label="<?= h($label) ?>"'), 'Les icônes sociales ne sont pas accessibles');
$assert(str_contains($layout, 'rel="noopener noreferrer"'), 'Les liens externes ne sont pas protégés');
$assert(!str_contains($contact, '$socialNetworks = ['), 'Le catalogue social est encore dupliqué');
});
$test('Authentification et mot de passe haché', function () use ($db, $assert): void {
$assert(ini_get('session.use_strict_mode') === '1', 'Le mode strict des sessions est désactivé');
$hash = password_hash('MotDePasseSolide!', PASSWORD_DEFAULT);