Functies / Afhankelijke filters

Afhankelijke filters

Elk filter verfijnt elk ander filter. Kies een land en zie alleen nog camera's, personen, tags en beoordelingen die in die foto's voorkomen.

FilterenFaceted searchUX Documentatie
Foto-pagina met filterpaneel waarin Duitsland is geselecteerd en personen, camera's, tags en beoordelingen worden teruggebracht tot passende waarden

Klik op een filter en alles reageert

Traditionele fotobeheerders tonen je elke filterwaarde, ongeacht wat je al hebt gekozen. Je kiest een land, dan een camera - en krijgt nul resultaten, omdat die camera daar nooit is gebruikt. Vallen en opstaan.

De filterpanelen van Gallery praten met elkaar. Kies Duitsland en het personenpaneel beperkt zich meteen tot personen die in Duitse foto's voorkomen. Het camerapaneel toont alleen camera's die in Duitsland zijn gebruikt. Tags, beoordelingen, mediatype - alles werkt mee.

Dit is faceted search - hetzelfde principe dat Amazon en eBay gebruiken. Elke zichtbare optie levert gegarandeerd resultaten op. Geen doodlopende paden, geen giswerk.

Filterpaneel waarin landen, tags en camera's zich dynamisch beperken terwijl de gebruiker verschillende filterwaarden kiest

Zo werkt het

Eén API-aanvraag levert alle filtersuggesties in één keer op. Onder de motorkap draait de server zes parallelle query's - één per categorie (landen, camera's, personen, tags, beoordelingen, mediatype). Elke query past al je actieve filters toe behalve die van de eigen categorie, zodat je altijd ziet wat er nog mogelijk is bij je andere keuzes.

Wanneer je Duitsland kiest, laat de landen-query het landfilter weg (en toont alle landen die bij je andere filters passen), terwijl de camera-query het wél meeneemt (en alleen camera's toont die in Duitsland zijn gebruikt). Daarom voelt het meteen aan - één aanvraag, zes parallelle antwoorden.

Verweesde keuzes blijven zichtbaar

Als je Frankrijk kiest en daarna een cameramerk dat nooit in Frankrijk is gebruikt, verdwijnt Frankrijk niet - het wordt alleen gedimd. Zo zie je meteen waarom je resultaat leeg is en kun je de keuze met één klik ongedaan maken. Geen raadsel, geen frustratie.

Beoordelingen en mediatype passen zich ook aan

Het zijn niet alleen dropdowns die meebewegen. Als je gefilterde foto's allemaal 4 en 5 sterren hebben, verdwijnen de knoppen voor 1-2-3 sterren. Als er alleen foto's zijn en geen video's, verdwijnt de knop Video's. Elke knop weerspiegelt de werkelijkheid.

Slim debouncen

Veel snelle klikken worden gebundeld - de server wordt niet bestookt met aanvragen als je meerdere personen kiest of snel tags aan- en uitzet. Tijdgebonden wijzigingen (een jaar of maand kiezen) krijgen iets meer debounce-tijd, omdat de datumkiezer meer verkennend wordt gebruikt. Alle filters wissen gaat direct.

Lees de volledige documentatie op GitHub

Klaar om Gallery op je eigen server te draaien? In 5 minuten geïnstalleerd, en de demo blijft beschikbaar om snel iets te testen.