From f2d8b6735bd294cae4d213319a9e3245976684b8 Mon Sep 17 00:00:00 2001 From: Oliver Wiese <oliver.wiese@fu-berlin.de> Date: Fri, 6 Oct 2017 15:38:05 +0200 Subject: [PATCH] clean code --- enzevalos_iphone/DataHandler.swift | 7 ------- enzevalos_iphone/Folder+CoreDataProperties.swift | 13 +++++++++++++ enzevalos_iphone/KeyViewController.swift | 2 +- enzevalos_iphone/MailHandler.swift | 2 +- enzevalos_iphone/Onboarding.swift | 15 ++------------- .../PersistentMail +CoreDataProperties.swift | 2 ++ .../enzevalos_iphone.xcdatamodel/contents | 10 ++++++---- 7 files changed, 25 insertions(+), 26 deletions(-) diff --git a/enzevalos_iphone/DataHandler.swift b/enzevalos_iphone/DataHandler.swift index 97082950..02afc9a7 100644 --- a/enzevalos_iphone/DataHandler.swift +++ b/enzevalos_iphone/DataHandler.swift @@ -150,13 +150,6 @@ class DataHandler { let fReq = NSFetchRequest<NSFetchRequestResult>(entityName: "PersistentMail") let folderPredicate = NSPredicate(format: "folder = %@", folder) if withoutSecure { - var secure = [NSPredicate()] - secure.append(NSPredicate(format: "isEncrypted = false")) - secure.append(NSPredicate(format: "isSigned = false")) - secure.append(NSPredicate(format: "unableTODecrypt = true")) - secure.append(NSPredicate(format: "trouble = true")) - let secPredicates = NSCompoundPredicate(orPredicateWithSubpredicates: secure) - let predicates = NSCompoundPredicate(andPredicateWithSubpredicates: [secPredicates,folderPredicate]) fReq.predicate = NSPredicate(format: "folder = %@ AND (isEncrypted = false OR isSigned = false OR unableToDecrypt = true OR trouble = true)", folder) } else{ diff --git a/enzevalos_iphone/Folder+CoreDataProperties.swift b/enzevalos_iphone/Folder+CoreDataProperties.swift index a79c3b58..9b3c77cd 100644 --- a/enzevalos_iphone/Folder+CoreDataProperties.swift +++ b/enzevalos_iphone/Folder+CoreDataProperties.swift @@ -17,6 +17,7 @@ extension Folder { } @NSManaged public var parent: Folder? + @NSManaged public var subfolder: NSSet? @NSManaged public var mails: NSSet? @NSManaged public var path: String @NSManaged public var lastUpdate: Date? @@ -70,12 +71,24 @@ extension Folder { @objc(removeMailsObject:) @NSManaged public func removeFromMails(_ value: PersistentMail) + + @objc(addSubfolderObject:) + @NSManaged public func addToSubfolder(_ value: Folder) + + @objc(removeSubfolderObject:) + @NSManaged public func removeFromSubfolder(_ value: Folder) @objc(addMails:) @NSManaged public func addToMails(_ values: NSSet) @objc(removeMails:) @NSManaged public func removeFromMails(_ values: NSSet) + + @objc(addSubfolder:) + @NSManaged public func addToSubfolder(_ values: NSSet) + + @objc(removeSubfolder:) + @NSManaged public func removeFromSubfolder(_ values: NSSet) } diff --git a/enzevalos_iphone/KeyViewController.swift b/enzevalos_iphone/KeyViewController.swift index af1a67e3..689b8906 100644 --- a/enzevalos_iphone/KeyViewController.swift +++ b/enzevalos_iphone/KeyViewController.swift @@ -126,7 +126,7 @@ extension KeyViewController: UITableViewDataSource { func numberOfSections(in tableView: UITableView) -> Int { if let key = record?.storedKey { var sections = 1 - if let addrs = key.mailaddress, addrs != nil{ + if key.mailaddress != nil{ sections += 1 } return sections diff --git a/enzevalos_iphone/MailHandler.swift b/enzevalos_iphone/MailHandler.swift index 2b31a23a..d6e7e0aa 100644 --- a/enzevalos_iphone/MailHandler.swift +++ b/enzevalos_iphone/MailHandler.swift @@ -464,7 +464,7 @@ class MailHandler { } let ids = indices as MCOIndexSet? - if var setOfIndices = ids { + if let setOfIndices = ids { for mail in record.mails { setOfIndices.remove(mail.uid) } diff --git a/enzevalos_iphone/Onboarding.swift b/enzevalos_iphone/Onboarding.swift index cfa6ff7c..c72f55a3 100644 --- a/enzevalos_iphone/Onboarding.swift +++ b/enzevalos_iphone/Onboarding.swift @@ -35,10 +35,6 @@ class Onboarding: NSObject { static var smtpTransportEncryption = UIPickerView.init() static var smtpTransDataDelegate = PickerDataDelegate.init(rows: ["a", "b", "c"]) static var background = UIImage.init() - static var smtpCheck = false - static var smtpCheckDone = false - static var imapCheck = false - static var imapCheckDone = false static var manualSet = false static let font = UIFont.init(name: "Helvetica-Light", size: 28) @@ -467,8 +463,6 @@ class Onboarding: NSObject { } static func checkConfig(_ fail: @escaping () -> (), work: @escaping () -> ()) -> Bool { - smtpCheckDone = false - imapCheckDone = false self.work = work self.fail = fail AppDelegate.getAppDelegate().mailHandler.checkIMAP(imapCompletion) @@ -476,10 +470,7 @@ class Onboarding: NSObject { } static func imapCompletion(_ error: Error?) { //FIXME: vorher NSError? Mit Error? immer noch gültig? - imapCheckDone = true - imapCheck = error == nil // TODO: @Jakob das verstehe ich nicht - print(error) - if imapCheck { + if error == nil { AppDelegate.getAppDelegate().mailHandler.checkSMTP(smtpCompletion) return } @@ -487,9 +478,7 @@ class Onboarding: NSObject { } static func smtpCompletion(_ error: Error?) { //FIXME: vorher NSError? Mit Error? immer noch gültig? - smtpCheckDone = true - smtpCheck = error == nil - if smtpCheck { + if error == nil { work() return } diff --git a/enzevalos_iphone/PersistentMail +CoreDataProperties.swift b/enzevalos_iphone/PersistentMail +CoreDataProperties.swift index 6098b58a..38c425b3 100644 --- a/enzevalos_iphone/PersistentMail +CoreDataProperties.swift +++ b/enzevalos_iphone/PersistentMail +CoreDataProperties.swift @@ -50,6 +50,8 @@ extension PersistentMail { @NSManaged public var unableToDecrypt: Bool @NSManaged public var subject: String? @NSManaged public var folder: Folder + @NSManaged public var firstKey: PersistentKey? + public var trouble: Bool{ set { self.willChangeValue(forKey: "trouble") diff --git a/enzevalos_iphone/enzevalos_iphone.xcdatamodeld/enzevalos_iphone.xcdatamodel/contents b/enzevalos_iphone/enzevalos_iphone.xcdatamodeld/enzevalos_iphone.xcdatamodel/contents index 11e7b57a..4c25f779 100644 --- a/enzevalos_iphone/enzevalos_iphone.xcdatamodeld/enzevalos_iphone.xcdatamodel/contents +++ b/enzevalos_iphone/enzevalos_iphone.xcdatamodeld/enzevalos_iphone.xcdatamodel/contents @@ -12,7 +12,8 @@ <attribute name="maxID" optional="YES" attributeType="Decimal" defaultValueString="1" syncable="YES"/> <attribute name="path" attributeType="String" syncable="YES"/> <relationship name="mails" optional="YES" toMany="YES" deletionRule="Nullify" destinationEntity="PersistentMail" inverseName="folder" inverseEntity="PersistentMail" syncable="YES"/> - <relationship name="parent" optional="YES" maxCount="1" deletionRule="Nullify" destinationEntity="Folder" syncable="YES"/> + <relationship name="parent" optional="YES" maxCount="1" deletionRule="Nullify" destinationEntity="Folder" inverseName="subfolder" inverseEntity="Folder" syncable="YES"/> + <relationship name="subfolder" optional="YES" toMany="YES" deletionRule="Nullify" destinationEntity="Folder" inverseName="parent" inverseEntity="Folder" syncable="YES"/> </entity> <entity name="Mail_Address" representedClassName="Mail_Address" syncable="YES"> <attribute name="address" attributeType="String" defaultValueString="""" syncable="YES"/> @@ -31,7 +32,7 @@ <attribute name="lastSeenAutocrypt" optional="YES" attributeType="Date" usesScalarValueType="NO" syncable="YES"/> <attribute name="preferEncryption" optional="YES" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES" syncable="YES"/> <attribute name="verifiedDate" optional="YES" attributeType="Date" usesScalarValueType="NO" syncable="YES"/> - <relationship name="firstMail" optional="YES" maxCount="1" deletionRule="Nullify" destinationEntity="PersistentMail" syncable="YES"/> + <relationship name="firstMail" optional="YES" maxCount="1" deletionRule="Nullify" destinationEntity="PersistentMail" inverseName="firstKey" inverseEntity="PersistentMail" syncable="YES"/> <relationship name="mailaddress" toMany="YES" deletionRule="Nullify" destinationEntity="Mail_Address" inverseName="key" inverseEntity="Mail_Address" syncable="YES"/> </entity> <entity name="PersistentMail" representedClassName="PersistentMail" syncable="YES"> @@ -50,6 +51,7 @@ <attribute name="visibleBody" optional="YES" attributeType="String" syncable="YES"/> <relationship name="bcc" optional="YES" toMany="YES" deletionRule="Nullify" destinationEntity="Mail_Address" inverseName="bcc" inverseEntity="Mail_Address" syncable="YES"/> <relationship name="cc" optional="YES" toMany="YES" deletionRule="Nullify" destinationEntity="Mail_Address" inverseName="cc" inverseEntity="Mail_Address" syncable="YES"/> + <relationship name="firstKey" optional="YES" maxCount="1" deletionRule="Nullify" destinationEntity="PersistentKey" inverseName="firstMail" inverseEntity="PersistentKey" syncable="YES"/> <relationship name="folder" maxCount="1" deletionRule="Nullify" destinationEntity="Folder" inverseName="mails" inverseEntity="Folder" syncable="YES"/> <relationship name="from" maxCount="1" deletionRule="Nullify" destinationEntity="Mail_Address" inverseName="from" inverseEntity="Mail_Address" syncable="YES"/> <relationship name="to" toMany="YES" deletionRule="Nullify" destinationEntity="Mail_Address" inverseName="to" inverseEntity="Mail_Address" syncable="YES"/> @@ -62,10 +64,10 @@ <fetchRequest name="getMailAddress" entity="Mail_Address" predicateString="address == "$adr""/> <elements> <element name="EnzevalosContact" positionX="-209" positionY="198" width="128" height="90"/> - <element name="Folder" positionX="-297" positionY="-18" width="128" height="150"/> + <element name="Folder" positionX="-297" positionY="-18" width="128" height="165"/> <element name="Mail_Address" positionX="-297" positionY="-18" width="128" height="150"/> <element name="PersistentKey" positionX="-315" positionY="-36" width="128" height="180"/> - <element name="PersistentMail" positionX="-416" positionY="-189" width="128" height="315"/> + <element name="PersistentMail" positionX="-416" positionY="-189" width="128" height="330"/> <element name="SecretKey" positionX="-306" positionY="-27" width="128" height="75"/> </elements> </model> \ No newline at end of file -- GitLab