فهرست منبع

128-E en 128-F voorbereid: verwijzing vanaf Favorieten + alle teksten

Nieuwe wens Bob: op Favorieten tab 2, onder de gemeentelijst, een tekst
die naar de nieuwsbrieven-tab linkt. Uitgezocht dat navigeren naar een
specifieke tab in dit project nog nergens gebeurt -- alle vier de
TabControllers staan op een hardcoded initialIndex 0. Recept opgeschreven
via een page parameter, met de waarschuwing dat het aan de parameter moet
hangen en niet aan een page state (TabController wordt in initState
aangemaakt, dus voor de On-Page-Load-keten).

Verder vastgelegd: de drie bestaande tabs hebben lege On Tap-acties, dus
de nieuwe tab heeft er ook geen nodig. Alle NL/EN-teksten staan klaar.
Tikfout in de Drupal-omschrijving is door Bob gefixt en geverifieerd.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
bob 15 ساعت پیش
والد
کامیت
07ed09f3c6
1فایلهای تغییر یافته به همراه53 افزوده شده و 6 حذف شده
  1. 53 6
      TASKS.md

+ 53 - 6
TASKS.md

@@ -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