|
@@ -1,13 +1,42 @@
|
|
|
# Uitgaanskrant — takenlijst
|
|
# Uitgaanskrant — takenlijst
|
|
|
|
|
|
|
|
-Bijgewerkt: 2026-08-14 (Claude, code-only — geen builder-UI, Bob ging
|
|
|
|
|
-gelijktijdig zelf aan de slag in een andere sessie).
|
|
|
|
|
|
|
+Bijgewerkt: 2026-08-14 (Claude, tweede sessie zelfde dag — Bob deed
|
|
|
|
|
+"kleine dingen" in zijn eigen builder-tabblad, Claude gebruikte een
|
|
|
|
|
+eigen los tabblad in dezelfde Chrome).
|
|
|
Zie `CLAUDE.md` voor werkinstructies/conventies. Elke openstaande taak
|
|
Zie `CLAUDE.md` voor werkinstructies/conventies. Elke openstaande taak
|
|
|
hieronder is zelfstandig te begrijpen zonder de chat gelezen te hebben
|
|
hieronder is zelfstandig te begrijpen zonder de chat gelezen te hebben
|
|
|
waarin hij ontstond.
|
|
waarin hij ontstond.
|
|
|
|
|
|
|
|
-**Deze sessie (2026-08-14, code-only, geen builder-UI gebruikt omdat Bob
|
|
|
|
|
-meldde gelijktijdig zelf in een andere sessie aan de slag te gaan —
|
|
|
|
|
|
|
+**Deze sessie (2026-08-14, tweede ronde, code-audit + 1 builder-poging):**
|
|
|
|
|
+op verzoek ("pak nog wat taken op") eerst een code-only audit van
|
|
|
|
|
+`api_calls.dart` tegen de openstaande P1-7-taak (favorietenpagina) —
|
|
|
|
|
+**twee stale/onvolledige aannames in P1-7 gecorrigeerd, geen van beide
|
|
|
|
|
+had nog nieuw Drupal-werk nodig:**
|
|
|
|
|
+- **Tab 1 "Persoonlijke agenda"**: bleek nog "niet onderzocht", maar
|
|
|
|
|
+ `UitgaanstabelCall`/`UitgaanSliderCall` ondersteunen al een
|
|
|
|
|
+ `townid`-parameter — rechtstreeks bruikbaar door per favoriete
|
|
|
|
|
+ gemeente (`favorieteGemeenteIds`) een call te doen. Zie bijgewerkte
|
|
|
|
|
+ P1-7 hieronder.
|
|
|
|
|
+- **Tab 3 "Favoriete Gelegenheden"**: de bestaande blokkering-op-P0-7
|
|
|
|
|
+ was stale (P0-7 is al op 2026-08-13 gefixt) — én er bleek een
|
|
|
|
|
+ simpelere, nooit eerder overwogen route: `FavorietenAgendaCall`
|
|
|
|
|
+ (sessie-geauthenticeerd, geeft al server-side de favoriete
|
|
|
|
|
+ gelegenheden van de ingelogde gebruiker terug in 1 call). Zie
|
|
|
|
|
+ bijgewerkte "Drupal dingen"-lijst hierboven — **niet langer een
|
|
|
|
|
+ Bob-batch-item, Claude/een volgende sessie kan dit nu direct
|
|
|
|
|
+ bouwen.**
|
|
|
|
|
+Daarna 1 mechanische builder-taak geprobeerd (P2-7-bijvangst:
|
|
|
|
|
+`FavorietenAgendaTESTKANWEGCall` verwijderen via het API Calls-paneel)
|
|
|
|
|
+— **2x geprobeerd, 2x niet doorgezet naar een verse export/reload**,
|
|
|
|
|
+zelfde "ziet er opgeslagen uit maar bereikt de export niet"-patroon als
|
|
|
|
|
+elders in dit bestand, maar nu voor het eerst ook op het (verder
|
|
|
|
|
+betrouwbare) API Calls-paneel i.p.v. alleen de widget-tree/canvas. Zie
|
|
|
|
|
+de nieuwe blocker-notitie bij P2-7. Niet verder geprobeerd (staande
|
|
|
|
|
+regel: na 1-2 pogingen overdragen aan Bob), geen schade aangericht.
|
|
|
|
|
+
|
|
|
|
|
+**Vorige sessie (2026-08-14, eerste ronde, code-only — geen builder-UI
|
|
|
|
|
+gebruikt omdat Bob meldde gelijktijdig zelf in een andere sessie aan de
|
|
|
|
|
+slag te gaan —
|
|
|
gedeelde Chrome dus niet ingezet):** `ff-session-check.sh` toonde 20
|
|
gedeelde Chrome dus niet ingezet):** `ff-session-check.sh` toonde 20
|
|
|
bestanden ongecommit in `lib/`/`ios/`/`.gitignore`, exact overeenkomend
|
|
bestanden ongecommit in `lib/`/`ios/`/`.gitignore`, exact overeenkomend
|
|
|
met de al-bevestigde-maar-nooit-gecommitte P1-19/P1-20/P1-11/P2-7-
|
|
met de al-bevestigde-maar-nooit-gecommitte P1-19/P1-20/P1-11/P2-7-
|
|
@@ -483,20 +512,39 @@ toch al wachten op ander Drupal-werk hier verzamelen i.p.v. los oppakken
|
|
|
en Fill Color staat op `Color(0x0AFFFFFF)` i.p.v. wit (zoals de
|
|
en Fill Color staat op `Color(0x0AFFFFFF)` i.p.v. wit (zoals de
|
|
|
Else-tak). Functioneel al correct (Remove/Add-acties kloppen, bevestigd
|
|
Else-tak). Functioneel al correct (Remove/Add-acties kloppen, bevestigd
|
|
|
via export 2026-08-13) — puur cosmetisch restpunt.
|
|
via export 2026-08-13) — puur cosmetisch restpunt.
|
|
|
-- **P1-7 Tab 3 "Favoriete Gelegenheden" kan nog niet gebouwd worden met
|
|
|
|
|
- de bestaande API-calls — blokkeert op P0-7.** `EstablishmentInfoCall`
|
|
|
|
|
- (bedoeld om 1 gelegenheid op te halen via `nid`) geeft server-side
|
|
|
|
|
- HTTP 500 voor elke `nid` (zie P0-7, root cause al bevestigd
|
|
|
|
|
- Drupal-kant). `EstablishmentsCall` (de wél werkende lijst-endpoint)
|
|
|
|
|
- filtert alleen op categorie+plaats (`horcat`/`townid`) en heeft geen
|
|
|
|
|
- nid-filter, dus ongeschikt om een specifieke set favoriete nid's op te
|
|
|
|
|
- halen. Nodig: óf P0-7's Drupal-500 fixen (dan is `EstablishmentInfoCall`
|
|
|
|
|
- weer bruikbaar per nid in een loop), óf een nieuwe Drupal-view die een
|
|
|
|
|
- lijst van meerdere specifieke nid's in 1 call teruggeeft (efficiënter
|
|
|
|
|
- dan N losse calls per favoriet). **Claude: geen builder-stappen voor
|
|
|
|
|
- Tab 3 geven vóórdat dit is opgelost** — een eerdere instructie deze
|
|
|
|
|
- sessie (2026-08-13) om `EstablishmentInfoCall` te gebruiken voor Tab 3
|
|
|
|
|
- was hierdoor fout, tijdig gecorrigeerd vóór uitvoering.
|
|
|
|
|
|
|
+- **P1-7 Tab 3 "Favoriete Gelegenheden" — blokkering op P0-7 is stale,
|
|
|
|
|
+ taak is nu ontgrendeld (2026-08-14, Claude, code-audit).** Deze regel
|
|
|
|
|
+ ging ervan uit dat `EstablishmentInfoCall` nog HTTP 500 gaf — maar
|
|
|
|
|
+ P0-7 is inmiddels gefixt (zie boven, live bevestigd 2026-08-13) en
|
|
|
|
|
+ `EstablishmentInfoCall` werkt weer gewoon per `nid`. Bovendien bleek
|
|
|
|
|
+ bij het herlezen van `api_calls.dart` een **kant-en-klare, nog
|
|
|
|
|
+ efficiëntere route die niet eerder overwogen was:**
|
|
|
|
|
+ `FavorietenAgendaCall` (endpoint
|
|
|
|
|
+ `flutterfavorietenagenda.json?display_id=services_1`, sessie-cookie-
|
|
|
|
|
+ geauthenticeerd — dus server-side al gefilterd op de ingelogde
|
|
|
|
|
+ gebruiker, geen client-side nid-lijst nodig) geeft in **1 call**
|
|
|
|
|
+ precies `establishmentTitle`/`establishmentLogo`/`establishmentNid`
|
|
|
|
|
+ terug voor alle favoriete gelegenheden van de ingelogde gebruiker.
|
|
|
|
|
+ Bevestigd functioneel via P0-4/P1-18 (status 200 + echte data met
|
|
|
|
|
+ testaccount `bobcity`), en bevestigd **nergens in `lib/` aangeroepen**
|
|
|
|
|
+ (`grep` op `FavorietenAgendaCall` buiten `api_calls.dart`: 0
|
|
|
|
|
+ treffers) — dus volledig vrij om nu aan te sluiten. **Twee
|
|
|
|
|
+ realistische opties, geen van beide nog Drupal-werk nodig:**
|
|
|
|
|
+ 1. **Simpelste/efficiëntste:** `FavorietenAgendaCall` rechtstreeks in
|
|
|
|
|
+ een `ListView`/`GridView` tonen (titel + logo, tik → navigeer naar
|
|
|
|
|
+ `HorecagelegenheidCurrent(nid: ...)` voor de rest van de details).
|
|
|
|
|
+ 1 API-call ongeacht het aantal favorieten, geen client-side
|
|
|
|
|
+ nid-lijst-afhankelijkheid (werkt zelfs op een nieuw toestel vóór
|
|
|
|
|
+ `favorieteHorecaNids` lokaal gevuld is).
|
|
|
|
|
+ 2. **Meer werk, herbruikt de bestaande kaart-widget:** loop over de al
|
|
|
|
|
+ bestaande client-side `favorieteHorecaNids` (App State) en roep
|
|
|
|
|
+ `EstablishmentInfoCall` per nid aan — geeft alle velden die
|
|
|
|
|
+ `HorecagelegenheidoverzichtKaartWidget` nodig heeft (`adres`/
|
|
|
|
|
+ `plaats`/`categorie`, niet alleen titel/logo), dus visueel
|
|
|
|
|
+ consistent met de rest van de app, maar N calls i.p.v. 1.
|
|
|
|
|
+ **Claude: builder-stappen voor Tab 3 kunnen nu gewoon gegeven worden**
|
|
|
|
|
+ (optie 1 is de aanbevolen eerste keus qua efficiëntie) — dit hoeft niet
|
|
|
|
|
+ langer te wachten op een Drupal-sessie met Bob.
|
|
|
|
|
|
|
|
## P1 — snel na livegang
|
|
## P1 — snel na livegang
|
|
|
|
|
|
|
@@ -844,8 +892,19 @@ lokale/UI-kant + look&feel oppakken zolang die niet op Drupal wacht.
|
|
|
Geen van beide is deze sessie uitgevoerd (buiten scope voor
|
|
Geen van beide is deze sessie uitgevoerd (buiten scope voor
|
|
|
code-only werk, en vraagt eerst een ontwerpkeuze van Bob).
|
|
code-only werk, en vraagt eerst een ontwerpkeuze van Bob).
|
|
|
- **Tab 1 "Persoonlijke agenda"** (events in favoriete gemeente(n)) —
|
|
- **Tab 1 "Persoonlijke agenda"** (events in favoriete gemeente(n)) —
|
|
|
- nog niet uitgezocht of hier al een geschikte Drupal-call voor bestaat;
|
|
|
|
|
- vermoedelijk ook Drupal-afhankelijk, nog niet onderzocht.
|
|
|
|
|
|
|
+ **uitgezocht (2026-08-14, Claude, code-audit): geen nieuwe Drupal-call
|
|
|
|
|
+ nodig, bestaande calls volstaan al.** `UitgaanstabelCall`/
|
|
|
|
|
+ `UitgaanSliderCall` (`api_calls.dart`) accepteren allebei al een
|
|
|
|
|
+ `townid`-parameter (nu gebruikt door `PUitgaantabelKaartComponent`/
|
|
|
|
|
+ `PUitgaanSliderComponent` voor de huidige gekozen gemeente) — exact
|
|
|
|
|
+ wat hier nodig is. Bouwplan: loop over `favorieteGemeenteIds` (App
|
|
|
|
|
+ State, al gevuld zodra Tab 2 ooit favorieten heeft) en roep
|
|
|
|
|
+ `UitgaanstabelCall` per gemeente-id aan, resultaten samenvoegen tot
|
|
|
|
|
+ 1 lijst (of simpeler: hergebruik `PUitgaantabelKaartComponent` als los
|
|
|
|
|
+ blok per favoriete gemeente, met een kopje erboven = gemeentenaam).
|
|
|
|
|
+ Geen Drupal-wijziging nodig — wel afhankelijk van Tab 2's
|
|
|
|
|
+ favoriet-toggle-UI (zie hierboven), want zonder die blijft
|
|
|
|
|
+ `favorieteGemeenteIds` altijd leeg.
|
|
|
- **"Gebruiker"-tab** (wachtwoord wijzigen, uitloggen, account
|
|
- **"Gebruiker"-tab** (wachtwoord wijzigen, uitloggen, account
|
|
|
verwijderen — zie Bob's beslissing 3 hieronder) — nog niet opgepakt.
|
|
verwijderen — zie Bob's beslissing 3 hieronder) — nog niet opgepakt.
|
|
|
Uitloggen kan volledig lokaal (geen backend nodig, alleen
|
|
Uitloggen kan volledig lokaal (geen backend nodig, alleen
|
|
@@ -1499,6 +1558,29 @@ code).
|
|
|
(`FavorietenAgendaTESTKANWEGCall`)** — nog steeds aanwezig in
|
|
(`FavorietenAgendaTESTKANWEGCall`)** — nog steeds aanwezig in
|
|
|
`api_calls.dart`, nog steeds geen enkele live-referentie
|
|
`api_calls.dart`, nog steeds geen enkele live-referentie
|
|
|
(bevestigd). Losse, kleine restopruiming.
|
|
(bevestigd). Losse, kleine restopruiming.
|
|
|
|
|
+ - **⚠️ Poging door Claude (2026-08-14), 2x geprobeerd — nieuw
|
|
|
|
|
+ bevestigd blocker-patroon, geen wijziging aangebracht.** API
|
|
|
|
|
+ Calls-paneel → `FavorietenAgendaTESTKANWEG` → **Delete** →
|
|
|
|
|
+ bevestigingsdialoog ("Delete this API Call from the project?")
|
|
|
|
|
+ → **Delete**: de dialoog sluit netjes (geen freeze, i.t.t. de
|
|
|
|
|
+ bekende geneste-Set-Variable-freezes elders in `CLAUDE.md`), maar
|
|
|
|
|
+ de call **staat na een page-reload gewoon weer terug** in de
|
|
|
|
|
+ lijst — 2x gereproduceerd (2e poging zelfs met een expliciete
|
|
|
|
|
+ `Synced`-check vóór het navigeren). Een losse verse
|
|
|
|
|
+ `flutterflow export-code` ná de eerste poging bevestigde
|
|
|
|
|
+ hetzelfde: `class FavorietenAgendaTESTKANWEGCall` nog gewoon
|
|
|
|
|
+ aanwezig in `api_calls.dart`. **Dit is niet hetzelfde patroon als
|
|
|
|
|
+ de al bekende widget-tree-klikproblemen** (dit paneel is een
|
|
|
|
|
+ platte lijst, geen canvas/tree-coördinaten, en de Delete-flow zelf
|
|
|
|
|
+ werkt zichtbaar/klikbaar) — eerder een nieuw voorbeeld van het
|
|
|
|
|
+ bredere "ziet er opgeslagen uit in de builder-UI, bereikt nooit de
|
|
|
|
|
+ export"-patroon (zie P1-13/P0-3 punt 1 voor eerdere instanties).
|
|
|
|
|
+ **Kant-en-klaar voor Bob:** API Calls-paneel (linker sidebar-icoon
|
|
|
|
|
+ onder "Connect") → `FavorietenAgendaTESTKANWEG` → **Delete**-knop
|
|
|
|
|
+ onderaan → **Delete** bevestigen — zelfde stappen, kost hem
|
|
|
|
|
+ waarschijnlijk hetzelfde (nog niet getest of het bij hem wél
|
|
|
|
|
+ persisteert), maar dit hoort niet nog een 3e keer door Claude
|
|
|
|
|
+ geprobeerd te worden zonder nieuwe informatie.
|
|
|
- **Nog niét dood, wel ongebruikt — laten staan:** `FavorietenAgenda`
|
|
- **Nog niét dood, wel ongebruikt — laten staan:** `FavorietenAgenda`
|
|
|
(`FavorietenAgendaCall`) — geen enkele huidige live-referentie,
|
|
(`FavorietenAgendaCall`) — geen enkele huidige live-referentie,
|
|
|
maar dit is de call die P1-7's geplande "Persoonlijke
|
|
maar dit is de call die P1-7's geplande "Persoonlijke
|