Les administrateurs peuvent désormais configurer l'identité visuelle de leur établissement : upload d'un logo (PNG/JPG, redimensionné automatiquement via Imagick) et choix d'une couleur principale appliquée aux boutons et à la navigation. La couleur est validée côté client et serveur pour garantir la conformité WCAG AA (contraste ≥ 4.5:1 sur fond blanc). Les personnalisations sont injectées dynamiquement via CSS variables et visibles immédiatement après sauvegarde.
22 lines
496 B
PHP
22 lines
496 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Administration\Infrastructure\Storage;
|
|
|
|
use App\Administration\Application\Port\ImageProcessor;
|
|
use Override;
|
|
|
|
/**
|
|
* Fake image processor pour les tests.
|
|
* Retourne un contenu PNG factice sans traitement réel.
|
|
*/
|
|
final class InMemoryImageProcessor implements ImageProcessor
|
|
{
|
|
#[Override]
|
|
public function resize(string $sourcePath, int $maxWidth, int $maxHeight): string
|
|
{
|
|
return file_get_contents($sourcePath) ?: '';
|
|
}
|
|
}
|