LEESMIJ.md 2.5 KB

Snippets

Custom code die via de FlutterFlow Custom Code-editor ingevoerd moet worden. Staat hier als .txt zodat flutter analyze en de export er niets mee doen — deze map ligt bewust buiten lib/ en overleeft daarom een export-code.

Plak bij het invoeren alles onder de // DO NOT REMOVE-regel — inclusief de eigen importregels die daar direct onder staan; de FlutterFlow-importkop erbóven genereert de builder zelf. In beide bestanden staat een ⬇ PLAK VANAF HIER ⬇-markering op precies de goede plek.

⚠️ Vergeet die importregel niet. Gebeurde 2026-09-13: zonder import 'package:http/http.dart' as http; slaat de Custom Code-editor de action gewoon op en meldt de builder niets, maar faalt de Gradle-build met Error: Undefined name 'http'. De editor controleert dit dus niet voor je.

  • check_verbinding.dart.txt — Custom Action checkVerbinding, Return Type Boolean, geen argumenten.
  • verbindings_banner.dart.txt — Custom Widget VerbindingsBanner, parameters width (double, optioneel), height (double, optioneel), tekst (String, optioneel). Laat die drie leeg bij het plaatsen.

⚠️ Het widget neemt bewust GEEN ruimte in de layout in (SizedBox.shrink) en toont de melding via de ScaffoldMessenger over de pagina heen. Reden: de header zit in een FlexibleSpaceBar.background met een vaste hoogte van 74 px. Zet het dus als laatste kind in de bestaande Row van HeaderButtonsComponentniet in een Column eromheen en niet in een Container met een vaste hoogte. Zie de valkuil in TASKS.md.

Beide horen bij de verbindingsmelding in de header; de bouwstappen staan in TASKS.md.

Aanmaakpagina's (P2-29 / A3) — einddatum-controle

  • evenement_create.dart.txt — Custom Action evenementCreate, volledige code zoals hij nu in de builder staat plus één extra blok direct na de Datum is verplicht-controle: is de einddatum gevuld én ligt hij vóór de startdatum, dan komt {'success': false, 'error': 'De einddatum ligt vóór de startdatum'} terug. De app toont die tekst al in de bestaande snackbar; er hoeft aan de pagina niets te veranderen.
  • stadsactiviteit_create.dart.txt — idem voor stadsactiviteitCreate.

Argumenten, volgorde en return type blijven exact gelijk, dus de bestaande bindingen op ButtonIndienen blijven werken. Invoeren: Custom Code → action openen → Cancel/Discard is niet nodig, gewoon de hele body vervangen (alles onder // DO NOT REMOVE), Ctrl+S, en verifiëren met een verse export op de string einddatum ligt vóór.