44 lines
1.5 KiB
Swift
44 lines
1.5 KiB
Swift
//
|
|
// PersistenceUPDATE.swift
|
|
// Feels
|
|
//
|
|
// Created by Trey Tartt on 2/18/22.
|
|
//
|
|
|
|
import Foundation
|
|
|
|
extension PersistenceController {
|
|
@discardableResult
|
|
public func update(entryDate: Date, withModd mood: Mood) -> Bool {
|
|
do {
|
|
if let entry = PersistenceController.shared.getEntry(byDate: entryDate) {
|
|
viewContext.delete(entry)
|
|
}
|
|
|
|
try viewContext.save()
|
|
} catch {
|
|
// Replace this implementation with code to handle the error appropriately.
|
|
// fatalError() causes the application to generate a crash log and terminate. You should not use this function in a shipping application, although it may be useful during development.
|
|
let nsError = error as NSError
|
|
fatalError("Unresolved error \(nsError), \(nsError.userInfo)")
|
|
return false
|
|
}
|
|
|
|
|
|
|
|
do {
|
|
add(mood: mood, forDate: entryDate, entryType: .listView)
|
|
try viewContext.save()
|
|
} catch {
|
|
// Replace this implementation with code to handle the error appropriately.
|
|
// fatalError() causes the application to generate a crash log and terminate. You should not use this function in a shipping application, although it may be useful during development.
|
|
let nsError = error as NSError
|
|
fatalError("Unresolved error \(nsError), \(nsError.userInfo)")
|
|
return false
|
|
}
|
|
|
|
runDataListeners()
|
|
return true
|
|
}
|
|
}
|