Adding option to hide RaPla events

- Also made changes to home view, lecture plan list view, and added lecture plan item view
This commit is contained in:
2021-02-01 23:17:15 +01:00
committed by Patrick Müller
parent ea0b759007
commit b8c6d44000
7 changed files with 214 additions and 32 deletions
+3 -1
View File
@@ -134,6 +134,9 @@ class RaPlaFetcher {
} else {
let entity = NSEntityDescription.entity(forEntityName: "RaPlaEvent", in: PersistenceController.shared.context)!
evt = NSManagedObject(entity: entity, insertInto: PersistenceController.shared.context)
// Set default values for new object
evt.setValue(false, forKey: "isHidden")
}
evt.setValue(event.startDate, forKey: "startDate")
evt.setValue(event.endDate, forKey: "endDate")
@@ -150,7 +153,6 @@ class RaPlaFetcher {
// Locally stored event does not exist in RaPla anymore, delete it
let evt = existingEventsDict[localUid]
PersistenceController.shared.context.delete(evt!)
print("Deleted " + localUid)
}
}
+4 -1
View File
@@ -9,13 +9,16 @@ import Foundation
import CoreData
class UtilityFunctions {
public class func getCoreDataObject(entity: String, sortDescriptors: [NSSortDescriptor]) -> [NSManagedObject]{
public class func getCoreDataObject(entity: String, sortDescriptors: [NSSortDescriptor] = [], searchPredicate: NSPredicate? = nil) -> [NSManagedObject]{
let managedContext =
PersistenceController.shared.context
let fetchRequest =
NSFetchRequest<NSManagedObject>(entityName: entity)
fetchRequest.sortDescriptors = sortDescriptors
if(searchPredicate != nil) {
fetchRequest.predicate = searchPredicate
}
do {
return try managedContext.fetch(fetchRequest)