From 68c784364c39bab022cd510d893b98dc2652e2ef Mon Sep 17 00:00:00 2001 From: hannes <hannes@gfzdfuz.de> Date: Tue, 18 May 2021 14:15:07 +0200 Subject: [PATCH] not quite finished, but at least mails show up --- .../SwiftUI/Inbox/categorized/Home.swift | 3 +++ .../DataModel2.xcdatamodel/contents | 2 +- .../persistentData/PersistentDataProvider.swift | 12 ++++++++++++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/enzevalos_iphone/SwiftUI/Inbox/categorized/Home.swift b/enzevalos_iphone/SwiftUI/Inbox/categorized/Home.swift index edfe86ec..da6db794 100644 --- a/enzevalos_iphone/SwiftUI/Inbox/categorized/Home.swift +++ b/enzevalos_iphone/SwiftUI/Inbox/categorized/Home.swift @@ -51,6 +51,9 @@ struct InboxHome: View { var body: some View { NavigationView{ VStack{ + #if DEBUG //&& false + Button(action: {PersistentDataProvider.dataProvider.resetCategories()}, label: {Text("reset")}) + #endif topSection if controller.isHome{ whenHome }else{ whenNotHome } }//.animation(.easeInOut) diff --git a/enzevalos_iphone/persistentData/DataModel.xcdatamodeld/DataModel2.xcdatamodel/contents b/enzevalos_iphone/persistentData/DataModel.xcdatamodeld/DataModel2.xcdatamodel/contents index 86587bd1..6a049066 100644 --- a/enzevalos_iphone/persistentData/DataModel.xcdatamodeld/DataModel2.xcdatamodel/contents +++ b/enzevalos_iphone/persistentData/DataModel.xcdatamodeld/DataModel2.xcdatamodel/contents @@ -75,7 +75,7 @@ <relationship name="ccAddresses" optional="YES" toMany="YES" deletionRule="Nullify" destinationEntity="AddressRecord" inverseName="inCCField" inverseEntity="AddressRecord"/> <relationship name="decryptionKey" optional="YES" maxCount="1" deletionRule="Nullify" destinationEntity="SecretKeyRecord" inverseName="decryptedMails" inverseEntity="SecretKeyRecord"/> <relationship name="fromAddress" optional="YES" maxCount="1" deletionRule="Nullify" destinationEntity="AddressRecord" inverseName="inFromField" inverseEntity="AddressRecord"/> - <relationship name="inCategory" optional="YES" maxCount="1" deletionRule="Nullify" destinationEntity="CategoryRecord"/> + <relationship name="inCategory" optional="YES" toMany="YES" deletionRule="Nullify" destinationEntity="CategoryRecord"/> <relationship name="includedAttachments" optional="YES" toMany="YES" deletionRule="Cascade" destinationEntity="AttachmentRecord" inverseName="isPartOfMail" inverseEntity="AttachmentRecord"/> <relationship name="inFolder" optional="YES" maxCount="1" deletionRule="Nullify" destinationEntity="FolderRecord" inverseName="mailsInFolder" inverseEntity="FolderRecord"/> <relationship name="signatureKey" optional="YES" maxCount="1" deletionRule="Nullify" destinationEntity="PublicKeyRecord" inverseName="signedMails" inverseEntity="PublicKeyRecord"/> diff --git a/enzevalos_iphone/persistentData/PersistentDataProvider.swift b/enzevalos_iphone/persistentData/PersistentDataProvider.swift index f953d869..0ef76ba3 100644 --- a/enzevalos_iphone/persistentData/PersistentDataProvider.swift +++ b/enzevalos_iphone/persistentData/PersistentDataProvider.swift @@ -540,6 +540,18 @@ class PersistentDataProvider { } + func resetCategories(){ + let fetchRequest = NSFetchRequest<NSFetchRequestResult>(entityName: CategoryRecord.entityName) + let deleteRequest = NSBatchDeleteRequest(fetchRequest: fetchRequest) + do { + try self.newTaskContext().execute(deleteRequest) + debugPrint("Deleted Entitie - ", CategoryRecord.entityName) + } catch let error as NSError { + debugPrint("Delete ERROR \(CategoryRecord.entityName)") + debugPrint(error) + } + } + func reset(){ persistentContainer.viewContext.reset() } -- GitLab