|
|
@@ -33,7 +33,7 @@ Google Play en één doorloop die alleen Bob kan doen.
|
|
|
|
|
|
|
|
|
| **114** | Opruimen na de filterbalk-ombouw | **Eigenaar: Bob.** Restjes van taak 113 (afgerond 2026-09-20): (a) component-parameter **`parameter1`** op `FilterBalkComponent` ontstond automatisch bij *Convert to Component* en wordt nergens gelezen — mag weg, en daarmee ook de meegegeven waarde op Home en `PUitgaanPage`; (b) **page state `zoekOpen` op Home** is overbodig (de App State-versie stuurt alles); (c) App State **`zoekActief`** (Boolean) bestond al vóór deze taak en heeft **0 gebruikers**; (d) wegwerp: componenten **`FilterBalkKanweg`** en **`FilterBalkComponentCopy`** + pagina's **`homeCopy`** en **`PUitgaanPageCopy`**. Geen van alle blokkeert iets — `dart analyze` geeft 0 errors |
|
|
|
-| **128-B/C/D** | Nieuwsbrieven-blok op `mijnProfiel` | **Backend staat live en is getest; klaar om te bouwen** zodra de lopende FlutterFlow-sessie klaar is (Bob meldt dat). Blok + waarschuwing bij 0 gevolgde gemeenten + vertalingen. ⚠️ CSRF-token meegeven, zie het blok hieronder |
|
|
|
+| **128-B t/m F** | Nieuwsbrieven-tab op `mijnProfiel` | **Backend staat live en is getest; klaar om te bouwen** zodra de lopende FlutterFlow-sessie klaar is (Bob meldt dat). Vierde tab + waarschuwing bij 0 gevolgde gemeenten + verwijzing vanaf Favorieten + vertalingen (teksten staan klaar). ⚠️ CSRF-token meegeven, zie het blok hieronder |
|
|
|
|
|
|
## 👤 BOB — OPEN, in volgorde van wat de livegang blokkeert
|
|
|
|
|
|
@@ -304,12 +304,59 @@ als `bool` zonder null-check.
|
|
|
ik heb dus niet hard bewezen dát die 17 een lege mail krijgen — het beeld past
|
|
|
wel. Wie dit ooit exact wil weten, begint bij node 189237, de scheduler-parent.)*
|
|
|
|
|
|
-### 128-D · Vertalingen · Eigenaar: Claude
|
|
|
+### 128-E · Verwijzing op Favorieten → de nieuwsbrief-tab · Eigenaar: Claude
|
|
|
|
|
|
-Kop + waarschuwingstekst + "check je mail"-regel via het globe-icoontje.
|
|
|
-⚠️ De **omschrijvingen komen uit Drupal** en krijgen dus géén globe en geen
|
|
|
-EN-vertaling. Die van 36676 bevat bovendien een tikfout die Bob in Drupal kan
|
|
|
-meenemen: *"Deze wordt donderdagavond **verstuurt**"* -> *verstuurd*.
|
|
|
+**Wens Bob 2026-09-21.** Op `Favorieten`, tab 2 (*Favoriete gemeenten*), onder
|
|
|
+de lijst met gemeenten een tekst met een link naar de nieuwsbrieven-tab op
|
|
|
+`mijnProfiel`.
|
|
|
+
|
|
|
+**Technisch: dit is de enige plek in het project waar naar een SPECIFIEKE tab
|
|
|
+genavigeerd wordt — dat bestaat hier nog niet.** Alle vier de TabControllers
|
|
|
+(`mijnProfiel`, `home`, `favorieten`) staan op een hardcoded `initialIndex: 0`,
|
|
|
+en er is nergens een `animateTo`. Recept:
|
|
|
+1. Op `mijnProfiel` een **page parameter** toevoegen (bv. `tabIndex`, Integer,
|
|
|
+ optioneel, default 0).
|
|
|
+2. De TabBar-eigenschap **Initial Tab Index** daaraan binden.
|
|
|
+3. Op Favorieten een `Navigate To` → `mijnProfiel` met `tabIndex` = de index
|
|
|
+ van de nieuwsbrieven-tab.
|
|
|
+
|
|
|
+⚠️ **Bind aan de PAGE PARAMETER, niet aan een page state die je in On Page Load
|
|
|
+vult.** De `TabController` wordt in `initState` aangemaakt, dus vóór de
|
|
|
+On-Page-Load-keten (die draait in een `addPostFrameCallback`). Een page state is
|
|
|
+op dat moment nog leeg en de tab opent alsnog op 0 — hetzelfde patroon als bij
|
|
|
+de dropdown-valkuil elders in dit bestand.
|
|
|
+
|
|
|
+**Tekst (Bob's formulering, omgezet naar de je-vorm die de rest van de app
|
|
|
+gebruikt — zie de vraag hieronder):**
|
|
|
+- NL: *"Wil je elke week de uitgaansagenda op basis van je favoriete gemeenten
|
|
|
+ ontvangen? Zet hier de nieuwsbrief aan!"*
|
|
|
+- EN: *"Want the weekly agenda for your favourite municipalities by email? Turn
|
|
|
+ the newsletter on here!"*
|
|
|
+
|
|
|
+### 128-F · Teksten en vertalingen · Eigenaar: Claude
|
|
|
+
|
|
|
+Voorbereid, klaar om in te voeren via het globe-icoontje:
|
|
|
+
|
|
|
+| Plek | NL | EN |
|
|
|
+|---|---|---|
|
|
|
+| Tabnaam | Nieuwsbrieven | Newsletters |
|
|
|
+| Bij `status == 2` | Check je mail om je inschrijving te bevestigen | Check your email to confirm your subscription |
|
|
|
+| Waarschuwing 0 gemeenten (128-C) | Je volgt nog geen gemeenten. Deze nieuwsbrief blijft leeg tot je er minstens één kiest. | You are not following any municipalities yet. This newsletter stays empty until you choose at least one. |
|
|
|
+| Knop bij die waarschuwing | Gemeenten kiezen | Choose municipalities |
|
|
|
+| Verwijzing op Favorieten (128-E) | zie hierboven | zie hierboven |
|
|
|
+
|
|
|
+⚠️ De **omschrijvingen van de nieuwsbrieven komen uit Drupal** en krijgen dus
|
|
|
+géén globe en geen EN-vertaling. Dat is een bewuste beperking.
|
|
|
+
|
|
|
+### Nuttig om te weten bij het bouwen
|
|
|
+
|
|
|
+- **De drie bestaande tabs van `mijnProfiel` hebben LEGE On Tap-acties**
|
|
|
+ (`[() async {}, () async {}, () async {}][i]()`). Er is dus geen per-tab
|
|
|
+ fetch-patroon om na te volgen: de `FutureBuilder`s staan gewoon in de
|
|
|
+ `TabBarView` en vuren zodra de tab gebouwd wordt. De nieuwsbrieven-tab heeft
|
|
|
+ dus géén On Tap-actie nodig.
|
|
|
+- De tikfout in de omschrijving van tid 36676 is **gefixt** (Bob 2026-09-21):
|
|
|
+ er staat nu "donderdagavond verstuurd".
|
|
|
|
|
|
### Bevinding terzijde — geen taak
|
|
|
|