{{-- Les filtres de la photothèque : une barre au-dessus des photos, la recherche puis un menu par filtre (Bootstrap, qui reste ouvert tant qu'on clique dedans). Un formulaire GET. Dans un menu, cocher ne recharge rien : le bouton « Voir N photos » compte ce que donnerait la sélection (?compte=1) ; il envoie, comme refermer le menu après un changement, ou « Effacer » (js/phototheque.js). La recherche part à Entrée ; une liste déroulante, dès qu'on choisit. Chaque valeur porte le nombre de photos qu'elle donnerait avec les AUTRES filtres (Phototheque::requete($sauf)). Le bouton d'un menu dit ce qui y est choisi : la valeur s'il n'y en a qu'une, sinon leur nombre. --}} @php $choisis = collect($actifs)->groupBy('cle'); $resume = function (array $cles) use ($choisis) { $valeurs = collect($cles)->flatMap(fn ($c) => $choisis->get($c, collect())->pluck('valeur')); return match ($valeurs->count()) { 0 => null, 1 => $valeurs->first(), default => (string) $valeurs->count(), }; }; $plus = collect([ $filtres->articles ? count($filtres->articles) : 0, $filtres->photographe !== null || $filtres->photographeNom !== null ? 1 : 0, $filtres->retouchees ? 1 : 0, $filtres->surLeSite ? 1 : 0, $filtres->videos ? 1 : 0, ])->sum(); $gererEtiquettes = auth()->user()?->can('photos.edit'); @endphp