|
|
@@ -451,13 +451,63 @@ nl-NL` (betrouwbaardere per-app-locale-override dan de systeembrede
|
|
|
emulator niet altijd doorwerkte zonder reboot) kwam de tekst meteen
|
|
|
terug — bevestigt dat dit puur een vertaalprobleem is, geen widget-bug.
|
|
|
|
|
|
-**P1-7 · Eigenaar: Bob.** Account/profielscherm (wachtwoord wijzigen,
|
|
|
-uitloggen, account verwijderen). Bovenop de login/favorieten-P0-basis.
|
|
|
-Account verwijderen heeft mogelijk AVG-implicaties aan Drupal-kant.
|
|
|
-**Let op prioriteit:** dit is niet alleen "nice to have" — Apple's App
|
|
|
-Store Review Guideline 5.1.1(v) eist dat een app die accountaanmaak
|
|
|
-aanbiedt ook **in-app accountverwijdering** aanbiedt; zonder dit
|
|
|
-scherm is een iOS-store-submissie een blokkade, niet alleen P1.
|
|
|
+**P1-7 · Eigenaar: Claude — bezig (2026-08-09).** Favorieten-pagina +
|
|
|
+profielscherm — Bob heeft de scope + designbeslissingen 2026-08-09
|
|
|
+gegeven, absorbeert ook het oude P2-8 (gemeente-favoriet). **Belangrijke
|
|
|
+bevinding vooraf (code-audit, niet eerder gedocumenteerd):** de
|
|
|
+3-tabblad-structuur op `FavorietenWidget` bestaat al (`Persoonlijke
|
|
|
+agenda`/`Favoriete gemeenten`/`Favoriete Gelegenheden`), maar **alle 3
|
|
|
+tabs zijn pure placeholder-tekst — geen enkele API-call/FutureBuilder**.
|
|
|
+Én: het hartje op zowel de horeca-overzichtskaart als de
|
|
|
+horeca-detailpagina is een kale `print('IconButtonFavoriet pressed
|
|
|
+...')`-stub (`horecagelegenheidoverzicht_kaart_widget.dart:334`,
|
|
|
+`horecagelegenheid_current_widget.dart:364`) — **er bestaat nergens in
|
|
|
+de codebase een POST/toggle-call om een favoriet daadwerkelijk op te
|
|
|
+slaan**, alleen de GET-only `FavorietenAgendaCall` (ondanks de naam:
|
|
|
+geeft favoriete horecagelegenheden terug, geen agenda/events). De
|
|
|
+eerdere P0-4-aantekening "hartje... af" klopte dus alleen voor het
|
|
|
+zichtbare icoon, niet voor de functionaliteit erachter.
|
|
|
+
|
|
|
+**Bob's beslissingen (2026-08-09):**
|
|
|
+1. Favorieten (zowel horeca als gemeenten) worden **Drupal-gesynchroniseerd**,
|
|
|
+ niet puur lokaal — sync bij app-start én direct na elke
|
|
|
+ toevoegen/verwijderen-actie. Lokale opslag (`FFAppState`/
|
|
|
+ secureStorage) blijft daarnaast nodig als cache/snelle UI-state.
|
|
|
+2. "Persoonlijke agenda" (tab 1) = events in de door de gebruiker
|
|
|
+ **gefavoriete gemeente(n)** (niet de her-toegekende naam "agenda" op
|
|
|
+ de bestaande horeca-GET-call — dat is een aparte, nog te bouwen
|
|
|
+ view).
|
|
|
+3. "Gebruiker"-tab = het oude P1-7-scope (wachtwoord wijzigen,
|
|
|
+ uitloggen, account verwijderen), nu als tab i.p.v. aparte pagina.
|
|
|
+ Account verwijderen heeft mogelijk AVG-implicaties aan Drupal-kant.
|
|
|
+ **Let op prioriteit:** Apple's App Store Review Guideline 5.1.1(v)
|
|
|
+ eist in-app accountverwijdering voor een app met accountaanmaak —
|
|
|
+ zonder dit scherm blokkeert een iOS-submissie, niet alleen P1.
|
|
|
+
|
|
|
+**Open vraag aan Bob (blokkeert het schrijf-/sync-gedeelte):** bestaat
|
|
|
+er al een Drupal-endpoint om een favoriet (horeca of gemeente) toe te
|
|
|
+voegen/verwijderen voor een ingelogde gebruiker (bv. Flag-module of een
|
|
|
+custom Services-resource), of moet dat nog gebouwd worden? Zonder
|
|
|
+endpoint-naam/-vorm kan Claude alleen de lokale kant (state, UI,
|
|
|
+hartje-toggle-optimistic-update, logout) bouwen, niet de sync.
|
|
|
+**Onbelemmerd te bouwen, ongeacht antwoord:** `FFAppState`-velden voor
|
|
|
+lokale favorieten-lijsten (gemeenten + horeca), hartje-toggle die lokaal
|
|
|
+al werkt (optimistic UI), uitloggen op de Gebruiker-tab (geen backend
|
|
|
+nodig — alleen `FFAppState`-sessievelden wissen + terug naar Login).
|
|
|
+
|
|
|
+**Geblokkeerd voor Claude (2026-08-09), klein klusje voor Bob:** de
|
|
|
+"+ Add App State Variable"-knop (`?tab=appValues&appValuesTab=state`)
|
|
|
+reageert niet op Claude's klikken — geen dialoog, geen nieuwe rij, 6+
|
|
|
+pogingen zonder resultaat (zie `CLAUDE.md` voor details). **Bob: graag
|
|
|
+deze 2 App State-velden zelf toevoegen** (kost seconden in eigen
|
|
|
+browser):
|
|
|
+1. `favorieteGemeenteIds` — type `List<String>` (gemeente-ID's, zelfde
|
|
|
+ ID-vorm als `gemeenteSelectId`/`gemeentelijst`), Persisted: true.
|
|
|
+2. `favorieteHorecaNids` — type `List<String>` (horeca-`nid`'s, zelfde
|
|
|
+ vorm als `FavorietenAgendaCall.establishmentNid`), Persisted: true.
|
|
|
+
|
|
|
+Zodra deze 2 velden bestaan kan Claude verder (hartje-toggle, tab-content
|
|
|
+vullen) — de rest van de bouw hangt hier niet losstaand van vast.
|
|
|
|
|
|
**P1-12 · Eigenaar: Bob (builder, gegenereerde code niet lokaal te
|
|
|
fixen).** `EventCurrent` crasht direct (Null check operator used on a
|
|
|
@@ -795,11 +845,7 @@ code).
|
|
|
wordt nergens meer aangeroepen — dode API-call-definitie (gevonden
|
|
|
bij de P1-10-performance-audit 2026-08-05).
|
|
|
|
|
|
-**P2-8 · Eigenaar: Onbepaald.** Hartje-tap-actie op de getoonde
|
|
|
-gemeente-/provincienaam (favoriete plaats maken/markeren) — losgemaakt
|
|
|
-van P0-3 (2026-08-05, Bob: te veel voor de eerste release). Naam wordt
|
|
|
-inmiddels al getoond op de meeste pagina's via `HeaderButtonsComponent`
|
|
|
-(zie P0-3); dit punt is puur de hartje-tap-functionaliteit erbovenop.
|
|
|
-Hing af van de `FavorietenAgenda`-403-fout — die bleek onderdeel van
|
|
|
-de login-sessie-bug, root cause gevonden + functioneel gefixed
|
|
|
-(2026-08-09, zie P0-4/P1-18). Kan nu opgepakt worden.
|
|
|
+**P2-8 · Opgegaan in P1-7 (2026-08-09).** Hartje-tap op gemeente-/
|
|
|
+provincienaam om te favorieten is nu onderdeel van de bredere
|
|
|
+Favorieten-pagina/profielscherm-taak — zie P1-7 hierboven voor scope en
|
|
|
+status.
|