ソースを参照

EventCurrent-bevindingen afgerond: blok 99 weg, inzicht naar CLAUDE.md

De organisator-fix is door een andere sessie doorgevoerd (getter, parameter en
Is-Set-guard staan erin, dart analyze 0 errors) en de categorie-vraag is
nagemeten: activiteiten krijgen gewoon categorielabels. Taak dus afgerond en
uit TASKS.md verwijderd.

Wat duurzaam is, staat nu in CLAUDE.md: EventCurrent is generiek voor beide
contenttypes, de c/g-veldparen die custom.module samenvoegt, navigeren met
nid + horecaid, en de waarschuwing dat eventLogog/eventWebsiteg misleidende
namen maar correcte paden hebben.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
bob 11 時間 前
コミット
fa85dbf592
2 ファイル変更34 行追加47 行削除
  1. 34 0
      CLAUDE.md
  2. 0 47
      TASKS.md

+ 34 - 0
CLAUDE.md

@@ -2508,6 +2508,40 @@ Gevonden 2026-09-15 op `EventCurrent`: `FlexibleSpaceBar.background` bevatte nog
 Elke andere pagina heeft het andersom (component ín de background, geen losse
 image) — dat is de norm; controleer dat bij een pagina die er "raar" uitziet.
 
+**`EventCurrent` is generiek voor evenement ÉN activiteit — de view voegt de twee
+veldensets samen.** Gemeten 2026-09-19. `EvenementCall` =
+`flutterflow_events.json?display_id=services_1&nid=X`, en die view filtert op
+`type IN (activity, go_out_event)`. `custom.module` voegt de **`c`/`g`-veldparen**
+samen tot één uniforme stream, zodat de app één set velden ziet:
+
+| activiteit | evenement | wordt |
+|---|---|---|
+| `logoc` (`field_logo2`) | `logog` (`field_logo4`) | `logo` |
+| `field_address1` | `field_address2` | `adres` |
+| `entreeprijsc` (`field_entrance_fee`) | `entreeprijsg` (`field_entrance`) | `entreeprijs` |
+| `entreetoelichtingc` (`field_admission_rules`) | `entreetoelichtingg` (`field_admission_notes`) | `entreetoelichting` |
+| `websitec` (`field_website1`) | `websiteg` (`field_website2`) | `website` |
+| `fotooc` (`field_pictures`) | `fotoog` (`field_picture2`) | `fotos` |
+
+Volledige respons (16 velden): `adres, body, categorie, contact, datum, datum_iso,
+entreeprijs, entreetoelichting, fotos, horecagelegenheidnid, logo, nid, organisator,
+plaats, title, website`.
+- **Navigeren naar `EventCurrent` doe je met twee parameters:** `nid` en `horecaid`
+  (= `$.horecagelegenheidnid`). Bij een activiteit is die leeg, en het horeca-blok
+  verdwijnt vanzelf — het zit achter
+  `Visibility(visible: widget!.horecaid != null && widget!.horecaid != '')`. Er is dus
+  **geen aparte detailpagina voor activiteiten nodig**, en geen conditie op de knop.
+- **`organisator` en `contact` zijn activiteit-velden**, `horecagelegenheidnid` is
+  evenement-specifiek. `organisator` is in de praktijk bijna altijd leeg (2 treffers op
+  10.000 records) omdat alleen door gebruikers aangemaakte stadsactiviteiten het vullen —
+  testnodes: **214439** en **214418**. Een lege weergave is daar dus geen bug.
+- **`categorie` werkt óók voor activiteiten**, ondanks dat de view op dat veld alleen de
+  vocabulary `go_out_event_category` aanvinkt (`field_act_categorie` deelt die
+  vocabulary). Nagemeten op nid 222133 en 222158 — geen actie nodig.
+- ⚠️ **Verwarrende maar correcte namen:** `EvenementCall.eventLogog` en `eventWebsiteg`
+  dragen nog de `g`-suffix van *gooutevent*, maar wijzen naar de samengevoegde
+  `$[0].logo` / `$[0].website`. Niet "repareren".
+
 **Event-foto's en zaak-foto's zijn twee losse velden uit twee losse endpoints —
 identieke plaatjes zijn contentdubbels, geen bug.** Event:
 `flutterflow_events.json` veld `fotos` (`$[0].fotos`). Zaak:

+ 0 - 47
TASKS.md

@@ -44,53 +44,6 @@ oppakken.
 ---
 #
 
-### 🆕 99 · `EventCurrent` is generiek voor evenement ÉN activiteit — één veld mist · Eigenaar: Bob (besluit) / Claude (uitvoering)
-
-**Uitgezocht en gemeten 2026-09-19** (sessie 'taken-B1-B7'), n.a.v. Bob's vraag.
-Vastgelegd omdat een andere sessie hier ook aan werkte.
-
-**Bevestigd: `EventCurrent` werkt voor beide contenttypes.**
-- `EvenementCall` = `flutterflow_events.json?display_id=services_1&nid=X`. De view
-  filtert op `type IN (activity, go_out_event)` — beide zitten erin.
-- Gemeten op een echte activiteit (nid `222158`): de view geeft 'm gewoon terug.
-- `custom.module` voegt de **`c`/`g`-veldparen** uit die view samen tot één uniforme
-  stream: `logoc`(field_logo2)/`logog`(field_logo4) → `logo`;
-  `field_address1`/`field_address2` → `adres`; `entreeprijsc`/`entreeprijsg` →
-  `entreeprijs`; `entreetoelichtingc`/`g` → `entreetoelichting`;
-  `websitec`/`websiteg` → `website`; `fotooc`/`fotoog` → `fotos`.
-- Het horeca-blok op `EventCurrent` zit al achter
-  `Visibility(visible: widget!.horecaid != null && widget!.horecaid != '')` — bij een
-  activiteit is `horecagelegenheidnid` leeg en verdwijnt het blok vanzelf.
-- **Volledige veldenlijst die de view levert (16):** `adres, body, categorie,
-  contact, datum, datum_iso, entreeprijs, entreetoelichting, fotos,
-  horecagelegenheidnid, logo, nid, organisator, plaats, title, website`.
-
-🔴 **Het gat: `organisator` wordt NERGENS in de app getoond.** Er is geen
-`eventOrganisator`-getter op `EvenementCall`, geen parameter op `EvenementInfo` en
-geen weergave. Het veld komt in de hele levende code alleen voor in
-`stadsactiviteit_create.dart` (invoer) en in één helptekst. Een gebruiker vult bij
-"Stadsactiviteit aanmaken" dus een organisator in die daarna onzichtbaar is.
-**Fix (klein):** getter `$[0].organisator` op `EvenementCall` → parameter op
-`EvenementInfo` → een `Text` met een **Is Set**-conditie (bij een evenement is het
-veld leeg). ✅ **Uitgevoerd 2026-09-19 na Bob's akkoord — zie het blok "99 / P2-46-deel ·
-`organisator` op `EventCurrent` — AF" verderop. Dit deel van taak 99 is daarmee dicht;
-alleen de kanttekening over `categorie`/`activity_category` hieronder staat nog open.**
-
-**Twee dingen die verdacht lijken maar in orde zijn (niet "fixen"):**
-- `EvenementCall.eventLogog` en `eventWebsiteg` dragen nog de oude `g`-suffix van
-  *gooutevent*, maar wijzen correct naar de samengevoegde `$[0].logo` /
-  `$[0].website`. Alleen de namen zijn historisch.
-- `EvenementInfo` krijgt 12 parameters en leest er 6 (`adres`, `plaats`,
-  `entreetoelichting`, `entreeprijs`, `website`, `contact`). De andere zes (`nid`,
-  `fotoos`, `title`, `date`, `categories`, `logo`) worden wél getoond, maar
-  rechtstreeks op `EventCurrent` i.p.v. in de Info-tab. Rommel, geen zichtbaar gat —
-  dit is het P1-44-patroon maar hier onschadelijk.
-
-⚠️ **Mogelijk nog te meten:** de view zet op het `categorie`-veld (`term_node_tid_1`)
-alléén de vocabulary `go_out_event_category` aan, niet `activity_category`. Of een
-activiteit daardoor een lege `categorie` krijgt is **niet** nagemeten — de gemeten
-activiteit had wel een categorie, maar dat bewijst niet dat het altijd goed gaat.
-
 ### 🆕 88 · "Mijn aanmeldingen" + kloonknop · deel A ✅ AF · deel B ✅ grotendeels af
 
 **Deel A (Drupal, Bob): AF** — beide endpoints draaien op productie, getest