Fixes graph data

main
Laurent 3 years ago
parent e7e447f799
commit 5bee77c3b0
  1. 2
      LeCountdown/Sound/DelaySoundPlayer.swift
  2. 15
      LeCountdown/Stats/Context+Calculations.swift
  3. 2
      LeCountdown/Views/Stats/ActivityView.swift
  4. 23
      LeCountdown/Views/Stats/RecordsView.swift

@ -28,8 +28,6 @@ import AVFoundation
try audioSession.setCategory(.playback, options: .duckOthers)
try audioSession.setActive(true)
// MPMusicPlayerController.applicationMusicPlayer.volume = 1.0
let player = try AVAudioPlayer(contentsOf: url)
player.prepareToPlay()
player.volume = 1.0

@ -36,15 +36,15 @@ extension NSManagedObjectContext {
let fetchRequest = NSFetchRequest<NSFetchRequestResult>(entityName: "Record")
let basePredicate = NSPredicate(format: "start != nil")
let basePredicate = NSPredicate(format: "start != nil AND activity = %@", activity)
var predicates: [NSPredicate] = []
predicates.append(basePredicate)
predicates.append(NSPredicate(format: "activity = %@", activity))
if let filter {
predicates.append(filter.predicate)
}
fetchRequest.predicate = NSCompoundPredicate.init(andPredicateWithSubpredicates: predicates)
let finalPredicate = NSCompoundPredicate(andPredicateWithSubpredicates: predicates)
fetchRequest.predicate = finalPredicate
fetchRequest.propertiesToFetch = expressions
fetchRequest.resultType = NSFetchRequestResultType.dictionaryResultType
@ -77,10 +77,9 @@ extension NSManagedObjectContext {
if let value {
let request = Record.fetchRequest()
if let filter {
request.predicate = NSCompoundPredicate(andPredicateWithSubpredicates: [basePredicate, filter.predicate])
request.sortDescriptors = [NSSortDescriptor(key: "start", ascending: true)]
}
request.predicate = finalPredicate
request.sortDescriptors = [NSSortDescriptor(key: "start", ascending: true)]
let records: [Record] = try self.fetch(request)
let points: [Point] = records.compactMap { $0.point(stat:stat) }

@ -36,7 +36,6 @@ struct ActivityView: View {
let filters = self.selectedTimeFrame.filters(context: viewContext)
RecordsView(activity: self.activity, filters: filters)
.environment(\.managedObjectContext, viewContext)
// }
}
}
@ -104,5 +103,6 @@ enum TimeFrame: Int, Identifiable, CaseIterable {
struct ActivityView_Previews: PreviewProvider {
static var previews: some View {
ActivityView(activity: Activity.fake(context: PersistenceController.preview.container.viewContext), selectedTimeFrame: .all)
.environment(\.managedObjectContext, PersistenceController.preview.container.viewContext)
}
}

@ -23,24 +23,8 @@ struct RecordsView: View {
@Environment(\.managedObjectContext) private var viewContext
let activity: Activity
let filters: [Filter]
// let timeFrame: TimeFrame {
// didSet {
// self._loadFilters()
// }
// }
// @StateObject var model: RecordsModel = RecordsModel()
// var request: FetchRequest<Record>
// init(activity: Activity, timeFrame: TimeFrame) {
// self.activity = activity
// self.timeFrame = timeFrame
// }
var body: some View {
Section {
@ -51,10 +35,6 @@ struct RecordsView: View {
}
}
// fileprivate func _loadFilters() {
// self.model.loadFilters(activity: self.activity, timeFrame: self.timeFrame, context: self.viewContext)
// }
}
class RecordsSectionModel: ObservableObject {
@ -135,6 +115,7 @@ struct RecordsView_Previews: PreviewProvider {
static var previews: some View {
RecordsView(activity:
Activity.fake(context: PersistenceController.preview.container.viewContext),
filters: [])
filters: [Filter.none])
.environment(\.managedObjectContext, PersistenceController.preview.container.viewContext)
}
}

Loading…
Cancel
Save