This commit is contained in:
Trey t
2023-07-29 12:03:40 -05:00
parent 1997abeff6
commit 173f39cc5f
7 changed files with 49 additions and 12 deletions

View File

@@ -20,11 +20,18 @@ class DataStore: ObservableObject {
public private(set) var allMuscles: [Muscle]?
public private(set) var allEquipment: [Equipment]?
public private(set) var allExercise: [Exercise]?
public private(set) var allNSFWVideos: [NSFWVideo]?
@Published public private(set) var status = DataStoreStatus.idle
private let fetchAllDataQueue = DispatchGroup()
public func randomVideoFor(gender: String) -> String? {
return allNSFWVideos?.filter({
$0.genderValue == gender
}).randomElement()?.videoFile ?? nil
}
public var workoutsUniqueUsers: [RegisteredUser]? {
guard let workouts = allWorkouts else {
return nil
@@ -41,6 +48,7 @@ class DataStore: ObservableObject {
fetchAllDataQueue.enter()
fetchAllDataQueue.enter()
fetchAllDataQueue.enter()
fetchAllDataQueue.enter()
fetchAllDataQueue.notify(queue: .main) {
self.status = .idle
@@ -73,7 +81,7 @@ class DataStore: ObservableObject {
switch result {
case .success(let model):
self.allEquipment = model.sorted(by: {
$0.name ?? "a" < $1.name ?? "a"
$0.name < $1.name
})
case .failure(let error):
print(error)
@@ -92,6 +100,16 @@ class DataStore: ObservableObject {
}
self.fetchAllDataQueue.leave()
})
AllNSFWVideosFetchable().fetch(completion: { result in
switch result {
case .success(let model):
self.allNSFWVideos = model
case .failure(let error):
print(error)
}
self.fetchAllDataQueue.leave()
})
}