Explorar el Código

P2-46: Bezorgen-sectie af — laatste guard gezet en beide gevallen getest

Guard op TextBetaalKop gezet via de korte route (Predefined Path +
Available Options "Is Set and Not Empty", geen Single Condition nodig).
Geverifieerd op nid 157070 (alles gevuld) en 52981 (geen bezorggebied:
"Bezorgt in" verdwijnt). dart analyze 0 errors.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
bob hace 1 día
padre
commit
920764f414
Se han modificado 1 ficheros con 34 adiciones y 26 borrados
  1. 34 26
      TASKS.md

+ 34 - 26
TASKS.md

@@ -1034,32 +1034,40 @@ gekoppeld in de view — het wordt alleen zelden ingevuld.
 sinds deze sessie op **214439** i.p.v. 206292. Dat is bewust (zie de valkuil over
 type-inferentie in `CLAUDE.md`) — laat 'm zo staan.
 
-### P2-46-restant · Bezorgen-sectie: nog één guard · Eigenaar: Bob (builder)
-
-**Af en export-geverifieerd (2026-09-19):** volgorde, de link
-(`launchURL(establshmentBestellink(...))`), beide koppen, en de guard op
-**`TextBezorgtInKop`** — die staat nu goed:
-`if (establshmentBezorgtin(...) != null && (establshmentBezorgtin(...))!.isNotEmpty)`.
-`dart analyze`: 0 errors, en de `unnecessary_null_comparison` op die regel is weg.
-
-**Nog één ding: `TextBetaalKop` ("Betaalmogelijkheden") heeft nog géén Visibility-guard** —
-in de export staat er een kale `Text(` zonder `if (` ervoor. Zelfde recept als bij
-"Bezorgt in", maar met veld **`establishmentbezorgbetaalopties`**:
-Visibility → Conditional → First Value potlood → *EstablishmentInfo Response* → JSON Body →
-Predefined Path → `establishmentbezorgbetaalopties` → **Available Options: No Further
-Changes** → operator **Is Set and Not Empty** → géén Second Value → Confirm.
-
-**Controle:** in een verse export moet vóór `'paqq93tp' /* Betaalmogelijkheden */` een
-`if (… != null && …isNotEmpty)` staan.
-
-*(De drie resterende `unnecessary_null_comparison`-waarschuwingen in dit bestand — regels
-1061, 1367, 1561 — zijn ouder en onschuldig: dat zijn de per-item-guards op de `Wrap`s,
-waar het `!= ''`-deel nog wel werk doet.)*
-
-**Cosmetisch, jouw keuze:** de link mist de onderstreping van *Menukaart*/*Website*, en er
-staat "Online **B**estellen" met hoofdletter. `kvk` blijft bewust onzichtbaar.
-**Testen:** `horecaid=157070` (Lotus, alles gevuld), `horecaid=52981` (Delhi Indian, geen
-bezorggebied).
+### ✅ P2-46 · Bezorgen-sectie op `EventCurrent` — AF 2026-09-19 (Bob + Claude)
+
+Op het toestel (profile, emulator-5554) en in een verse export geverifieerd; `dart analyze`
+**0 errors**. Zo leest de sectie nu op **nid 157070** (Lotus, Enkhuizen — alle bezorgvelden
+gevuld):
+
+```
+Bezorgen
+Bezorgtijden: vanaf 17 uur
+Bezorgkosten: 2 euro
+Online Bestellen            ← link, launchURL(establshmentBestellink)
+Afhaal  Bezorgen
+Minimale bestelling: 20 euro
+Bezorgt in
+Enkhuizen  Bovenkarspel
+Betaalmogelijkheden
+Contant
+Bitcoin  Bitcoin Cash
+```
+
+En de tegenproef op **nid 52981** (Delhi Indian — bezorgt wel, maar heeft geen
+bezorggebied): daar is "Bezorgt in" weg en staat "Betaalmogelijkheden / Pin" er netjes
+onder. Beide koppen hebben nu een echte guard
+(`… != null && …isNotEmpty` op `establshmentBezorgtin` resp.
+`establishmentbezorgbetaalopties`).
+
+**Hoe die guard het snelst te zetten is** (nuttig voor een volgende lijst-kop): je hebt
+géén *Single Condition* nodig. Visibility → Conditional → bron **EstablishmentInfo
+Response** → JSON Body → Predefined Path → het lijstveld → tweede **Available Options**
+→ **Is Set and Not Empty** → Confirm. Dat levert direct een Boolean op. Ging in één keer
+goed; de Single-Condition-route is juist de fragiele (zie `CLAUDE.md`).
+
+**Bewust zo gelaten:** `kvk` blijft onzichtbaar; de link mist de onderstreping die
+*Menukaart*/*Website* wel hebben en er staat "Online **B**estellen" met hoofdletter.
 
 ## 🗄 Drupal / views — open