Browse Source

add Favorites on WorkingSet

Marino Faggiana 7 years ago
parent
commit
0cd1fbcf0a
1 changed files with 15 additions and 1 deletions
  1. 15 1
      PickerFileProvider/FileProviderEnumeratorWorkingSet.swift

+ 15 - 1
PickerFileProvider/FileProviderEnumeratorWorkingSet.swift

@@ -39,8 +39,8 @@ class FileProviderEnumeratorWorkingSet: NSObject, NSFileProviderEnumerator {
         
         var items: [NSFileProviderItemProtocol] = []
         
+        // Tag
         let tags = NCManageDatabase.sharedInstance.getTags(predicate: NSPredicate(format: "account = %@", account))
-        
         for tag in tags {
             
             if let metadata = NCManageDatabase.sharedInstance.getMetadata(predicate: NSPredicate(format: "account = %@ AND fileID = %@", account, tag.fileID))  {
@@ -54,6 +54,20 @@ class FileProviderEnumeratorWorkingSet: NSObject, NSFileProviderEnumerator {
             }
         }
         
+        // Favorite
+        let metadatas = NCManageDatabase.sharedInstance.getMetadatas(predicate: NSPredicate(format: "account = %@ AND favorite = true", account), sorted: "fileName", ascending: true)
+        if metadatas != nil {
+            for metadata in metadatas! {
+            
+                guard let serverUrl = NCManageDatabase.sharedInstance.getServerUrl(metadata.directoryID) else {
+                    continue
+                }
+                
+                let item = FileProviderItem(metadata: metadata, serverUrl: serverUrl)
+                items.append(item)
+            }
+        }
+        
         observer.didEnumerate(items)
         observer.finishEnumerating(upTo: nil)
     }