Selaa lähdekoodia

TASKS: Bob's besluiten 2026-09-19 (P2-45b → Alles, 88A fid-hergebruik, 87 deel 1 en taak 28 af, P2-42 nameten)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
bob 6 tuntia sitten
vanhempi
commit
1e85102dc0
1 muutettua tiedostoa jossa 24 lisäystä ja 71 poistoa
  1. 24 71
      TASKS.md

+ 24 - 71
TASKS.md

@@ -23,6 +23,7 @@ oppakken.
 | **87** | Klikbare link naar `/nl/ondernemers` — **bezig (Claude, samen met 91)** | Eén `Text` in linkstijl onder de horeca-dropdown; hoort bij 91 |
 | ~~88B~~ | Pagina "Mijn aanmeldingen" | ⚠️ **Al geclaimd** door de sessie 'taken-B1-B7' — niet oppakken |
 | **65** | Functionele doorloop van de release-build | Build draait al op emulator-5556; de checklist is nog niet afgelopen |
+| **P2-45b** | Datumkiezer annuleren → terug naar "Alles" (Bob's besluit 2026-09-19) | In de On-Pressed-keten van de kalenderknop op Home: de else-tak (`datePicked = getCurrentTimestamp`) vervangen door Update App State `datumFilter` → Clear Value, en de daaropvolgende `datumFilter = format(datePicked)` alleen in de gekozen-tak laten lopen. Nu: `home_widget.dart` r.401-410 |
 | **P2-45c** | Chiplabels op Home korter | Ze wrappen met de kalenderknop erbij naar twee regels |
 | **76** | Linkerpadding op de horeca-agendakaart | Klein, cosmetisch |
 | **G0.6** | Play-screenshots schieten | Browserloos op beide AVD's, ±10 min — zeg het en het gebeurt |
@@ -34,11 +35,10 @@ oppakken.
 | **B1** | **App-icoon: PNG 1024×1024, transparant, beeldmerk op ±60 %** | 🔴 Blokkeert. Op een toestel staat nu "itgaanskrant.co" |
 | **G** | Google Play-checklist G0–G4 | Volledige checklist hieronder, afvinkbaar |
 | **66** | Crashlytics: Firebase-console nakijken + Crashtest-knop opruimen | App-kant is bewezen (rapport met status 200); alleen de console-check en het opruimen zijn nog van jou |
-| **P2-42** | Agenda als eerste tab op de zaakpagina | Besluit + uitvoering; slepen lukt Claude niet |
-| **P2-45b** | Annuleren van de datumkiezer zet het filter op vandaag | Besluit: laten of fixen |
+| **P2-42** | Agenda als eerste tab op de zaakpagina | Bob meldt 2026-09-19 "al gedaan", maar een export van vanochtend toont Agenda nog als 4e tab. Na sync opnieuw nameten. |
 | **P1-17** | Engelse vertalingen, één ronde | 46 velden op de twee aanmaakpagina's + 3 losse |
 | **Bij livegang** | Zes schakelaars en opruimklussen | Eigen blok hieronder |
-| **Drupal** | P1-42, P2-24, taak 28/32, taak 56, P2-25 | Eigen blokken hieronder |
+| **Drupal** | P1-42, P1-45, P2-24 B/F, taak 56, P2-25 | Eigen blokken hieronder |
 
 ---
 #
@@ -220,7 +220,7 @@ optioneel.
 
 #
 
-### 🆕 87 · Uitleggen waar je een horecagelegenheid aanmaakt — kan alleen via de website · Eigenaar: Bob (helppagina-link, = B3), Claude (app-kant — de sectieregel staat er al, alleen de klikbare link ontbreekt nog; zie taak 91)
+### 🆕 87 · Uitleggen waar je een horecagelegenheid aanmaakt — kan alleen via de website · Eigenaar: Claude (app-kant — de sectieregel staat er al, alleen de klikbare link ontbreekt nog; zie taak 91). **Deel 1 (helppagina-link, Drupal) is af — Bob 2026-09-19.**
 
 Bob 2026-09-17: *"we moeten nog ergens kwijt dat we uitleggen waar je een
 horecagelegenheid kunt aanmaken. Kan alleen via de website."* Nu staat dat
@@ -295,10 +295,12 @@ erop staat, niet of het al goedgekeurd is, en niets hergebruiken.
   `website` verpakt in een `<a href=...>`-tag, en er zit **geen entree-tid** in.
   Daar is geen formulier mee te vullen.
 
-  **Open vraag voor Bob:** mag een kloon dezelfde `fid`'s hergebruiken (dan moet
-  `file_usage_add()` meelopen voor de nieuwe node), of moet de gebruiker opnieuw
-  uploaden? Hergebruiken is voor de gebruiker veel prettiger — dat is juist de
-  helft van de winst van klonen.
+  **✅ Besluit Bob 2026-09-19: een kloon hergebruikt dezelfde `fid`'s.** De
+  gebruiker hoeft dus niet opnieuw te uploaden. Aan de Drupal-kant regelt
+  `file_field_insert()`/`file_field_update()` de `file_usage`-registratie bij
+  `node_save()` zelf zodra de fids op het veld staan; alleen controleren dat
+  `_custom_evenement_create()` bestaande (permanente) fids accepteert en niet
+  op `status = 0` filtert.
 
 **B · App (Claude, builder)**
 
@@ -345,17 +347,21 @@ bouw eerst evenementen helemaal af en kopieer daarna pas, niet allebei tegelijk.
 ### 🔧 Kleine open restpunten (app)
 
 - **P2-42 · `HorecagelegenheidCurrent`: Agenda als eerste tab · Eigenaar: Bob
-  (besluit + uitvoering).** Agenda staat nu als 4e tab. **Tabs herordenen lukt
+  (besluit + uitvoering).** ⚠️ Bob meldde 2026-09-19 "al gedaan"; verse export
+  van diezelfde ochtend toont nog Info / Links / Bezorgen / Agenda. Nameten na
+  zijn volgende sync; klopt het dan, dit punt schrappen. Agenda staat nu als 4e tab. **Tabs herordenen lukt
   niet via de widget tree** (bewezen 2026-09-17): een `Tab`-node op de
   `TabBar`-rij droppen geeft *"Tab can only be added to TabBar"*, en op een
   andere Tab-rij droppen verplaatst alleen de Tab en niet zijn TabBar Page,
   waarna het canvas breekt. Opties: (a) jij probeert het slepen in je eigen
   browser, (b) de tab blijft achteraan, (c) Claude bouwt de inhoud van de
   tabben over — dat laatste is fors werk. Zeg welke.
-- **P2-45b · annuleren van de datumkiezer · Eigenaar: Bob (besluit) / Claude
-  (uitvoering).** FlutterFlow genereert het zo: annuleer je de kiezer nádat je
-  eerder een datum koos, dan valt het filter terug op vandaag in plaats van op
-  de vorige keuze. Eén conditie erbij lost het op; laten mag ook.
+- **P2-45b · annuleren van de datumkiezer · Eigenaar: Claude (besluit
+  Bob 2026-09-19: terugvallen op de standaard "Alles", niet op vandaag).**
+  Nu (`home_widget.dart` r.393-410): kiezer geannuleerd nádat er eerder een
+  datum gekozen was → `datePicked = getCurrentTimestamp` → `datumFilter` =
+  vandaag. Gewenst: annuleren → `datumFilter` leeg (= chip "Alles"), en de
+  `dateTimeFormat`-stap alleen uitvoeren als er echt een datum gekozen is.
 - **P2-45c · chiplabels korter.** De vier chiplabels wrapten met het zoekicoon
   al naar twee regels; met de kalenderknop erbij is er nóg minder ruimte.
   Suggestie: "Vandaag / Weekend / Deze week / Alles".
@@ -1011,65 +1017,12 @@ zelf een **`EasyDebounce` van 2000 ms** en die is nergens instelbaar (geen
 niet). Live merkbaar: de lijst ververst ~2 s nadat je stopt met typen. Werkt
 correct, voelt traag.
 
-### Taak 28 · 12% van de komende events komt in geen enkele tab — met de lijst erbij
+### ✅ Taak 28 · events zonder categorie — AF (Bob, 2026-09-19)
 
-Volledig doorgemeten 2026-09-12 20:50, terwijl je import liep (2963 unieke
-events op dat moment). Methode: alle zeven displays volledig gepagineerd en de
-nids vergeleken met de complete voorraad uit `flutterflow_events`.
-
-| | aantal |
-|---|---|
-| komende events (start ≥ nu − 2 uur) | **58** |
-| zichtbaar in minstens één tab | 51 |
-| **in geen enkele tab** | **7 (12%)** |
-
-**De zeven, om na te lopen:**
-```
-13 sep 14:00  nid 214441  Zeddam        Ferme Jongus – Nederpop op volle kracht!
-13 sep 15:30  nid 214463  Den Haag      Dr Ewa Woydyłło (Unique Performance)
-15 sep 20:30  nid 214456  Rotterdam     She Her Her Hers
-15 sep 21:00  nid 214455  Rotterdam     Renny Conti
-19 sep 09:00  nid 214439  Alblasserdam  Brocante Markt Klein Frankrijk
-20 sep 13:30  nid 214474  Almere-Stad   Het Danspaleis
-23 sep 20:30  nid 214476  Amersfoort    Feest
-```
-**Zes daarvan hebben helemaal geen categorie**; de zevende (`214439`) heeft
-*Tweedehands markt*, en dat is de enige categorie in de hele voorraad die geen
-enkele display raakt.
-
-**Categorie → tab, zoals het nu feitelijk werkt** (gemeten, niet uit de
-viewconfig afgelezen):
-
-| categorie | komt in |
-|---|---|
-| Voorstelling (41x) | Uitgaan, Cultuur & Info, Films |
-| Theater (35x) | Uitgaan, Cultuur & Info, Films, Jeugd |
-| Muziek (28x) | Uitgaan, Cultuur & Info |
-| Cabaret (21x), Toneel (9x), Theatercollege (3x), Circus (3x), Stand-up comedy (3x) | alleen Cultuur & Info |
-| Kindvriendelijk (16x), Jeugd (12x), Muziektheater (4x) | Cultuur & Info, Jeugd |
-| Dansvoorstelling (4x), Film (4x) | Cultuur & Info, Films |
-| Live/Concert (8x), Pop (2x), Rock/Punk (2x), Dance/House (2x) | alleen Uitgaan |
-| **Tweedehands markt (1x)** | **nergens** |
-
-Goed nieuws: er is dus maar **één** categorie zonder tab. Het echte lek zijn de
-events zónder categorie.
-
-**Twee dingen te beslissen:**
-1. **Events zonder categorie** — geef ze bij import een default, of maak één
-   display die alles toont wat nergens in past. Zonder dat groeit dit gewoon
-   mee met elke import.
-2. **"Tweedehands markt"** — hang 'm aan een bestaande tab (Cultuur & Info ligt
-   voor de hand) of accepteer dat die ene node onzichtbaar blijft.
-
-⚠️ **Let op bij het narekenen:** classificeer op **datum + tijd**, niet op datum
-alleen. Ik telde eerst 10 onzichtbare events; drie daarvan waren van vandaag en
-al begonnen (10:00 en 14:00, gemeten om 20:50) en worden dus terecht door het
-`>= -2 hours`-filter weggelaten. Op datum alleen lijken die ten onrechte
-"toekomstig".
-
-📌 `services_4` (Activiteiten) staat op 0 en dekt geen enkele categorie — dat
-zijn stadsactiviteiten, die worden handmatig aangemaakt en niet geïmporteerd.
-Geen bug.
+Bob meldt de Drupal-kant gefixt (events zonder categorie + "Tweedehands
+markt"). Nog niet door Claude nagemeten; het meetrecept (alle zeven displays
+pagineren, nids naast `flutterflow_events` leggen, classificeren op datum+tijd)
+staat in `CLAUDE.md`. Bij de volgende contentmeting even meenemen.
 
 ## 📚 Referentie — geen taak, wél lezen vóór je iets opnieuw onderzoekt