select-search: recent-blok voor elke dropdown, bipp-budgetcode levert het niet meer zelf

Elke grote dropdown houdt nu zijn eigen vijf laatst gekozen waarden bij,
bovenaan de lijst onder de kopregel recent. Alles zit onder een
localStorage-sleutel, per veld, met een sleutel die uit name of id volgt
zodat rij 3 en rij 4 van hetzelfde veld één lijst delen. Delete haalt een
regel uit recent, en data-ss-recent="manual" plus window.selectSearch.remember()
is er voor wie pas mag onthouden nadat de server bevestigd heeft.

bipp-budgetcode gebruikt die weg en bouwt zijn eigen recent-optgroup dus
niet langer zelf.

Een optie zonder leesbare tekst telt voortaan als "niets gekozen", ook als
ze een waarde draagt, zoals de <option value="0">&nbsp;</option> van een
OAF-scherm. Zo'n regel stond eerst gewoon in de lijst; wie ze koos kreeg
haar daarna permanent als lege blauwe balk onder recent te zien.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Glenn Goossens
2026-09-01 16:59:22 +02:00
co-authored by Claude Opus 5
parent 4a9ea34649
commit b831ab9f1f
8 changed files with 437 additions and 79 deletions
+4 -2
View File
@@ -17,8 +17,10 @@ gekozen waarde zit wel al in de pagina, maar alleen als tooltip op die link.
staat.
- Zoeken in die lijst van ruim vijfduizend codes gaat via
[select-search](../select-search/README.md), dat op dezelfde pagina meeloopt.
- Bovenaan de lijst staan onder *recent* de codes die je het laatst gebruikt hebt. Die
staan verderop niet nog een keer: elke code komt maar één keer in de lijst voor.
- Bovenaan de lijst staan onder *recent* de vijf codes die je het laatst gebruikt hebt. Dat blok
komt van [select-search](../select-search/README.md#recent) en werkt intussen op elke grote
dropdown op BIPP, niet enkel op de budgetcode. Hier telt een code pas als de server ze
aanvaard heeft: mislukt het opslaan, dan blijft recent ongemoeid.
- Is de grootboekrekening ook gekozen, dan komt de code in **Interne commentaar** te staan.
Stond daar al iets, dan komt ze op een nieuwe regel eronder. Kies je daarna een andere code,
dan wordt die regel vervangen in plaats van dat er een bijkomt.