|
@@ -26,7 +26,7 @@ doen.
|
|
|
|
|
|
|
|
| # | Taak | Kort |
|
|
| # | Taak | Kort |
|
|
|
|---|---|---|
|
|
|---|---|---|
|
|
|
-| **G0.6** | Play-screenshots | Eerste set van 10 klaar (`play-screenshots.zip`). Eén shot moet over zodra *Show Test Ads* uit staat |
|
|
|
|
|
|
|
+| **G0.6** | Play-screenshots | ✅ Nieuwe set van 10 klaar (2026-09-19 avond). Alleen `tel-04-horeca.png` moet over zodra *Show Test Ads* uit staat |
|
|
|
| **nameten** | Na het services-script op productie | `node/<nid>.json` moet 403/404 geven i.p.v. 200 met 46 velden |
|
|
| **nameten** | Na het services-script op productie | `node/<nid>.json` moet 403/404 geven i.p.v. 200 met 46 velden |
|
|
|
|
|
|
|
|
## 👤 BOB — OPEN, in volgorde van wat de livegang blokkeert
|
|
## 👤 BOB — OPEN, in volgorde van wat de livegang blokkeert
|
|
@@ -37,7 +37,7 @@ doen.
|
|
|
| **G** | Google Play-checklist G0–G4 | Volledige checklist hieronder |
|
|
| **G** | Google Play-checklist G0–G4 | Volledige checklist hieronder |
|
|
|
| **65** | De **ingelogde** doorloop | Kernfuncties zijn nooit op een release-build getest. Claude kan dit niet (geen wachtwoorden) |
|
|
| **65** | De **ingelogde** doorloop | Kernfuncties zijn nooit op een release-build getest. Claude kan dit niet (geen wachtwoorden) |
|
|
|
| **AdMob** | `Show Test Ads` uit | App Settings → AdMob. Wacht op de Google-registratie |
|
|
| **AdMob** | `Show Test Ads` uit | App Settings → AdMob. Wacht op de Google-registratie |
|
|
|
-| **P1-17** | Laatste vertaling(en) | `1k52hayg` "Date end" → `End date`. Verder is de levende code schoon |
|
|
|
|
|
|
|
+| **P1-17** | Laatste vertaling(en) | ✅ `1k52hayg` → `End date` en `22xoyrqe` → `Menu` gedaan (2026-09-19 avond, export-geverifieerd). Rest: `tcyc3idz` zodra "Mijn aanmeldingen" af is |
|
|
|
| **Drupal** | taak 56-restant · taak 28/109 | Cron-description op "xx days" ✅ gedaan · events zonder categorie gaat via de importer |
|
|
| **Drupal** | taak 56-restant · taak 28/109 | Cron-description op "xx days" ✅ gedaan · events zonder categorie gaat via de importer |
|
|
|
| **Bij livegang** | Schakelaars en opruimklussen | Eigen blok hieronder |
|
|
| **Bij livegang** | Schakelaars en opruimklussen | Eigen blok hieronder |
|
|
|
|
|
|
|
@@ -96,27 +96,27 @@ die twee niet meer los afwerken. Vink hier af.*
|
|
|
📁 **Tekst staat in `~/uk-play-assets/play-teksten.md`** (gered uit een
|
|
📁 **Tekst staat in `~/uk-play-assets/play-teksten.md`** (gered uit een
|
|
|
vluchtige sessie-scratchpad, 2026-09-19 — stond nergens duurzaam).
|
|
vluchtige sessie-scratchpad, 2026-09-19 — stond nergens duurzaam).
|
|
|
⏳ Kan pas ingevoerd worden ná G1.1 (de app moet bestaan in Play Console).
|
|
⏳ Kan pas ingevoerd worden ná G1.1 (de app moet bestaan in Play Console).
|
|
|
-- [x] **G0.6 — ✅ EERSTE SET KLAAR (Claude, 2026-09-19).** 10 stuks uit een echte
|
|
|
|
|
- `--release`-build (export mét `--include-assets`, `flutter_launcher_icons`
|
|
|
|
|
- vooraf): 6 telefoon (1080x1794), 2x 7" tablet (1200x1805), 2x 10" tablet
|
|
|
|
|
- (2560x1504). Systeembalk weggecropt; alle formaten binnen Play's eisen
|
|
|
|
|
- (320-3840 px, ratio onder 2:1).
|
|
|
|
|
- 📁 **Staan nu duurzaam in `~/uk-play-assets/screenshots/`** (+ de zip ernaast);
|
|
|
|
|
- ze stonden alleen in een sessie-scratchpad onder `/tmp` en waren een reboot
|
|
|
|
|
- kwijt geweest. Gered 2026-09-19.
|
|
|
|
|
- 🔴 **De set is NIET uploadbaar zoals hij is — drie defecten, gemeten 2026-09-19:**
|
|
|
|
|
- 1. **`tab10-01-home.png` en `tab10-02-menu.png` zijn byte-identiek**
|
|
|
|
|
- (md5 `b34debb5…`, beide de Home-pagina). De menushot is nooit geland, dus
|
|
|
|
|
- er is feitelijk **één** unieke 10"-tabletscreenshot. Play wil er meer dan
|
|
|
|
|
- één per formaat; controleer het exacte minimum in Play Console.
|
|
|
|
|
- 2. **`tel-04-horeca.png`** toont de AdMob-**testadvertentie** ("This is a
|
|
|
|
|
- 320x50 test ad"). Zet *Show Test Ads* uit (staat op de livegang-lijst).
|
|
|
|
|
- 3. **`tel-05-zaak.png`** toont een zaak met een **lege agenda**; klopt
|
|
|
|
|
- inhoudelijk, maar een zaak mét agenda oogt sterker.
|
|
|
|
|
- 🔴 **En: álle tien tonen de koptekst `Amsterdam (gemeente)`** — precies wat
|
|
|
|
|
- taak 103 aan het repareren is. Elke shot bevat die header, dus **de hele set
|
|
|
|
|
- moet opnieuw zodra 103 gereed is**. Niet uploaden vóór die tijd.
|
|
|
|
|
- ➡️ Eén herschietronde ná 103 + *Show Test Ads* uit dekt alle vier de punten.
|
|
|
|
|
|
|
+- [x] **G0.6 — ✅ NIEUWE SET KLAAR (Claude, 2026-09-19 avond).** Alle tien opnieuw
|
|
|
|
|
+ geschoten uit een verse `--release`-build (export mét `--include-assets`,
|
|
|
|
|
+ `flutter_launcher_icons` vooraf, x64 voor de AVD's), uitgelogd (`pm clear`),
|
|
|
|
|
+ Nederlandse app-locale: 6 telefoon (1080x1731), 2x 7" tablet (1200x1812, AVD
|
|
|
|
|
+ tijdelijk op `wm size 1200x1920` / density 240), 2x 10" tablet (2560x1456).
|
|
|
|
|
+ Status- én navigatiebalk weggecropt; alle ratio's onder 2:1.
|
|
|
|
|
+ 📁 `~/uk-play-assets/screenshots/` + `play-screenshots.zip`; de oude set staat
|
|
|
|
|
+ in `screenshots-oud-2026-09-19-middag/` (Claude gooit niets weg).
|
|
|
|
|
+ **Opgelost t.o.v. de eerste set:** header toont *Heel Nederland* i.p.v.
|
|
|
|
|
+ "Amsterdam (gemeente)"; de twee 10"-shots zijn nu echt verschillend (Home +
|
|
|
|
|
+ menu, md5 gecheckt); `tel-05-zaak.png` is het Bimhuis (nid 75459) mét
|
|
|
|
|
+ gevulde agenda.
|
|
|
|
|
+ 🔴 **Nog één keer over: `tel-04-horeca.png`** toont nog de AdMob-testadvertentie
|
|
|
|
|
+ (`showsTestAd: true` in de export). Zodra *Show Test Ads* uit staat schiet
|
|
|
|
|
+ Claude die ene opnieuw — dat is 2 minuten werk, geen nieuwe build nodig
|
|
|
|
|
+ (deep link `horecagelegenhedenOverzichtCurrent?plaats=28695`).
|
|
|
|
|
+ 🔸 **Opgevallen, geen blokker:** op de detailpagina's (`tel-02-event`,
|
|
|
|
|
+ `tel-05`/`06-zaak`) toont de header **Amsterdam** (de default
|
|
|
|
|
+ `gemeenteSelectId`), terwijl Home *Heel Nederland* zegt. Voor een event in
|
|
|
|
|
+ Steenwijk oogt dat wat vreemd; als je dat consequent wilt, is dat een aparte
|
|
|
|
|
+ taak op de header-keten.
|
|
|
- [ ] **G0.7 — Feature graphic 1024×500** laten maken (grafisch werk, Bob).
|
|
- [ ] **G0.7 — Feature graphic 1024×500** laten maken (grafisch werk, Bob).
|
|
|
|
|
|
|
|
#
|
|
#
|
|
@@ -234,13 +234,9 @@ kernfuncties: inloggen · hartje op een zaakpagina (aan én uit) · Favorieten m
|
|
|
inhoud, alle vier de tabs · gemeente volgen · evenement aanmaken tot en met
|
|
inhoud, alle vier de tabs · gemeente volgen · evenement aanmaken tot en met
|
|
|
indienen · Mijn profiel inclusief uitloggen. Een Play-reviewer logt straks wél in.
|
|
indienen · Mijn profiel inclusief uitloggen. Een Play-reviewer logt straks wél in.
|
|
|
|
|
|
|
|
-**65c · Favorieten toont uitgelogd een leeg scherm** — de standaardtab rendert
|
|
|
|
|
-niets: geen melding, geen uitleg, geen inlogknop. De uitleg staat op tab 4, die
|
|
|
|
|
-buiten beeld valt in de scrollende tabbalk.
|
|
|
|
|
-⚠️ **Opgepakt in een andere sessie** (als taak 107). De Empty List Widget-sectie
|
|
|
|
|
-biedt alleen *Image* en *Component*, geen *Text* — dus het moet via een klein
|
|
|
|
|
-component of via een `Text` met een Visibility-conditie op `userSessionid`
|
|
|
|
|
-(*Is Not Set or Is Empty*).
|
|
|
|
|
|
|
+**65c · ✅ af** (nagemeten 2026-09-19 avond in een verse export): Favorieten toont
|
|
|
|
|
+uitgelogd nu een uitlegtekst met inlogknop, achter een guard op `userSessionid`
|
|
|
|
|
+(sleutel `zxbjvxzq`). Gebouwd in een andere sessie als taak 107.
|
|
|
|
|
|
|
|
**65e · "Datum" blijft Nederlands in de Engelse modus** — het label komt uit de
|
|
**65e · "Datum" blijft Nederlands in de Engelse modus** — het label komt uit de
|
|
|
`valueOrDefault`-default `'Datum'` en is dus geen vertaalsleutel. Hoort bij P1-17.
|
|
`valueOrDefault`-default `'Datum'` en is dus geen vertaalsleutel. Hoort bij P1-17.
|
|
@@ -378,9 +374,9 @@ er precies vijf aangevinkt staan — dan weet je dat het zo bedoeld is.
|
|
|
de custom function `dISABLEdatumVoorApi`. Moet in de **builder**, niet met
|
|
de custom function `dISABLEdatumVoorApi`. Moet in de **builder**, niet met
|
|
|
`git rm` — anders staat alles na de volgende export terug.
|
|
`git rm` — anders staat alles na de volgende export terug.
|
|
|
|
|
|
|
|
-- **P1-17 · laatste vertaling(en).** In levende code is nog één echt gat:
|
|
|
|
|
- `1k52hayg` staat op `Date end` en zou `End date` moeten zijn. Verder hoort er
|
|
|
|
|
- nog iets bij zodra "Mijn aanmeldingen" af is (`tcyc3idz` is nu een lege NL-tekst).
|
|
|
|
|
|
|
+- **P1-17 · laatste vertaling(en).** `1k52hayg` → `End date` en `22xoyrqe` →
|
|
|
|
|
+ `Menu` zijn gedaan (2026-09-19 avond). Rest: `tcyc3idz` zodra "Mijn
|
|
|
|
|
+ aanmeldingen" af is (nu een lege NL-tekst).
|
|
|
⚠️ Tel geen sleutels mee waar EN == NL terwijl dat correct is (`Select...`,
|
|
⚠️ Tel geen sleutels mee waar EN == NL terwijl dat correct is (`Select...`,
|
|
|
`Website`, `Facebook`, `Media`, `", "` — identiek in beide talen).
|
|
`Website`, `Facebook`, `Media`, `", "` — identiek in beide talen).
|
|
|
|
|
|
|
@@ -411,9 +407,10 @@ KANWEG-API-calls · de opruimronde van 7 dode kopieën.)*
|
|
|
met spacing 6 ("Westerstraat 95 Enkhuizen"), telefoon, e-mail, de links-`Wrap`
|
|
met spacing 6 ("Westerstraat 95 Enkhuizen"), telefoon, e-mail, de links-`Wrap`
|
|
|
(Menukaart/Website/Facebook/Instagram/X/Twitter/Op Uitgaanskrant.com) en `TextInhoud`
|
|
(Menukaart/Website/Facebook/Instagram/X/Twitter/Op Uitgaanskrant.com) en `TextInhoud`
|
|
|
renderen allemaal goed.
|
|
renderen allemaal goed.
|
|
|
- 🔸 **Wel opgevallen:** het losse label **"Contact"** staat links náást die `Wrap` en botst
|
|
|
|
|
- visueel met de tweede regel ervan zodra de links wrappen — het lijkt tussen de regels te
|
|
|
|
|
- hangen. Zie de screenshot van 2026-09-19. Cosmetisch, nog niet aangepakt.
|
|
|
|
|
|
|
+ ✅ **"Contact"-label gefixt (2026-09-19 avond):** de Row staat nu op Cross Axis
|
|
|
|
|
+ Alignment *start* met Items Spacing 8, dus het label lijnt uit met de eerste regel
|
|
|
|
|
+ links i.p.v. tussen de regels te hangen. Export: `crossAxisAlignment: start` +
|
|
|
|
|
+ `.divide(SizedBox(width: 8.0))`.
|
|
|
- ✅ **`ColumnBezorgen` mét echte data bekeken en grotendeels opgeknapt (2026-09-19).**
|
|
- ✅ **`ColumnBezorgen` mét echte data bekeken en grotendeels opgeknapt (2026-09-19).**
|
|
|
**Testzaak: nid `157070`** (Chinees-Indische restaurant Lotus, Enkhuizen) — die heeft
|
|
**Testzaak: nid `157070`** (Chinees-Indische restaurant Lotus, Enkhuizen) — die heeft
|
|
|
álle bezorgvelden gevuld (`bezorgtijden`, `bestellink`, `bezorgkosten`, `minimaleorder`,
|
|
álle bezorgvelden gevuld (`bezorgtijden`, `bestellink`, `bezorgkosten`, `minimaleorder`,
|
|
@@ -429,8 +426,8 @@ KANWEG-API-calls · de opruimronde van 7 dode kopieën.)*
|
|
|
`Textbezorg-minorder`** (`establishmentMinimaleorder is set/non-empty`) — die had er géén,
|
|
`Textbezorg-minorder`** (`establishmentMinimaleorder is set/non-empty`) — die had er géén,
|
|
|
dus met label erbij zou hij anders "Minimale bestelling: null" tonen; en **Wrap-spacing 8**
|
|
dus met label erbij zou hij anders "Minimale bestelling: null" tonen; en **Wrap-spacing 8**
|
|
|
op de drie lijsten, zodat de waarden niet meer aan elkaar plakken.
|
|
op de drie lijsten, zodat de waarden niet meer aan elkaar plakken.
|
|
|
-- `TextInhoud` staat onderaan `ColumnInfo` (na het Contact-blok), Body Medium, zonder Max Lines — overweeg padding-top 8 en een kop "Over deze zaak".
|
|
|
|
|
-- ✅ EN-vertaling van "Menukaart" (`22xoyrqe`) gecontroleerd: staat er als **`Menucard`**. Gevuld dus, maar geen idiomatisch Engels — *Menu* zou het zijn. Jouw keuze (hoort verder bij P1-17).
|
|
|
|
|
|
|
+- ✅ `TextInhoud` heeft nu een kop **"Over deze zaak"** (EN *About this venue*, sleutel `rko8u7a5`, Body Medium 600) in een nieuwe `ColumnInhoud` met padding-top 8 (2026-09-19 avond, export-geverifieerd).
|
|
|
|
|
+- ✅ EN-vertaling van "Menukaart" (`22xoyrqe`) staat nu op **`Menu`** (2026-09-19 avond).
|
|
|
- Niet getoond: `kvk` (zaak). Bewust overgeslagen.
|
|
- Niet getoond: `kvk` (zaak). Bewust overgeslagen.
|
|
|
- ✅ **`organisator` wordt nu wél getoond (2026-09-19, Bob's besluit, af en op toestel geverifieerd).**
|
|
- ✅ **`organisator` wordt nu wél getoond (2026-09-19, Bob's besluit, af en op toestel geverifieerd).**
|
|
|
Zie het eigen blok hieronder; taak 99 kan hiermee dicht.
|
|
Zie het eigen blok hieronder; taak 99 kan hiermee dicht.
|
|
@@ -475,35 +472,10 @@ alleen doen als het in de praktijk hindert.**
|
|
|
(6x `.take(1000)`), de routes wijzen naar `...Current`, en de twee lege
|
|
(6x `.take(1000)`), de routes wijzen naar `...Current`, en de twee lege
|
|
|
`TextField`-placeholders zijn opgeruimd. **F is geschrapt** op Bob's verzoek.
|
|
`TextField`-placeholders zijn opgeruimd. **F is geschrapt** op Bob's verzoek.
|
|
|
|
|
|
|
|
-**Nog open: B — categoriedropdown per tab. ⚠️ Opgepakt in een andere sessie.**
|
|
|
|
|
-Niet zelf aan beginnen.
|
|
|
|
|
-
|
|
|
|
|
-Wat daarvoor al klaarstaat:
|
|
|
|
|
-- `horecacategorieen.json` is **publiek** en staat op **productie** (anoniem
|
|
|
|
|
- HTTP 200, 129 records, 0,2 s). Exact 6 termen op diepte 0 — de zes tab-tids —
|
|
|
|
|
- en 123 op diepte 1; dieper gaat de boom niet, dus "directe kinderen van de
|
|
|
|
|
- tab-tid" is de juiste filterregel.
|
|
|
|
|
-- De custom functions **`horcatSubTids`** en **`horcatSubLabels`** staan in het
|
|
|
|
|
- project en zijn tegen de echte respons nagerekend.
|
|
|
|
|
-
|
|
|
|
|
-| tab | `horcat` | naam in de boom | subcategorieën |
|
|
|
|
|
-|---|---|---|---|
|
|
|
|
|
-| Activiteiten | 17969 | Activiteit | 26 |
|
|
|
|
|
-| Cultuur | 17963 | Cultuur & Info | 15 |
|
|
|
|
|
-| Eetgelegenheden | 34 | Eetgelegenheden | 52 |
|
|
|
|
|
-| Overnachten | 17965 | Overnachten | 4 |
|
|
|
|
|
-| Uitgaan | 17967 | Uitgaansgelegenheid | 19 |
|
|
|
|
|
-| Verhuur/catering | 17968 | Verhuur, Verkoop & Catering | 7 |
|
|
|
|
|
-
|
|
|
|
|
-⚠️ De naam van de wortelterm wijkt soms af van het tablabel (*Uitgaan* vs
|
|
|
|
|
-*Uitgaansgelegenheid*) — onschadelijk, er wordt op **tid** gefilterd.
|
|
|
|
|
-
|
|
|
|
|
-**Waarom het niet zonder dat endpoint kan:** het veld `categorie` van
|
|
|
|
|
-`flutterflowmobiel_establishments` bevat *alle* labels van een zaak, over al zijn
|
|
|
|
|
-hoofdcategorieën heen. Tab *Eetgelegenheden* levert zo 57 labels op met o.a.
|
|
|
|
|
-"Catering" (26x); tab *Cultuur* geeft "Cafe" (11x). Een zaak die op twee tabs
|
|
|
|
|
-staat is uit die respons principieel niet toe te wijzen aan de juiste
|
|
|
|
|
-hoofdcategorie. Met `parent_tid` uit `horecacategorieen` is dat één filterregel.
|
|
|
|
|
|
|
+**B — categoriedropdown per tab: ✅ af** (nagemeten 2026-09-19 avond): de
|
|
|
|
|
+`FlutterFlowDropDown` op `horecagelegenhedenOverzichtCurrent` hangt aan
|
|
|
|
|
+`horcatOptiesVoorTab` / `horcatLabelsVoorTab` met de TabBar-index. Daarmee is P2-24
|
|
|
|
|
+helemaal rond; dit blok kan weg zodra Bob 'm op het toestel goedkeurt.
|
|
|
|
|
|
|
|
**Niet oplosbaar, geaccepteerd:** FlutterFlow zet op de `On Change`-trigger van
|
|
**Niet oplosbaar, geaccepteerd:** FlutterFlow zet op de `On Change`-trigger van
|
|
|
het zoekveld een **`EasyDebounce` van 2000 ms** die nergens instelbaar is. De
|
|
het zoekveld een **`EasyDebounce` van 2000 ms** die nergens instelbaar is. De
|