wip
This commit is contained in:
@@ -9,11 +9,13 @@ import SwiftUI
|
||||
|
||||
enum SortType: String, CaseIterable {
|
||||
case name = "Name"
|
||||
case date = "Date"
|
||||
case createdDate = "Created Date"
|
||||
}
|
||||
|
||||
struct AllWorkoutsListView: View {
|
||||
@State var searchString: String = ""
|
||||
@State var searchNameString: String = ""
|
||||
@State var selectedMuscles: Set<String> = []
|
||||
@State var selectedEquipment: Set<String> = []
|
||||
@Binding var uniqueWorkoutUsers: [RegisteredUser]?
|
||||
@State private var filteredRegisterdUser: RegisteredUser?
|
||||
|
||||
@@ -30,7 +32,9 @@ struct AllWorkoutsListView: View {
|
||||
Text((filteredRegisterdUser.firstName ?? "NA") + "'s Workouts")
|
||||
}
|
||||
|
||||
FilterAllView(searchString: $searchString,
|
||||
FilterAllView(selectedMuscles: $selectedMuscles,
|
||||
selectedEquipment: $selectedEquipment,
|
||||
searchNameString: $searchNameString,
|
||||
uniqueWorkoutUsers: $uniqueWorkoutUsers,
|
||||
filteredRegisterdUser: $filteredRegisterdUser,
|
||||
filteredWorkouts: $filteredWorkouts,
|
||||
@@ -55,13 +59,28 @@ struct AllWorkoutsListView: View {
|
||||
refresh()
|
||||
}
|
||||
}
|
||||
.onChange(of: searchString) { newValue in
|
||||
filteredWorkouts = workouts.filterWorkouts(searchString: searchString, filteredRegisterdUser: filteredRegisterdUser)
|
||||
.onChange(of: searchNameString) { newValue in
|
||||
filterWorkouts()
|
||||
}
|
||||
.onChange(of: selectedMuscles) { newValue in
|
||||
filterWorkouts()
|
||||
}
|
||||
.onChange(of: selectedEquipment) { newValue in
|
||||
filterWorkouts()
|
||||
}
|
||||
.onAppear{
|
||||
filteredWorkouts = workouts.filterWorkouts(searchString: searchString, filteredRegisterdUser: filteredRegisterdUser)
|
||||
filterWorkouts()
|
||||
}
|
||||
}
|
||||
|
||||
func filterWorkouts() {
|
||||
filteredWorkouts = workouts.filterWorkouts(
|
||||
nameSearchString: searchNameString,
|
||||
musclesSearchString: selectedMuscles,
|
||||
equipmentSearchString: selectedEquipment,
|
||||
filteredRegisterdUser: filteredRegisterdUser
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
struct AllWorkoutsListView_Previews: PreviewProvider {
|
||||
|
||||
@@ -155,7 +155,7 @@ struct AllWorkoutsView: View {
|
||||
|
||||
healthStore.requestAuthorization(toShare: nil, read: healthKitTypes) { (succ, error) in
|
||||
if !succ {
|
||||
fatalError("Error requesting authorization from health store: \(String(describing: error)))")
|
||||
// fatalError("Error requesting authorization from health store: \(String(describing: error)))")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -76,19 +76,19 @@ struct CompletedWorkoutView: View {
|
||||
.onAppear{
|
||||
bridgeModule.sendWorkoutCompleteToWatch()
|
||||
}
|
||||
.onChange(of: bridgeModule.healthKitUUID, perform: { healthKitUUID in
|
||||
if let healthKitUUID = healthKitUUID {
|
||||
gettingHealthKitData = true
|
||||
healthKitHelper.getDetails(forHealthKitUUID: healthKitUUID,
|
||||
completion: { healthKitWorkoutData in
|
||||
guard let healthStore = healthKitWorkoutData else {
|
||||
return
|
||||
}
|
||||
self.healthKitWorkoutData = healthKitWorkoutData
|
||||
gettingHealthKitData = false
|
||||
})
|
||||
}
|
||||
})
|
||||
// .onChange(of: bridgeModule.healthKitUUID, perform: { healthKitUUID in
|
||||
// if let healthKitUUID = healthKitUUID {
|
||||
// gettingHealthKitData = true
|
||||
// healthKitHelper.getDetails(forHealthKitUUID: healthKitUUID,
|
||||
// completion: { healthKitWorkoutData in
|
||||
// guard let healthStore = healthKitWorkoutData else {
|
||||
// return
|
||||
// }
|
||||
// self.healthKitWorkoutData = healthKitWorkoutData
|
||||
// gettingHealthKitData = false
|
||||
// })
|
||||
// }
|
||||
// })
|
||||
}
|
||||
|
||||
func upload(postBody: [String: Any]) {
|
||||
|
||||
@@ -89,8 +89,6 @@ struct CreateExerciseActionsView: View {
|
||||
|
||||
Spacer()
|
||||
}
|
||||
|
||||
Divider()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,6 +26,7 @@ struct ExternalWorkoutDetailView: View {
|
||||
PlayerView(player: $avPlayer)
|
||||
.frame(width: metrics.size.width * 0.5, height: metrics.size.height * 0.8)
|
||||
.onAppear{
|
||||
avPlayer.isMuted = true
|
||||
avPlayer.play()
|
||||
}
|
||||
}
|
||||
@@ -48,6 +49,7 @@ struct ExternalWorkoutDetailView: View {
|
||||
.frame(width: metrics.size.width * 0.2,
|
||||
height: metrics.size.height * 0.2)
|
||||
.onAppear{
|
||||
avPlayer.isMuted = true
|
||||
avPlayer.play()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,6 +25,7 @@ struct ExerciseListView: View {
|
||||
exerciseName: self.videoExercise?.name,
|
||||
workout: bridgeModule.currentWorkoutInfo.workout) {
|
||||
avPlayer = AVPlayer(url: videoURL)
|
||||
avPlayer.isMuted = true
|
||||
avPlayer.play()
|
||||
}
|
||||
}
|
||||
@@ -137,6 +138,7 @@ struct ExerciseListView: View {
|
||||
.sheet(item: $videoExercise) { exercise in
|
||||
PlayerView(player: $avPlayer)
|
||||
.onAppear{
|
||||
avPlayer.isMuted = true
|
||||
avPlayer.play()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -46,6 +46,7 @@ struct WorkoutDetailView: View {
|
||||
PlayerView(player: $avPlayer)
|
||||
.frame(width: metrics.size.width * 1, height: metrics.size.height * 1)
|
||||
.onAppear{
|
||||
avPlayer.isMuted = true
|
||||
avPlayer.play()
|
||||
}
|
||||
|
||||
@@ -59,6 +60,7 @@ struct WorkoutDetailView: View {
|
||||
exerciseName: currentExtercise.exercise.name,
|
||||
workout: bridgeModule.currentWorkoutInfo.workout) {
|
||||
avPlayer = AVPlayer(url: otherVideoURL)
|
||||
avPlayer.isMuted = true
|
||||
avPlayer.play()
|
||||
}
|
||||
}, label: {
|
||||
@@ -169,6 +171,7 @@ struct WorkoutDetailView: View {
|
||||
exerciseName: currentExtercise.exercise.name,
|
||||
workout: bridgeModule.currentWorkoutInfo.workout) {
|
||||
avPlayer = AVPlayer(url: videoURL)
|
||||
avPlayer.isMuted = true
|
||||
avPlayer.play()
|
||||
}
|
||||
}
|
||||
@@ -181,6 +184,7 @@ struct WorkoutDetailView: View {
|
||||
}
|
||||
.onReceive(NotificationCenter.default.publisher(
|
||||
for: UIScene.willEnterForegroundNotification)) { _ in
|
||||
avPlayer.isMuted = true
|
||||
avPlayer.play()
|
||||
}
|
||||
}
|
||||
@@ -194,6 +198,7 @@ struct WorkoutDetailView: View {
|
||||
exerciseName: currentExtercise.exercise.name,
|
||||
workout: bridgeModule.currentWorkoutInfo.workout) {
|
||||
avPlayer = AVPlayer(url: videoURL)
|
||||
avPlayer.isMuted = true
|
||||
avPlayer.play()
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user