Marino Faggiana 7 vuotta sitten
vanhempi
commit
00b98b0ffe

+ 2 - 12
PickerFileProvider/FileProvider.swift

@@ -705,18 +705,8 @@ class FileProvider: NSFileProviderExtension {
             return
         }
         
-        if tagData != nil {
-            // Add Tag
-            guard let tag = String(data: tagData!, encoding: .utf8) else {
-                completionHandler(nil, NSFileProviderError(.noSuchItem))
-                return
-            }
-            NCManageDatabase.sharedInstance.addTag(itemIdentifier.rawValue, tagIOS: tag)
-            
-        } else {
-            // Remove Tag
-            NCManageDatabase.sharedInstance.deleteTag(itemIdentifier.rawValue)
-        }
+        // Add, Remove (nil)
+        NCManageDatabase.sharedInstance.addTag(itemIdentifier.rawValue, tagIOS: tagData)
     }
     
     override func trashItem(withIdentifier itemIdentifier: NSFileProviderItemIdentifier, completionHandler: @escaping (NSFileProviderItem?, Error?) -> Void) {

+ 1 - 1
PickerFileProvider/FileProviderItem.swift

@@ -130,7 +130,7 @@ class FileProviderItem: NSObject, NSFileProviderItem {
         
         // Tag
         if let tableTag = NCManageDatabase.sharedInstance.getTag(predicate: NSPredicate(format: "account = %@ AND fileID = %@", metadata.account, metadata.fileID)) {
-            tagData = tableTag.tagIOS.data(using: .utf8)
+            tagData = tableTag.tagIOS
         }
     }
 }

+ 1 - 1
iOSClient/Database/NCDatabase.swift

@@ -281,7 +281,7 @@ class tableTag: Object {
     
     @objc dynamic var account = ""
     @objc dynamic var fileID = ""
-    @objc dynamic var tagIOS = ""
+    @objc dynamic var tagIOS: Data? = nil
     
     override static func primaryKey() -> String {
         return "fileID"

+ 3 - 3
iOSClient/Database/NCManageDatabase.swift

@@ -2703,7 +2703,7 @@ class NCManageDatabase: NSObject {
     //MARK: -
     //MARK: Table Tag
     
-    @objc func addTag(_ fileID: String ,tagIOS: String) {
+    @objc func addTag(_ fileID: String ,tagIOS: Data?) {
         
         guard let tableAccount = self.getAccountActive() else {
             return
@@ -2720,7 +2720,7 @@ class NCManageDatabase: NSObject {
                 addObject.account = tableAccount.account
                 addObject.fileID = fileID
                 addObject.tagIOS = tagIOS
-                
+    
                 realm.add(addObject, update: true)
             }
         } catch let error {
@@ -2765,7 +2765,7 @@ class NCManageDatabase: NSObject {
         
         let realm = try! Realm()
         
-        guard let result = realm.objects(tableMetadata.self).filter(predicate).first else {
+        guard let result = realm.objects(tableTag.self).filter(predicate).first else {
             return nil
         }