favourite business fix

This commit is contained in:
2025-11-04 12:07:00 +02:00
parent ed7c5a2269
commit e6d1cf0268
2 changed files with 116 additions and 101 deletions

View File

@@ -10,7 +10,7 @@ class MzansiDirectoryProvider extends ChangeNotifier {
String userLocation; String userLocation;
bool personalSearch; bool personalSearch;
List<BookmarkedBusiness> bookmarkedBusinesses = []; List<BookmarkedBusiness> bookmarkedBusinesses = [];
List<Business> favouriteBusinessesList = []; List<Business>? favouriteBusinessesList;
List<Business>? searchedBusinesses; List<Business>? searchedBusinesses;
Business? selectedBusiness; Business? selectedBusiness;
List<AppUser>? searchedUsers; List<AppUser>? searchedUsers;

View File

@@ -7,6 +7,7 @@ import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_tool_body.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_tool_body.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_search_bar.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_search_bar.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_single_child_scroll.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_single_child_scroll.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_loading_circle.dart';
import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_directory_provider.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_providers/mzansi_directory_provider.dart';
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart'; import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
import 'package:mzansi_innovation_hub/mih_packages/mzansi_directory/builders/build_favourite_businesses_list.dart'; import 'package:mzansi_innovation_hub/mih_packages/mzansi_directory/builders/build_favourite_businesses_list.dart';
@@ -32,11 +33,13 @@ class _MihFavouriteBusinessesState extends State<MihFavouriteBusinesses> {
void _filterAndSetBusinesses(MzansiDirectoryProvider directoryProvider) { void _filterAndSetBusinesses(MzansiDirectoryProvider directoryProvider) {
List<Business?> businessesToDisplay = []; List<Business?> businessesToDisplay = [];
String query = businessSearchController.text.toLowerCase(); String query = businessSearchController.text.toLowerCase();
for (var bus in directoryProvider.favouriteBusinessesList) { if (directoryProvider.favouriteBusinessesList != null) {
for (var bus in directoryProvider.favouriteBusinessesList!) {
if (bus.Name.toLowerCase().contains(query)) { if (bus.Name.toLowerCase().contains(query)) {
businessesToDisplay.add(bus); businessesToDisplay.add(bus);
} }
} }
}
searchBookmarkedBusinesses.value = businessesToDisplay; searchBookmarkedBusinesses.value = businessesToDisplay;
} }
@@ -79,6 +82,14 @@ class _MihFavouriteBusinessesState extends State<MihFavouriteBusinesses> {
} }
Widget getBody(double width) { Widget getBody(double width) {
return Consumer<MzansiDirectoryProvider>(
builder: (BuildContext context, MzansiDirectoryProvider directoryProvider,
Widget? child) {
if (directoryProvider.favouriteBusinessesList == null) {
return Center(
child: Mihloadingcircle(),
);
}
return MihSingleChildScroll( return MihSingleChildScroll(
child: Column( child: Column(
children: [ children: [
@@ -152,7 +163,9 @@ class _MihFavouriteBusinessesState extends State<MihFavouriteBusinesses> {
fontSize: 25, fontSize: 25,
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
color: MihColors.getSecondaryColor( color: MihColors.getSecondaryColor(
MzansiInnovationHub.of(context)!.theme.mode == MzansiInnovationHub.of(context)!
.theme
.mode ==
"Dark"), "Dark"),
), ),
), ),
@@ -191,5 +204,7 @@ class _MihFavouriteBusinessesState extends State<MihFavouriteBusinesses> {
], ],
), ),
); );
},
);
} }
} }