From 2727467fd95284e20ffed2856f84727823d9747f Mon Sep 17 00:00:00 2001 From: oliverhnat Date: Wed, 10 Apr 2024 13:48:04 +0200 Subject: [PATCH] App working again --- WordAX/Views/FlashCardView.swift | 1 - WordAX/Views/NextRepetitionButtonView.swift | 16 ++++++++++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/WordAX/Views/FlashCardView.swift b/WordAX/Views/FlashCardView.swift index 177b736..9c49503 100644 --- a/WordAX/Views/FlashCardView.swift +++ b/WordAX/Views/FlashCardView.swift @@ -24,7 +24,6 @@ struct FlashCardView: View { Text("Last seen: " + model.getDateFormatter().string(from: flashcard.lastSeenOn!)) .font(.subheadline) } - Text("Next spaced repetition milestone: \(flashcard.nextSpacedRepetitionMilestone)") if showDescription { flashcardText .textSelection(.enabled) diff --git a/WordAX/Views/NextRepetitionButtonView.swift b/WordAX/Views/NextRepetitionButtonView.swift index 9bdffe9..2c12811 100644 --- a/WordAX/Views/NextRepetitionButtonView.swift +++ b/WordAX/Views/NextRepetitionButtonView.swift @@ -6,6 +6,7 @@ // import SwiftUI +import CoreData struct NextRepetitionButtonView: View { let buttonText: String @@ -15,14 +16,25 @@ struct NextRepetitionButtonView: View { let color: Color let geometry: GeometryProxy let timeText: String + @Environment(\.managedObjectContext) var moc // { colorScheme == .light ? .cyan : .darkCyan } @Binding var showDescription: Bool @EnvironmentObject var model: WordAXModelView @Environment(\.colorScheme) var colorScheme var body: some View { Button(action: { - // TODO: Fix this anki button clicked function -// model.ankiButtonClicked(flashcardId: flashcardId, milestone: nextMilestone) + let request = NSFetchRequest(entityName: "Flashcard") + request.predicate = NSPredicate(format: "id == %@", flashcardId as CVarArg) + do { + let result = try moc.fetch(request) + let flashcard = result.first + flashcard?.lastSeenOn = Date() + flashcard?.nextSpacedRepetitionMilestone = nextMilestone?.rawValue ?? 0 + flashcard?.shownCount += 1 + try moc.save() + } catch { + print("Something went wrong while saving the flashcard info: \(error.localizedDescription)") + } self.showDescription = false }) { VStack {