Ver Fonte

TASKS 98: dependency + custom action zetInAgenda staan erin (geverifieerd)

- add_2_calendar ^3.0.1 (NIET ^3.1.1: dat eist Dart >=3.11, project heeft 3.9.2)
- custom action zetInAgenda, Future<bool>, 5 argumenten
- verse export: 0 analyse-errors, profile-APK bouwt schoon (132 MB)
- resteert: knop op EventCurrent, wacht op 98A (ISO-datum uit Drupal)

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
bob há 6 horas atrás
pai
commit
c4f9f5507a
1 ficheiros alterados com 22 adições e 6 exclusões
  1. 22 6
      TASKS.md

+ 22 - 6
TASKS.md

@@ -22,10 +22,10 @@ oppakken.
 | ~~88B~~ | Pagina "Mijn aanmeldingen" | ⚠️ **Al geclaimd** door de sessie 'taken-B1-B7' — niet oppakken |
 | **98** | "Zet in mijn agenda"-knop op een evenement (`add_2_calendar`) | Claude — **BEZIG** (sessie 2026-09-19). Blokkeert op Drupal-deel bij Bob, zie 98A |
 | **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-45b** | Datumkiezer annuleren → terug naar "Alles" — **Claude BEZIG (sessie autonoom 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-24 B** | Categoriedropdown horeca-overzicht, tab-bewust (Bob 2026-09-19) | Custom function + dropdown op `horecagelegenhedenOverzichtCurrent`; zie P2-24 voor de hoofd-/subcategorie-nuance |
-| **P2-45c** | Chiplabels op Home korter | Ze wrappen met de kalenderknop erbij naar twee regels |
-| **76** | Linkerpadding op de horeca-agendakaart | Klein, cosmetisch |
+| **P2-45c** | Chiplabels op Home korter — **Claude BEZIG (sessie autonoom 2026-09-19)** | Ze wrappen met de kalenderknop erbij naar twee regels |
+| **76** | Linkerpadding op de horeca-agendakaart — **Claude BEZIG (sessie autonoom 2026-09-19)** | Klein, cosmetisch |
 | **G0.6** | Play-screenshots schieten | Browserloos op beide AVD's, ±10 min — zeg het en het gebeurt |
 
 ## 👤 BOB — OPEN, in volgorde van wat de livegang blokkeert
@@ -155,9 +155,25 @@ Stappen:
    export, breekt de iOS-build). Zie de nieuwe notitie in `CLAUDE.md`. Het
    project is weer schoon achtergelaten (permissie uit, 0 keys).
    👉 **Overgedragen aan Bob — zie 98B.** Android heeft niets nodig.
-3. Dependency `add_2_calendar: ^3.1.1` in Custom Code → Dependencies.
-4. Custom action `zetInAgenda(titel, start, eind, locatie, omschrijving)`.
-5. Knop op `EventCurrent`, argumenten binden aan de nieuwe ISO-velden.
+3. ✅ **Dependency staat erin (Claude, 2026-09-19): `add_2_calendar: ^3.0.1`**
+   via App Settings → Project Dependencies → Custom Pub Dependencies.
+   ⚠️ **Niet ^3.1.1**: versies vanaf 3.1.0 eisen Dart >= 3.11, en dit project
+   draait Flutter 3.35.7 / Dart 3.9.2. `pub get` lost 3.0.1 op.
+4. ✅ **Custom action `zetInAgenda` staat er** (Claude, 2026-09-19),
+   `Future<bool>`, 5 argumenten (`titel`, `startIso`, `eindIso?`, `locatie?`,
+   `omschrijving?`). Doet: ISO parsen, eindtijd = start + 2 uur als er geen is,
+   HTML uit de omschrijving strippen en afkappen op 500 tekens, lege titel →
+   "Evenement". Geverifieerd op een verse export: **0 analyse-errors** tegen het
+   echte pakket.
+5. ⏳ **Nog te doen — wacht op 98A**: knop op `EventCurrent`, argumenten binden
+   aan `datum_iso` / `datum_eind_iso`, plus `title`, `adres`+`plaats`, `body`.
+   **Plek is al bepaald:** de datumregel is een `Row` met `Icons.calendar_month`
+   + de datumtekst (`event_current_widget.dart` r.425-460) — de knop komt daar
+   als derde kind naast, achter een Visibility-conditie op `$[0].datum_iso`
+   (**Conditions → Single Condition → Is Set**, niet de rauwe JSON-route, anders
+   krijg je een bool-cast zonder null-check).
+6. ⏳ **Bewezen bij afronding, nog te doen**: één keer op een echt toestel
+   tikken en kijken of de agenda-dialoog met de juiste datum opent.
 
 ### 🆕 98B · Calendar-permissietekst zetten · Eigenaar: Bob (builder)