Mih File Structure enhancement
This commit is contained in:
104
Frontend/lib/mih_providers/mzansi_directory_provider.dart
Normal file
104
Frontend/lib/mih_providers/mzansi_directory_provider.dart
Normal file
@@ -0,0 +1,104 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:geolocator/geolocator.dart';
|
||||
import 'package:mzansi_innovation_hub/mih_objects/app_user.dart';
|
||||
import 'package:mzansi_innovation_hub/mih_objects/bookmarked_business.dart';
|
||||
import 'package:mzansi_innovation_hub/mih_objects/business.dart';
|
||||
|
||||
class MzansiDirectoryProvider extends ChangeNotifier {
|
||||
int toolIndex;
|
||||
Position? userPosition;
|
||||
String userLocation;
|
||||
bool personalSearch;
|
||||
List<BookmarkedBusiness> bookmarkedBusinesses = [];
|
||||
List<Business>? favouriteBusinessesList;
|
||||
List<Business>? searchedBusinesses;
|
||||
Business? selectedBusiness;
|
||||
List<AppUser>? searchedUsers;
|
||||
AppUser? selectedUser;
|
||||
String searchTerm;
|
||||
String businessTypeFilter;
|
||||
|
||||
MzansiDirectoryProvider({
|
||||
this.toolIndex = 0,
|
||||
this.personalSearch = true,
|
||||
this.userLocation = "Unknown Location",
|
||||
this.searchTerm = "",
|
||||
this.businessTypeFilter = "",
|
||||
});
|
||||
|
||||
void reset() {
|
||||
toolIndex = 0;
|
||||
userPosition = null;
|
||||
userLocation = "Unknown Location";
|
||||
personalSearch = true;
|
||||
bookmarkedBusinesses = [];
|
||||
searchedBusinesses = null;
|
||||
selectedBusiness = null;
|
||||
searchedUsers = null;
|
||||
selectedUser = null;
|
||||
searchTerm = "";
|
||||
businessTypeFilter = "";
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
void setToolIndex(int index) {
|
||||
toolIndex = index;
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
void setUserPosition(Position? position) {
|
||||
userPosition = position;
|
||||
if (position == null) {
|
||||
userLocation = "Unknown Location";
|
||||
} else {
|
||||
userLocation = "${position.latitude}, ${position.longitude}";
|
||||
}
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
void setPersonalSearch(bool personal) {
|
||||
personalSearch = personal;
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
void setBookmarkedeBusinesses(
|
||||
{required List<BookmarkedBusiness> businesses}) {
|
||||
bookmarkedBusinesses = businesses;
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
void setFavouriteBusinesses({required List<Business> businesses}) {
|
||||
favouriteBusinessesList = businesses;
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
void setSearchedBusinesses({required List<Business> searchedBusinesses}) {
|
||||
this.searchedBusinesses = searchedBusinesses;
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
void setSelectedBusiness({required Business business}) {
|
||||
selectedBusiness = business;
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
void setSearchedUsers({required List<AppUser> searchedUsers}) {
|
||||
this.searchedUsers = searchedUsers;
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
void setSelectedUser({required AppUser user}) {
|
||||
selectedUser = user;
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
void setSearchTerm({required String searchTerm}) {
|
||||
this.searchTerm = searchTerm;
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
void setBusinessTypeFilter({required String businessTypeFilter}) {
|
||||
this.businessTypeFilter = businessTypeFilter;
|
||||
notifyListeners();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user