import '/backend/api_requests/api_calls.dart'; import '/flutter_flow/flutter_flow_drop_down.dart'; import '/flutter_flow/flutter_flow_theme.dart'; import '/flutter_flow/flutter_flow_util.dart'; import '/flutter_flow/flutter_flow_widgets.dart'; import '/flutter_flow/form_field_controller.dart'; import '/flutter_flow/upload_data.dart'; import 'dart:ui'; import '/backend/schema/structs/index.dart'; import '/custom_code/actions/index.dart' as actions; import '/flutter_flow/custom_functions.dart' as functions; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter_spinkit/flutter_spinkit.dart'; import 'package:google_fonts/google_fonts.dart'; import 'package:provider/provider.dart'; import 'stadsactiviteit_aanmaken_model.dart'; export 'stadsactiviteit_aanmaken_model.dart'; class StadsactiviteitAanmakenWidget extends StatefulWidget { const StadsactiviteitAanmakenWidget({super.key}); static String routeName = 'stadsactiviteitAanmaken'; static String routePath = '/stadsactiviteitAanmaken'; @override State createState() => _StadsactiviteitAanmakenWidgetState(); } class _StadsactiviteitAanmakenWidgetState extends State with RouteAware { late StadsactiviteitAanmakenModel _model; final scaffoldKey = GlobalKey(); @override void initState() { super.initState(); _model = createModel(context, () => StadsactiviteitAanmakenModel()); _model.textFieldTitelTextController ??= TextEditingController() ..addListener(() { debugLogWidgetClass(_model); }); _model.textFieldTitelFocusNode ??= FocusNode(); _model.textFieldDatumStartTextController ??= TextEditingController() ..addListener(() { debugLogWidgetClass(_model); }); _model.textFieldDatumStartFocusNode ??= FocusNode(); _model.textFieldDatumEindTextController ??= TextEditingController() ..addListener(() { debugLogWidgetClass(_model); }); _model.textFieldDatumEindFocusNode ??= FocusNode(); _model.textFieldOmschrijvingTextController ??= TextEditingController() ..addListener(() { debugLogWidgetClass(_model); }); _model.textFieldOmschrijvingFocusNode ??= FocusNode(); _model.textFieldOrganisatorTextController ??= TextEditingController() ..addListener(() { debugLogWidgetClass(_model); }); _model.textFieldOrganisatorFocusNode ??= FocusNode(); _model.textFieldContactTextController ??= TextEditingController() ..addListener(() { debugLogWidgetClass(_model); }); _model.textFieldContactFocusNode ??= FocusNode(); _model.textFieldAdresTextController ??= TextEditingController() ..addListener(() { debugLogWidgetClass(_model); }); _model.textFieldAdresFocusNode ??= FocusNode(); _model.textFieldPostcodeTextController ??= TextEditingController() ..addListener(() { debugLogWidgetClass(_model); }); _model.textFieldPostcodeFocusNode ??= FocusNode(); _model.textFieldPlaatsTextController ??= TextEditingController() ..addListener(() { debugLogWidgetClass(_model); }); _model.textFieldPlaatsFocusNode ??= FocusNode(); _model.textFieldEntreeprijsTextController ??= TextEditingController() ..addListener(() { debugLogWidgetClass(_model); }); _model.textFieldEntreeprijsFocusNode ??= FocusNode(); _model.textFieldToelichtingEntreeTextController ??= TextEditingController() ..addListener(() { debugLogWidgetClass(_model); }); _model.textFieldToelichtingEntreeFocusNode ??= FocusNode(); _model.textFieldWebsiteURLTextController ??= TextEditingController() ..addListener(() { debugLogWidgetClass(_model); }); _model.textFieldWebsiteURLFocusNode ??= FocusNode(); } @override void dispose() { routeObserver.unsubscribe(this); _model.dispose(); super.dispose(); } @override void didUpdateWidget(StadsactiviteitAanmakenWidget oldWidget) { super.didUpdateWidget(oldWidget); _model.widget = widget; } @override void didChangeDependencies() { super.didChangeDependencies(); final route = DebugModalRoute.of(context); if (route != null) { routeObserver.subscribe(this, route); } debugLogGlobalProperty(context); } @override void didPopNext() { if (mounted && DebugFlutterFlowModelContext.maybeOf(context) == null) { setState(() => _model.isRouteVisible = true); debugLogWidgetClass(_model); } } @override void didPush() { if (mounted && DebugFlutterFlowModelContext.maybeOf(context) == null) { setState(() => _model.isRouteVisible = true); debugLogWidgetClass(_model); } } @override void didPop() { _model.isRouteVisible = false; } @override void didPushNext() { _model.isRouteVisible = false; } @override Widget build(BuildContext context) { DebugFlutterFlowModelContext.maybeOf(context) ?.parentModelCallback ?.call(_model); context.watch(); return GestureDetector( onTap: () { FocusScope.of(context).unfocus(); FocusManager.instance.primaryFocus?.unfocus(); }, child: Scaffold( key: scaffoldKey, backgroundColor: FlutterFlowTheme.of(context).primaryBackground, appBar: AppBar( backgroundColor: FlutterFlowTheme.of(context).primary, automaticallyImplyLeading: true, actions: [], centerTitle: true, elevation: 0.0, ), body: SafeArea( top: true, child: Padding( padding: EdgeInsets.all(16.0), child: SingleChildScrollView( child: Column( mainAxisSize: MainAxisSize.max, children: [ Container( width: 200.0, child: TextFormField( controller: _model.textFieldTitelTextController, focusNode: _model.textFieldTitelFocusNode, autofocus: false, enabled: true, obscureText: false, decoration: InputDecoration( isDense: true, labelText: FFLocalizations.of(context).getText( 'xorq08j5' /* Titel */, ), labelStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), hintText: FFLocalizations.of(context).getText( 'jwgx4el8' /* Titel activiteit */, ), hintStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), enabledBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), errorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedErrorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), filled: true, fillColor: FlutterFlowTheme.of(context).secondaryBackground, ), style: FlutterFlowTheme.of(context).bodyMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), cursorColor: FlutterFlowTheme.of(context).primaryText, enableInteractiveSelection: true, validator: _model.textFieldTitelTextControllerValidator .asValidator(context), ), ), InkWell( splashColor: Colors.transparent, focusColor: Colors.transparent, hoverColor: Colors.transparent, highlightColor: Colors.transparent, onTap: () async { final _datePicked1Date = await showDatePicker( context: context, initialDate: getCurrentTimestamp, firstDate: getCurrentTimestamp, lastDate: DateTime(2050), builder: (context, child) { return wrapInMaterialDatePickerTheme( context, child!, headerBackgroundColor: FlutterFlowTheme.of(context).primary, headerForegroundColor: FlutterFlowTheme.of(context).info, headerTextStyle: FlutterFlowTheme.of(context) .headlineLarge .override( font: GoogleFonts.roboto( fontWeight: FontWeight.w600, fontStyle: FlutterFlowTheme.of(context) .headlineLarge .fontStyle, ), fontSize: 32.0, letterSpacing: 0.0, fontWeight: FontWeight.w600, fontStyle: FlutterFlowTheme.of(context) .headlineLarge .fontStyle, ), pickerBackgroundColor: FlutterFlowTheme.of(context) .secondaryBackground, pickerForegroundColor: FlutterFlowTheme.of(context).primaryText, selectedDateTimeBackgroundColor: FlutterFlowTheme.of(context).primary, selectedDateTimeForegroundColor: FlutterFlowTheme.of(context).info, actionButtonForegroundColor: FlutterFlowTheme.of(context).primaryText, iconSize: 24.0, ); }, ); TimeOfDay? _datePicked1Time; if (_datePicked1Date != null) { _datePicked1Time = await showTimePicker( context: context, initialTime: TimeOfDay.fromDateTime(getCurrentTimestamp), builder: (context, child) { return wrapInMaterialTimePickerTheme( context, child!, headerBackgroundColor: FlutterFlowTheme.of(context).primary, headerForegroundColor: FlutterFlowTheme.of(context).info, headerTextStyle: FlutterFlowTheme.of(context) .headlineLarge .override( font: GoogleFonts.roboto( fontWeight: FontWeight.w600, fontStyle: FlutterFlowTheme.of(context) .headlineLarge .fontStyle, ), fontSize: 32.0, letterSpacing: 0.0, fontWeight: FontWeight.w600, fontStyle: FlutterFlowTheme.of(context) .headlineLarge .fontStyle, ), pickerBackgroundColor: FlutterFlowTheme.of(context) .secondaryBackground, pickerForegroundColor: FlutterFlowTheme.of(context).primaryText, selectedDateTimeBackgroundColor: FlutterFlowTheme.of(context).primary, selectedDateTimeForegroundColor: FlutterFlowTheme.of(context).info, actionButtonForegroundColor: FlutterFlowTheme.of(context).primaryText, iconSize: 24.0, ); }, ); } if (_datePicked1Date != null && _datePicked1Time != null) { safeSetState(() { _model.datePicked1 = DateTime( _datePicked1Date.year, _datePicked1Date.month, _datePicked1Date.day, _datePicked1Time!.hour, _datePicked1Time.minute, ); }); } else if (_model.datePicked1 != null) { safeSetState(() { _model.datePicked1 = getCurrentTimestamp; }); } safeSetState(() { _model.textFieldDatumStartTextController?.text = _model.datePicked1!.toString(); }); }, child: Container( width: double.infinity, decoration: BoxDecoration(), child: Container( width: double.infinity, child: TextFormField( controller: _model.textFieldDatumStartTextController, focusNode: _model.textFieldDatumStartFocusNode, autofocus: false, enabled: false, readOnly: true, obscureText: false, decoration: InputDecoration( isDense: true, labelText: FFLocalizations.of(context).getText( 'dfa8vusy' /* Datum */, ), labelStyle: FlutterFlowTheme.of(context) .labelMedium .override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), hintText: FFLocalizations.of(context).getText( '7vogkwoh' /* Datum */, ), hintStyle: FlutterFlowTheme.of(context) .labelMedium .override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), enabledBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), errorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedErrorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), filled: true, fillColor: FlutterFlowTheme.of(context) .secondaryBackground, ), style: FlutterFlowTheme.of(context).bodyMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), cursorColor: FlutterFlowTheme.of(context).primaryText, enableInteractiveSelection: true, validator: _model .textFieldDatumStartTextControllerValidator .asValidator(context), ), ), ), ), InkWell( splashColor: Colors.transparent, focusColor: Colors.transparent, hoverColor: Colors.transparent, highlightColor: Colors.transparent, onTap: () async { final _datePicked2Date = await showDatePicker( context: context, initialDate: getCurrentTimestamp, firstDate: getCurrentTimestamp, lastDate: DateTime(2050), builder: (context, child) { return wrapInMaterialDatePickerTheme( context, child!, headerBackgroundColor: FlutterFlowTheme.of(context).primary, headerForegroundColor: FlutterFlowTheme.of(context).info, headerTextStyle: FlutterFlowTheme.of(context) .headlineLarge .override( font: GoogleFonts.roboto( fontWeight: FontWeight.w600, fontStyle: FlutterFlowTheme.of(context) .headlineLarge .fontStyle, ), fontSize: 32.0, letterSpacing: 0.0, fontWeight: FontWeight.w600, fontStyle: FlutterFlowTheme.of(context) .headlineLarge .fontStyle, ), pickerBackgroundColor: FlutterFlowTheme.of(context) .secondaryBackground, pickerForegroundColor: FlutterFlowTheme.of(context).primaryText, selectedDateTimeBackgroundColor: FlutterFlowTheme.of(context).primary, selectedDateTimeForegroundColor: FlutterFlowTheme.of(context).info, actionButtonForegroundColor: FlutterFlowTheme.of(context).primaryText, iconSize: 24.0, ); }, ); TimeOfDay? _datePicked2Time; if (_datePicked2Date != null) { _datePicked2Time = await showTimePicker( context: context, initialTime: TimeOfDay.fromDateTime(getCurrentTimestamp), builder: (context, child) { return wrapInMaterialTimePickerTheme( context, child!, headerBackgroundColor: FlutterFlowTheme.of(context).primary, headerForegroundColor: FlutterFlowTheme.of(context).info, headerTextStyle: FlutterFlowTheme.of(context) .headlineLarge .override( font: GoogleFonts.roboto( fontWeight: FontWeight.w600, fontStyle: FlutterFlowTheme.of(context) .headlineLarge .fontStyle, ), fontSize: 32.0, letterSpacing: 0.0, fontWeight: FontWeight.w600, fontStyle: FlutterFlowTheme.of(context) .headlineLarge .fontStyle, ), pickerBackgroundColor: FlutterFlowTheme.of(context) .secondaryBackground, pickerForegroundColor: FlutterFlowTheme.of(context).primaryText, selectedDateTimeBackgroundColor: FlutterFlowTheme.of(context).primary, selectedDateTimeForegroundColor: FlutterFlowTheme.of(context).info, actionButtonForegroundColor: FlutterFlowTheme.of(context).primaryText, iconSize: 24.0, ); }, ); } if (_datePicked2Date != null && _datePicked2Time != null) { safeSetState(() { _model.datePicked2 = DateTime( _datePicked2Date.year, _datePicked2Date.month, _datePicked2Date.day, _datePicked2Time!.hour, _datePicked2Time.minute, ); }); } else if (_model.datePicked2 != null) { safeSetState(() { _model.datePicked2 = getCurrentTimestamp; }); } safeSetState(() { _model.textFieldDatumEindTextController?.text = _model.datePicked2!.toString(); }); }, child: Container( width: double.infinity, decoration: BoxDecoration(), child: Container( width: double.infinity, child: TextFormField( controller: _model.textFieldDatumEindTextController, focusNode: _model.textFieldDatumEindFocusNode, autofocus: false, enabled: false, readOnly: true, obscureText: false, decoration: InputDecoration( isDense: true, labelText: FFLocalizations.of(context).getText( '71z3uvd8' /* Datum eind */, ), labelStyle: FlutterFlowTheme.of(context) .labelMedium .override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), hintText: FFLocalizations.of(context).getText( '1k52hayg' /* Datum eind */, ), hintStyle: FlutterFlowTheme.of(context) .labelMedium .override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), enabledBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), errorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedErrorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), filled: true, fillColor: FlutterFlowTheme.of(context) .secondaryBackground, ), style: FlutterFlowTheme.of(context).bodyMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), cursorColor: FlutterFlowTheme.of(context).primaryText, enableInteractiveSelection: true, validator: _model .textFieldDatumEindTextControllerValidator .asValidator(context), ), ), ), ), Container( width: double.infinity, child: TextFormField( controller: _model.textFieldOmschrijvingTextController, focusNode: _model.textFieldOmschrijvingFocusNode, autofocus: false, enabled: true, obscureText: false, decoration: InputDecoration( isDense: true, labelText: FFLocalizations.of(context).getText( 'vc73ugaq' /* Omschrijving */, ), labelStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), hintText: FFLocalizations.of(context).getText( 'k4jw1fl6' /* Omschrijving activiteit */, ), hintStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), enabledBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), errorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedErrorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), filled: true, fillColor: FlutterFlowTheme.of(context).secondaryBackground, ), style: FlutterFlowTheme.of(context).bodyMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), maxLines: 5, cursorColor: FlutterFlowTheme.of(context).primaryText, enableInteractiveSelection: true, validator: _model .textFieldOmschrijvingTextControllerValidator .asValidator(context), ), ), Container( width: double.infinity, child: TextFormField( controller: _model.textFieldOrganisatorTextController, focusNode: _model.textFieldOrganisatorFocusNode, autofocus: false, enabled: true, obscureText: false, decoration: InputDecoration( isDense: true, labelText: FFLocalizations.of(context).getText( '7dy1oyjr' /* Organisator */, ), labelStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), hintText: FFLocalizations.of(context).getText( 'nxfif83l' /* Organisator van de activiteit */, ), hintStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), enabledBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), errorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedErrorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), filled: true, fillColor: FlutterFlowTheme.of(context).secondaryBackground, ), style: FlutterFlowTheme.of(context).bodyMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), cursorColor: FlutterFlowTheme.of(context).primaryText, enableInteractiveSelection: true, validator: _model .textFieldOrganisatorTextControllerValidator .asValidator(context), ), ), Container( width: double.infinity, child: TextFormField( controller: _model.textFieldContactTextController, focusNode: _model.textFieldContactFocusNode, autofocus: false, enabled: true, obscureText: false, decoration: InputDecoration( isDense: true, labelText: FFLocalizations.of(context).getText( '06lh8r3a' /* Contact */, ), labelStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), hintText: FFLocalizations.of(context).getText( 'p3rwq60m' /* Contact email/telefoon */, ), hintStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), enabledBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), errorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedErrorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), filled: true, fillColor: FlutterFlowTheme.of(context).secondaryBackground, ), style: FlutterFlowTheme.of(context).bodyMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), cursorColor: FlutterFlowTheme.of(context).primaryText, enableInteractiveSelection: true, validator: _model.textFieldContactTextControllerValidator .asValidator(context), ), ), Container( width: double.infinity, child: TextFormField( controller: _model.textFieldAdresTextController, focusNode: _model.textFieldAdresFocusNode, autofocus: false, enabled: true, obscureText: false, decoration: InputDecoration( isDense: true, labelText: FFLocalizations.of(context).getText( '5ehouxlk' /* Adres */, ), labelStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), hintText: FFLocalizations.of(context).getText( '4czd99zl' /* Adres */, ), hintStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), enabledBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), errorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedErrorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), filled: true, fillColor: FlutterFlowTheme.of(context).secondaryBackground, ), style: FlutterFlowTheme.of(context).bodyMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), cursorColor: FlutterFlowTheme.of(context).primaryText, enableInteractiveSelection: true, validator: _model.textFieldAdresTextControllerValidator .asValidator(context), ), ), Container( width: double.infinity, child: TextFormField( controller: _model.textFieldPostcodeTextController, focusNode: _model.textFieldPostcodeFocusNode, autofocus: false, enabled: true, obscureText: false, decoration: InputDecoration( isDense: true, labelText: FFLocalizations.of(context).getText( 'oo7z1mp8' /* Postcode */, ), labelStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), hintText: FFLocalizations.of(context).getText( 'j9h65a88' /* Postcode */, ), hintStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), enabledBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), errorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedErrorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), filled: true, fillColor: FlutterFlowTheme.of(context).secondaryBackground, ), style: FlutterFlowTheme.of(context).bodyMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), cursorColor: FlutterFlowTheme.of(context).primaryText, enableInteractiveSelection: true, validator: _model.textFieldPostcodeTextControllerValidator .asValidator(context), ), ), Container( width: double.infinity, child: TextFormField( controller: _model.textFieldPlaatsTextController, focusNode: _model.textFieldPlaatsFocusNode, autofocus: false, enabled: true, obscureText: false, decoration: InputDecoration( isDense: true, labelText: FFLocalizations.of(context).getText( '825wzmk4' /* Plaats */, ), labelStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), hintText: FFLocalizations.of(context).getText( 'np527mil' /* Plaats activiteit */, ), hintStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), enabledBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), errorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedErrorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), filled: true, fillColor: FlutterFlowTheme.of(context).secondaryBackground, ), style: FlutterFlowTheme.of(context).bodyMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), cursorColor: FlutterFlowTheme.of(context).primaryText, enableInteractiveSelection: true, validator: _model.textFieldPlaatsTextControllerValidator .asValidator(context), ), ), Container( width: double.infinity, child: TextFormField( controller: _model.textFieldEntreeprijsTextController, focusNode: _model.textFieldEntreeprijsFocusNode, autofocus: false, enabled: true, obscureText: false, decoration: InputDecoration( isDense: true, labelText: FFLocalizations.of(context).getText( 'pftju36e' /* Entreeprijs */, ), labelStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), hintText: FFLocalizations.of(context).getText( 'fyltb801' /* Entreeprijs */, ), hintStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), enabledBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), errorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedErrorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), filled: true, fillColor: FlutterFlowTheme.of(context).secondaryBackground, ), style: FlutterFlowTheme.of(context).bodyMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), cursorColor: FlutterFlowTheme.of(context).primaryText, enableInteractiveSelection: true, validator: _model .textFieldEntreeprijsTextControllerValidator .asValidator(context), ), ), Container( width: double.infinity, child: TextFormField( controller: _model.textFieldToelichtingEntreeTextController, focusNode: _model.textFieldToelichtingEntreeFocusNode, autofocus: false, enabled: true, obscureText: false, decoration: InputDecoration( isDense: true, labelText: FFLocalizations.of(context).getText( '0brx7n79' /* Toelichting Entree */, ), labelStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), hintStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), enabledBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), errorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedErrorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), filled: true, fillColor: FlutterFlowTheme.of(context).secondaryBackground, ), style: FlutterFlowTheme.of(context).bodyMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), cursorColor: FlutterFlowTheme.of(context).primaryText, enableInteractiveSelection: true, validator: _model .textFieldToelichtingEntreeTextControllerValidator .asValidator(context), ), ), Align( alignment: AlignmentDirectional(-1.0, 0.0), child: Container( width: 200.0, child: TextFormField( controller: _model.textFieldWebsiteURLTextController, focusNode: _model.textFieldWebsiteURLFocusNode, autofocus: false, enabled: true, obscureText: false, decoration: InputDecoration( isDense: true, labelText: FFLocalizations.of(context).getText( 'i66ori1d' /* WebsiteURL */, ), labelStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), hintText: FFLocalizations.of(context).getText( 'bhydpd6h' /* Website van de activiteit */, ), hintStyle: FlutterFlowTheme.of(context).labelMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .labelMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .labelMedium .fontStyle, ), enabledBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedBorder: OutlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), errorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), focusedErrorBorder: OutlineInputBorder( borderSide: BorderSide( color: FlutterFlowTheme.of(context).error, width: 1.0, ), borderRadius: BorderRadius.circular(8.0), ), filled: true, fillColor: FlutterFlowTheme.of(context).secondaryBackground, ), style: FlutterFlowTheme.of(context).bodyMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), cursorColor: FlutterFlowTheme.of(context).primaryText, enableInteractiveSelection: true, validator: _model .textFieldWebsiteURLTextControllerValidator .asValidator(context), ), ), ), Align( alignment: AlignmentDirectional(-1.0, 0.0), child: FutureBuilder( future: MijnStadsrechtenCall.call( sessionName: FFAppState().userSessionname, sessid: FFAppState().userSessionid, ), builder: (context, snapshot) { // Customize what your widget looks like when it's loading. if (!snapshot.hasData) { return Center( child: SizedBox( width: 80.0, height: 80.0, child: SpinKitFadingCircle( color: FlutterFlowTheme.of(context).primary, size: 80.0, ), ), ); } final columnMijnStadsrechtenResponse = snapshot.data!; _model.debugBackendQueries[ 'MijnStadsrechtenCall_statusCode_Column_bh9n1ich'] = debugSerializeParam( columnMijnStadsrechtenResponse.statusCode, ParamType.int, link: 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=stadsactiviteitAanmaken', name: 'int', nullable: false, ); _model.debugBackendQueries[ 'MijnStadsrechtenCall_responseBody_Column_bh9n1ich'] = debugSerializeParam( columnMijnStadsrechtenResponse.bodyText, ParamType.String, link: 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=stadsactiviteitAanmaken', name: 'String', nullable: false, ); debugLogWidgetClass(_model); return Column( mainAxisSize: MainAxisSize.max, children: [ if (getJsonField( columnMijnStadsrechtenResponse.jsonBody, r'''$[0].titel''', ) != null) FlutterFlowDropDown( controller: _model .dropDownGemeentenMijngemeentenValueController ??= FormFieldController(null), options: List.from((getJsonField( columnMijnStadsrechtenResponse.jsonBody, r'''$[:].tid''', true, ) as List?)! .map((e) => e.toString()) .toList() .cast()), optionLabels: (getJsonField( columnMijnStadsrechtenResponse.jsonBody, r'''$[:].titel''', true, ) as List?)! .map((e) => e.toString()) .toList() .cast(), onChanged: (val) async { safeSetState(() => _model .dropDownGemeentenMijngemeentenValue = val); _model.createGemeenteID = _model .dropDownGemeentenMijngemeentenValue; safeSetState(() {}); }, width: 200.0, height: 40.0, textStyle: FlutterFlowTheme.of(context) .bodyMedium .override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), hintText: FFLocalizations.of(context).getText( 'ls6do5d5' /* Mijn gemeenten */, ), icon: Icon( Icons.keyboard_arrow_down_rounded, color: FlutterFlowTheme.of(context) .secondaryText, size: 24.0, ), fillColor: FlutterFlowTheme.of(context) .secondaryBackground, elevation: 2.0, borderColor: Colors.transparent, borderWidth: 0.0, borderRadius: 8.0, margin: EdgeInsetsDirectional.fromSTEB( 12.0, 0.0, 12.0, 0.0), hidesUnderline: true, isOverButton: false, isSearchable: false, isMultiSelect: false, ), ], ); }, ), ), Align( alignment: AlignmentDirectional(-1.0, 0.0), child: FutureBuilder( future: ProvinciesCall.call(), builder: (context, snapshot) { // Customize what your widget looks like when it's loading. if (!snapshot.hasData) { return Center( child: SizedBox( width: 80.0, height: 80.0, child: SpinKitFadingCircle( color: FlutterFlowTheme.of(context).primary, size: 80.0, ), ), ); } final dropDownProvincieProvinciesResponse = snapshot.data!; _model.debugBackendQueries[ 'ProvinciesCall_statusCode_DropDown_55mxhb3i'] = debugSerializeParam( dropDownProvincieProvinciesResponse.statusCode, ParamType.int, link: 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=stadsactiviteitAanmaken', name: 'int', nullable: false, ); _model.debugBackendQueries[ 'ProvinciesCall_responseBody_DropDown_55mxhb3i'] = debugSerializeParam( dropDownProvincieProvinciesResponse.bodyText, ParamType.String, link: 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=stadsactiviteitAanmaken', name: 'String', nullable: false, ); debugLogWidgetClass(_model); return FlutterFlowDropDown( controller: _model.dropDownProvincieValueController ??= FormFieldController(null), options: List.from((getJsonField( dropDownProvincieProvinciesResponse.jsonBody, r'''$[:].provincieid''', true, ) as List?)! .map((e) => e.toString()) .toList() .cast()), optionLabels: (getJsonField( dropDownProvincieProvinciesResponse.jsonBody, r'''$[:].provinciename''', true, ) as List?)! .map((e) => e.toString()) .toList() .cast(), onChanged: (val) async { safeSetState( () => _model.dropDownProvincieValue = val); _model.createProvincieID = _model.dropDownProvincieValue; safeSetState(() {}); }, width: 200.0, height: 40.0, textStyle: FlutterFlowTheme.of(context).bodyMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), hintText: FFLocalizations.of(context).getText( 'dqeuq7t8' /* Select... */, ), icon: Icon( Icons.keyboard_arrow_down_rounded, color: FlutterFlowTheme.of(context).secondaryText, size: 24.0, ), fillColor: FlutterFlowTheme.of(context).secondaryBackground, elevation: 2.0, borderColor: Colors.transparent, borderWidth: 0.0, borderRadius: 8.0, margin: EdgeInsetsDirectional.fromSTEB( 12.0, 0.0, 12.0, 0.0), hidesUnderline: true, isOverButton: false, isSearchable: false, isMultiSelect: false, ); }, ), ), if (_model.createProvincieID != null && _model.createProvincieID != '') Align( alignment: AlignmentDirectional(-1.0, 0.0), child: FutureBuilder( future: GemeentenCall.call( provincieid: _model.createProvincieID, ), builder: (context, snapshot) { // Customize what your widget looks like when it's loading. if (!snapshot.hasData) { return Center( child: SizedBox( width: 80.0, height: 80.0, child: SpinKitFadingCircle( color: FlutterFlowTheme.of(context).primary, size: 80.0, ), ), ); } final dropDownGemeenteGemeentenResponse = snapshot.data!; _model.debugBackendQueries[ 'GemeentenCall_statusCode_DropDown_1w5av1oi'] = debugSerializeParam( dropDownGemeenteGemeentenResponse.statusCode, ParamType.int, link: 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=stadsactiviteitAanmaken', name: 'int', nullable: false, ); _model.debugBackendQueries[ 'GemeentenCall_responseBody_DropDown_1w5av1oi'] = debugSerializeParam( dropDownGemeenteGemeentenResponse.bodyText, ParamType.String, link: 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=stadsactiviteitAanmaken', name: 'String', nullable: false, ); debugLogWidgetClass(_model); return FlutterFlowDropDown( controller: _model.dropDownGemeenteValueController ??= FormFieldController( _model.dropDownGemeenteValue ??= '', ), options: List.from((getJsonField( dropDownGemeenteGemeentenResponse.jsonBody, r'''$[:].gemeenteid''', true, ) as List?)! .map((e) => e.toString()) .toList() .cast()), optionLabels: (getJsonField( dropDownGemeenteGemeentenResponse.jsonBody, r'''$[:].gemeentename''', true, ) as List?)! .map((e) => e.toString()) .toList() .cast(), onChanged: (val) async { safeSetState( () => _model.dropDownGemeenteValue = val); _model.createGemeenteID = _model.dropDownGemeenteValue; safeSetState(() {}); }, width: 200.0, height: 40.0, textStyle: FlutterFlowTheme.of(context) .bodyMedium .override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), hintText: FFLocalizations.of(context).getText( 'xiba4gka' /* Select... */, ), icon: Icon( Icons.keyboard_arrow_down_rounded, color: FlutterFlowTheme.of(context).secondaryText, size: 24.0, ), fillColor: FlutterFlowTheme.of(context) .secondaryBackground, elevation: 2.0, borderColor: Colors.transparent, borderWidth: 0.0, borderRadius: 8.0, margin: EdgeInsetsDirectional.fromSTEB( 12.0, 0.0, 12.0, 0.0), hidesUnderline: true, isOverButton: false, isSearchable: false, isMultiSelect: false, ); }, ), ), if (_model.createGemeenteID != null && _model.createGemeenteID != '') Align( alignment: AlignmentDirectional(-1.0, 0.0), child: FutureBuilder( future: ProductieGroup.plaatsenBijGemeenteCall.call( gemeenteid: _model.createGemeenteID, ), builder: (context, snapshot) { // Customize what your widget looks like when it's loading. if (!snapshot.hasData) { return Center( child: SizedBox( width: 80.0, height: 80.0, child: SpinKitFadingCircle( color: FlutterFlowTheme.of(context).primary, size: 80.0, ), ), ); } final dropDownPlaatsPlaatsenBijGemeenteResponse = snapshot.data!; _model.debugBackendQueries[ 'ProductieGroup.plaatsenBijGemeenteCall_statusCode_DropDown_h64h4x5r'] = debugSerializeParam( dropDownPlaatsPlaatsenBijGemeenteResponse .statusCode, ParamType.int, link: 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=stadsactiviteitAanmaken', name: 'int', nullable: false, ); _model.debugBackendQueries[ 'ProductieGroup.plaatsenBijGemeenteCall_responseBody_DropDown_h64h4x5r'] = debugSerializeParam( dropDownPlaatsPlaatsenBijGemeenteResponse.bodyText, ParamType.String, link: 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=stadsactiviteitAanmaken', name: 'String', nullable: false, ); debugLogWidgetClass(_model); return FlutterFlowDropDown( controller: _model.dropDownPlaatsValueController ??= FormFieldController( _model.dropDownPlaatsValue ??= '', ), options: List.from((getJsonField( dropDownPlaatsPlaatsenBijGemeenteResponse .jsonBody, r'''$[:].plaatsid''', true, ) as List?)! .map((e) => e.toString()) .toList() .cast()), optionLabels: (getJsonField( dropDownPlaatsPlaatsenBijGemeenteResponse .jsonBody, r'''$[:].plaatsname''', true, ) as List?)! .map((e) => e.toString()) .toList() .cast(), onChanged: (val) async { safeSetState( () => _model.dropDownPlaatsValue = val); _model.createPlaatsID = _model.dropDownPlaatsValue; safeSetState(() {}); }, width: 200.0, height: 40.0, textStyle: FlutterFlowTheme.of(context) .bodyMedium .override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), hintText: FFLocalizations.of(context).getText( 'l9f37oxb' /* Select... */, ), icon: Icon( Icons.keyboard_arrow_down_rounded, color: FlutterFlowTheme.of(context).secondaryText, size: 24.0, ), fillColor: FlutterFlowTheme.of(context) .secondaryBackground, elevation: 2.0, borderColor: Colors.transparent, borderWidth: 0.0, borderRadius: 8.0, margin: EdgeInsetsDirectional.fromSTEB( 12.0, 0.0, 12.0, 0.0), hidesUnderline: true, isOverButton: false, isSearchable: false, isMultiSelect: false, ); }, ), ), Align( alignment: AlignmentDirectional(-1.0, 0.0), child: FutureBuilder( future: ProductieGroup.categorieenCall.call( sessionName: FFAppState().userSessionname, sessid: FFAppState().userSessionid, ), builder: (context, snapshot) { // Customize what your widget looks like when it's loading. if (!snapshot.hasData) { return Center( child: SizedBox( width: 80.0, height: 80.0, child: SpinKitFadingCircle( color: FlutterFlowTheme.of(context).primary, size: 80.0, ), ), ); } final dropDownCategorieenCategorieenResponse = snapshot.data!; _model.debugBackendQueries[ 'ProductieGroup.categorieenCall_statusCode_DropDown_13mj4bt4'] = debugSerializeParam( dropDownCategorieenCategorieenResponse.statusCode, ParamType.int, link: 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=stadsactiviteitAanmaken', name: 'int', nullable: false, ); _model.debugBackendQueries[ 'ProductieGroup.categorieenCall_responseBody_DropDown_13mj4bt4'] = debugSerializeParam( dropDownCategorieenCategorieenResponse.bodyText, ParamType.String, link: 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=stadsactiviteitAanmaken', name: 'String', nullable: false, ); debugLogWidgetClass(_model); return FlutterFlowDropDown( multiSelectController: _model.dropDownCategorieenValueController ??= FormListFieldController(null), options: List.from((getJsonField( dropDownCategorieenCategorieenResponse.jsonBody, r'''$[:].tid''', true, ) as List?)! .map((e) => e.toString()) .toList() .cast()), optionLabels: (getJsonField( dropDownCategorieenCategorieenResponse.jsonBody, r'''$[:].naam''', true, ) as List?)! .map((e) => e.toString()) .toList() .cast(), width: 200.0, height: 40.0, textStyle: FlutterFlowTheme.of(context).bodyMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), hintText: FFLocalizations.of(context).getText( 'or5fd9n1' /* Select... */, ), icon: Icon( Icons.keyboard_arrow_down_rounded, color: FlutterFlowTheme.of(context).secondaryText, size: 24.0, ), fillColor: FlutterFlowTheme.of(context).secondaryBackground, elevation: 2.0, borderColor: Colors.transparent, borderWidth: 0.0, borderRadius: 8.0, margin: EdgeInsetsDirectional.fromSTEB( 12.0, 0.0, 12.0, 0.0), hidesUnderline: true, isOverButton: false, isSearchable: false, isMultiSelect: true, onMultiSelectChanged: (val) async { safeSetState( () => _model.dropDownCategorieenValue = val); _model.createCategorieTids = _model .dropDownCategorieenValue! .toList() .cast(); safeSetState(() {}); }, ); }, ), ), Align( alignment: AlignmentDirectional(-1.0, 0.0), child: FutureBuilder( future: ProductieGroup.entreeoptiesCall.call( sessionName: FFAppState().userSessionname, sessid: FFAppState().userSessionid, ), builder: (context, snapshot) { // Customize what your widget looks like when it's loading. if (!snapshot.hasData) { return Center( child: SizedBox( width: 80.0, height: 80.0, child: SpinKitFadingCircle( color: FlutterFlowTheme.of(context).primary, size: 80.0, ), ), ); } final dropDownEntreeEntreeoptiesResponse = snapshot.data!; _model.debugBackendQueries[ 'ProductieGroup.entreeoptiesCall_statusCode_DropDown_gk9hx54z'] = debugSerializeParam( dropDownEntreeEntreeoptiesResponse.statusCode, ParamType.int, link: 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=stadsactiviteitAanmaken', name: 'int', nullable: false, ); _model.debugBackendQueries[ 'ProductieGroup.entreeoptiesCall_responseBody_DropDown_gk9hx54z'] = debugSerializeParam( dropDownEntreeEntreeoptiesResponse.bodyText, ParamType.String, link: 'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=stadsactiviteitAanmaken', name: 'String', nullable: false, ); debugLogWidgetClass(_model); return FlutterFlowDropDown( controller: _model.dropDownEntreeValueController ??= FormFieldController( _model.dropDownEntreeValue ??= '', ), options: List.from((getJsonField( dropDownEntreeEntreeoptiesResponse.jsonBody, r'''$[:].tid''', true, ) as List?)! .map((e) => e.toString()) .toList() .cast()), optionLabels: (getJsonField( dropDownEntreeEntreeoptiesResponse.jsonBody, r'''$[:].naam''', true, ) as List?)! .map((e) => e.toString()) .toList() .cast(), onChanged: (val) async { safeSetState( () => _model.dropDownEntreeValue = val); _model.createEntreeTid = _model.dropDownEntreeValue; safeSetState(() {}); }, width: 200.0, height: 40.0, textStyle: FlutterFlowTheme.of(context).bodyMedium.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .bodyMedium .fontWeight, fontStyle: FlutterFlowTheme.of(context) .bodyMedium .fontStyle, ), hintText: FFLocalizations.of(context).getText( 'ajotnz1f' /* Select... */, ), icon: Icon( Icons.keyboard_arrow_down_rounded, color: FlutterFlowTheme.of(context).secondaryText, size: 24.0, ), fillColor: FlutterFlowTheme.of(context).secondaryBackground, elevation: 2.0, borderColor: Colors.transparent, borderWidth: 0.0, borderRadius: 8.0, margin: EdgeInsetsDirectional.fromSTEB( 12.0, 0.0, 12.0, 0.0), hidesUnderline: true, isOverButton: false, isSearchable: false, isMultiSelect: false, ); }, ), ), Align( alignment: AlignmentDirectional(-1.0, 0.0), child: FFButtonWidget( onPressed: () async { final selectedMedia = await selectMediaWithSourceBottomSheet( context: context, allowPhoto: true, ); if (selectedMedia != null && selectedMedia.every((m) => validateFileFormat(m.storagePath, context))) { safeSetState(() => _model.isDataUploading_uploadDataCnm = true); var selectedUploadedFiles = []; try { selectedUploadedFiles = selectedMedia .map((m) => FFUploadedFile( name: m.storagePath.split('/').last, bytes: m.bytes, height: m.dimensions?.height, width: m.dimensions?.width, blurHash: m.blurHash, originalFilename: m.originalFilename, )) .toList(); } finally { _model.isDataUploading_uploadDataCnm = false; } if (selectedUploadedFiles.length == selectedMedia.length) { safeSetState(() { _model.uploadedLocalFile_uploadDataCnm = selectedUploadedFiles.first; }); } else { safeSetState(() {}); return; } } _model.logouploadResult = await actions.bestandUpload( _model.uploadedLocalFile_uploadDataCnm, 'https://uitgaanskrant.com/en/flutterdrup/bestand_upload/upload.json', FFAppState().userSessionname, FFAppState().userSessionid, FFAppState().userToken, ); _model.createLogoFid = getJsonField( _model.logouploadResult, r'''$.fid''', ).toString(); safeSetState(() {}); safeSetState(() {}); }, text: FFLocalizations.of(context).getText( 'r6ckp0e0' /* Logo kiezen */, ), options: FFButtonOptions( height: 40.0, padding: EdgeInsetsDirectional.fromSTEB( 16.0, 0.0, 16.0, 0.0), iconPadding: EdgeInsetsDirectional.fromSTEB(0.0, 0.0, 0.0, 0.0), color: FlutterFlowTheme.of(context).secondary, textStyle: FlutterFlowTheme.of(context).titleSmall.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .titleSmall .fontWeight, fontStyle: FlutterFlowTheme.of(context) .titleSmall .fontStyle, ), color: Colors.white, letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .titleSmall .fontWeight, fontStyle: FlutterFlowTheme.of(context) .titleSmall .fontStyle, ), elevation: 0.0, borderRadius: BorderRadius.circular(8.0), ), ), ), if (_model.createFotosFids.length < 5) Align( alignment: AlignmentDirectional(-1.0, 0.0), child: FFButtonWidget( onPressed: () async { final selectedMedia = await selectMediaWithSourceBottomSheet( context: context, allowPhoto: true, ); if (selectedMedia != null && selectedMedia.every((m) => validateFileFormat(m.storagePath, context))) { safeSetState(() => _model.isDataUploading_uploadDataFotoos = true); var selectedUploadedFiles = []; try { selectedUploadedFiles = selectedMedia .map((m) => FFUploadedFile( name: m.storagePath.split('/').last, bytes: m.bytes, height: m.dimensions?.height, width: m.dimensions?.width, blurHash: m.blurHash, originalFilename: m.originalFilename, )) .toList(); } finally { _model.isDataUploading_uploadDataFotoos = false; } if (selectedUploadedFiles.length == selectedMedia.length) { safeSetState(() { _model.uploadedLocalFile_uploadDataFotoos = selectedUploadedFiles.first; }); } else { safeSetState(() {}); return; } } _model.fotouploadResult = await actions.bestandUpload( _model.uploadedLocalFile_uploadDataFotoos, 'https://uitgaanskrant.com/en/flutterdrup/bestand_upload/upload.json', FFAppState().userSessionname, FFAppState().userSessionid, FFAppState().userToken, ); _model.addToCreateFotosFids(getJsonField( _model.fotouploadResult, r'''$.fid''', ).toString()); safeSetState(() {}); safeSetState(() {}); }, text: FFLocalizations.of(context).getText( '41moeajb' /* Foto's kiezen */, ), options: FFButtonOptions( height: 40.0, padding: EdgeInsetsDirectional.fromSTEB( 16.0, 0.0, 16.0, 0.0), iconPadding: EdgeInsetsDirectional.fromSTEB( 0.0, 0.0, 0.0, 0.0), color: FlutterFlowTheme.of(context).secondary, textStyle: FlutterFlowTheme.of(context).titleSmall.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .titleSmall .fontWeight, fontStyle: FlutterFlowTheme.of(context) .titleSmall .fontStyle, ), color: Colors.white, letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .titleSmall .fontWeight, fontStyle: FlutterFlowTheme.of(context) .titleSmall .fontStyle, ), elevation: 0.0, borderRadius: BorderRadius.circular(8.0), ), ), ), if (_model.createPlaatsID != null && _model.createPlaatsID != '') FFButtonWidget( onPressed: () async { _model.createResult = await actions.stadsactiviteitCreate( FFAppState().userSessionname, FFAppState().userSessionid, FFAppState().userToken, _model.textFieldTitelTextController.text, _model.createPlaatsID!, functions.datumVoorApi( _model.textFieldDatumStartTextController.text)!, functions.datumVoorApi( _model.textFieldDatumEindTextController.text), _model.textFieldOmschrijvingTextController.text, _model.textFieldOrganisatorTextController.text, _model.textFieldContactTextController.text, _model.textFieldAdresTextController.text, _model.textFieldPlaatsTextController.text, _model.textFieldPostcodeTextController.text, _model.textFieldEntreeprijsTextController.text, _model.textFieldToelichtingEntreeTextController.text, _model.createCategorieTids.toList(), _model.textFieldWebsiteURLTextController.text, _model.createLogoFid, _model.createFotosFids.toList(), _model.createEntreeTid, ); if (getJsonField( _model.createResult, r'''$.success''', )) { ScaffoldMessenger.of(context).showSnackBar( SnackBar( content: Text( 'Je activiteit is ingediend en wordt beoordeeld door de redactie.', style: TextStyle( color: FlutterFlowTheme.of(context).primaryText, ), ), duration: Duration(milliseconds: 5000), backgroundColor: FlutterFlowTheme.of(context).secondary, ), ); context.safePop(); } else { ScaffoldMessenger.of(context).showSnackBar( SnackBar( content: Text( getJsonField( _model.createResult, r'''$.error''', ).toString(), style: TextStyle( color: FlutterFlowTheme.of(context).primaryText, ), ), duration: Duration(milliseconds: 4000), backgroundColor: FlutterFlowTheme.of(context).secondary, ), ); } safeSetState(() {}); }, text: FFLocalizations.of(context).getText( 'g6cr9u4n' /* Activiteit indienen */, ), options: FFButtonOptions( height: 40.0, padding: EdgeInsetsDirectional.fromSTEB( 16.0, 0.0, 16.0, 0.0), iconPadding: EdgeInsetsDirectional.fromSTEB(0.0, 0.0, 0.0, 0.0), color: FlutterFlowTheme.of(context).secondary, textStyle: FlutterFlowTheme.of(context).titleSmall.override( font: GoogleFonts.roboto( fontWeight: FlutterFlowTheme.of(context) .titleSmall .fontWeight, fontStyle: FlutterFlowTheme.of(context) .titleSmall .fontStyle, ), color: Colors.white, letterSpacing: 0.0, fontWeight: FlutterFlowTheme.of(context) .titleSmall .fontWeight, fontStyle: FlutterFlowTheme.of(context) .titleSmall .fontStyle, ), elevation: 0.0, borderRadius: BorderRadius.circular(8.0), ), ), ], ), ), ), ), ), ); } }