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;
bool personalSearch;
List<BookmarkedBusiness> bookmarkedBusinesses = [];
List<Business> favouriteBusinessesList = [];
List<Business>? favouriteBusinessesList;
List<Business>? searchedBusinesses;
Business? selectedBusiness;
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_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_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_config/mih_colors.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) {
List<Business?> businessesToDisplay = [];
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)) {
businessesToDisplay.add(bus);
}
}
}
searchBookmarkedBusinesses.value = businessesToDisplay;
}
@@ -79,6 +82,14 @@ class _MihFavouriteBusinessesState extends State<MihFavouriteBusinesses> {
}
Widget getBody(double width) {
return Consumer<MzansiDirectoryProvider>(
builder: (BuildContext context, MzansiDirectoryProvider directoryProvider,
Widget? child) {
if (directoryProvider.favouriteBusinessesList == null) {
return Center(
child: Mihloadingcircle(),
);
}
return MihSingleChildScroll(
child: Column(
children: [
@@ -152,7 +163,9 @@ class _MihFavouriteBusinessesState extends State<MihFavouriteBusinesses> {
fontSize: 25,
fontWeight: FontWeight.bold,
color: MihColors.getSecondaryColor(
MzansiInnovationHub.of(context)!.theme.mode ==
MzansiInnovationHub.of(context)!
.theme
.mode ==
"Dark"),
),
),
@@ -191,5 +204,7 @@ class _MihFavouriteBusinessesState extends State<MihFavouriteBusinesses> {
],
),
);
},
);
}
}