diff --git a/enzevalos_iphone/SwiftUI/Inbox/categorized/Home.swift b/enzevalos_iphone/SwiftUI/Inbox/categorized/Home.swift index edfe86eca84aff2b0b604704d5502d02910f3c5c..da6db7944f2b6d5ffdd8fd466e26e68906950855 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 86587bd19bd9a79f75db10ee112f50625cee4d25..6a049066770ae72d015ed0741f4acca75b3cd1c7 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 f953d869afdbde7d483bb704611f457e8090135c..0ef76ba3351f44348b611de72ef340dd38e65acd 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() }