diff --git a/lib/config/routes.dart b/lib/config/routes.dart index 2db8ba932..df5736814 100644 --- a/lib/config/routes.dart +++ b/lib/config/routes.dart @@ -220,7 +220,9 @@ abstract class AppRoutes { return defaultPageBuilder( context, state, - const PublicTripPage(), + const PublicTripPage( + showFilters: false, + ), ); }, ), @@ -230,7 +232,10 @@ abstract class AppRoutes { return defaultPageBuilder( context, state, - const NewTripPage(route: 'registration'), + const NewTripPage( + route: 'registration', + showFilters: false, + ), ); }, routes: [ diff --git a/lib/pangea/login/pages/new_trip_page.dart b/lib/pangea/login/pages/new_trip_page.dart index 83a8ab807..c78d4cff9 100644 --- a/lib/pangea/login/pages/new_trip_page.dart +++ b/lib/pangea/login/pages/new_trip_page.dart @@ -15,11 +15,13 @@ import 'package:fluffychat/widgets/matrix.dart'; class NewTripPage extends StatefulWidget { final String route; final String? spaceId; + final bool showFilters; const NewTripPage({ super.key, required this.route, this.spaceId, + this.showFilters = true, }); @override @@ -70,51 +72,53 @@ class NewTripPageState extends State with CourseSearchProvider { ), child: Column( children: [ - Row( - children: [ - Expanded( - child: Wrap( - spacing: 8.0, - runSpacing: 8.0, - alignment: WrapAlignment.start, - children: [ - CoursePlanFilter( - value: instructionLanguageFilter, - onChanged: setInstructionLanguageFilter, - items: MatrixState - .pangeaController.pLanguageStore.baseOptions, - displayname: (v) => - v.getDisplayName(context) ?? v.displayName, - enableSearch: true, - defaultName: - L10n.of(context).languageOfInstructionsLabel, - shortName: L10n.of(context).allLanguages, - ), - CoursePlanFilter( - value: targetLanguageFilter, - onChanged: setTargetLanguageFilter, - items: MatrixState - .pangeaController.pLanguageStore.targetOptions, - displayname: (v) => - v.getDisplayName(context) ?? v.displayName, - enableSearch: true, - defaultName: L10n.of(context).targetLanguageLabel, - shortName: L10n.of(context).allLanguages, - ), - CoursePlanFilter( - value: languageLevelFilter, - onChanged: setLanguageLevelFilter, - items: LanguageLevelTypeEnum.values, - displayname: (v) => v.string, - defaultName: L10n.of(context).cefrLevelLabel, - shortName: L10n.of(context).allCefrLevels, - ), - ], + if (widget.showFilters) ...[ + Row( + children: [ + Expanded( + child: Wrap( + spacing: 8.0, + runSpacing: 8.0, + alignment: WrapAlignment.start, + children: [ + CoursePlanFilter( + value: instructionLanguageFilter, + onChanged: setInstructionLanguageFilter, + items: MatrixState + .pangeaController.pLanguageStore.baseOptions, + displayname: (v) => + v.getDisplayName(context) ?? v.displayName, + enableSearch: true, + defaultName: + L10n.of(context).languageOfInstructionsLabel, + shortName: L10n.of(context).allLanguages, + ), + CoursePlanFilter( + value: targetLanguageFilter, + onChanged: setTargetLanguageFilter, + items: MatrixState.pangeaController.pLanguageStore + .targetOptions, + displayname: (v) => + v.getDisplayName(context) ?? v.displayName, + enableSearch: true, + defaultName: L10n.of(context).targetLanguageLabel, + shortName: L10n.of(context).allLanguages, + ), + CoursePlanFilter( + value: languageLevelFilter, + onChanged: setLanguageLevelFilter, + items: LanguageLevelTypeEnum.values, + displayname: (v) => v.string, + defaultName: L10n.of(context).cefrLevelLabel, + shortName: L10n.of(context).allCefrLevels, + ), + ], + ), ), - ), - ], - ), - const SizedBox(height: 20.0), + ], + ), + const SizedBox(height: 20.0), + ], loading || error != null || courses.isEmpty ? Center( child: Padding( diff --git a/lib/pangea/login/pages/public_trip_page.dart b/lib/pangea/login/pages/public_trip_page.dart index e47f0b117..00d35818e 100644 --- a/lib/pangea/login/pages/public_trip_page.dart +++ b/lib/pangea/login/pages/public_trip_page.dart @@ -8,8 +8,10 @@ import 'package:fluffychat/pangea/learning_settings/models/language_model.dart'; import 'package:fluffychat/widgets/matrix.dart'; class PublicTripPage extends StatefulWidget { + final bool showFilters; const PublicTripPage({ super.key, + this.showFilters = true, }); @override @@ -94,51 +96,53 @@ class PublicTripPageState extends State { ), child: Column( children: [ - Row( - children: [ - Expanded( - child: Wrap( - spacing: 8.0, - runSpacing: 8.0, - alignment: WrapAlignment.start, - children: [ - CoursePlanFilter( - value: instructionLanguageFilter, - onChanged: setInstructionLanguageFilter, - items: MatrixState - .pangeaController.pLanguageStore.baseOptions, - displayname: (v) => - v.getDisplayName(context) ?? v.displayName, - enableSearch: true, - defaultName: - L10n.of(context).languageOfInstructionsLabel, - shortName: L10n.of(context).allLanguages, - ), - CoursePlanFilter( - value: targetLanguageFilter, - onChanged: setTargetLanguageFilter, - items: MatrixState - .pangeaController.pLanguageStore.targetOptions, - displayname: (v) => - v.getDisplayName(context) ?? v.displayName, - enableSearch: true, - defaultName: L10n.of(context).targetLanguageLabel, - shortName: L10n.of(context).allLanguages, - ), - CoursePlanFilter( - value: languageLevelFilter, - onChanged: setLanguageLevelFilter, - items: LanguageLevelTypeEnum.values, - displayname: (v) => v.string, - defaultName: L10n.of(context).cefrLevelLabel, - shortName: L10n.of(context).allCefrLevels, - ), - ], + if (widget.showFilters) ...[ + Row( + children: [ + Expanded( + child: Wrap( + spacing: 8.0, + runSpacing: 8.0, + alignment: WrapAlignment.start, + children: [ + CoursePlanFilter( + value: instructionLanguageFilter, + onChanged: setInstructionLanguageFilter, + items: MatrixState + .pangeaController.pLanguageStore.baseOptions, + displayname: (v) => + v.getDisplayName(context) ?? v.displayName, + enableSearch: true, + defaultName: + L10n.of(context).languageOfInstructionsLabel, + shortName: L10n.of(context).allLanguages, + ), + CoursePlanFilter( + value: targetLanguageFilter, + onChanged: setTargetLanguageFilter, + items: MatrixState.pangeaController.pLanguageStore + .targetOptions, + displayname: (v) => + v.getDisplayName(context) ?? v.displayName, + enableSearch: true, + defaultName: L10n.of(context).targetLanguageLabel, + shortName: L10n.of(context).allLanguages, + ), + CoursePlanFilter( + value: languageLevelFilter, + onChanged: setLanguageLevelFilter, + items: LanguageLevelTypeEnum.values, + displayname: (v) => v.string, + defaultName: L10n.of(context).cefrLevelLabel, + shortName: L10n.of(context).allCefrLevels, + ), + ], + ), ), - ), - ], - ), - const SizedBox(height: 20.0), + ], + ), + const SizedBox(height: 20.0), + ], Center( child: Padding( padding: const EdgeInsets.all(32.0),