Browse Source

fix createFolder asset

Signed-off-by: Marino Faggiana <marino@marinofaggiana.com>
Marino Faggiana 2 years ago
parent
commit
01892ff1f5
1 changed files with 19 additions and 17 deletions
  1. 19 17
      iOSClient/Networking/NCNetworking.swift

+ 19 - 17
iOSClient/Networking/NCNetworking.swift

@@ -1007,22 +1007,10 @@ import Photos
 
     func createFolder(assets: [PHAsset], selector: String, useSubFolder: Bool, account: String, urlBase: String, userId: String) -> Bool {
 
+        let serverUrl = NCManageDatabase.shared.getAccountAutoUploadDirectory(urlBase: urlBase, userId: userId, account: account)
+        let fileName =  NCManageDatabase.shared.getAccountAutoUploadFileName()
         let autoUploadPath = NCManageDatabase.shared.getAccountAutoUploadPath(urlBase: urlBase, userId: userId, account: account)
-        let serverUrlBase = NCManageDatabase.shared.getAccountAutoUploadDirectory(urlBase: urlBase, userId: userId, account: account)
-        let fileNameBase =  NCManageDatabase.shared.getAccountAutoUploadFileName()
-
-        func createFolder(fileName: String, serverUrl: String) -> Bool {
-            var result: Bool = false
-            let semaphore = DispatchSemaphore(value: 0)
-            NCNetworking.shared.createFolder(fileName: fileName, serverUrl: serverUrl, account: account, urlBase: urlBase, userId: userId, overwrite: true) { error in
-                if error == .success { result = true }
-                semaphore.signal()
-            }
-            semaphore.wait()
-            return result
-        }
-
-        var result = createFolder(fileName: fileNameBase, serverUrl: serverUrlBase)
+        var result = createFolderWithSemaphore(fileName: fileName, serverUrl: serverUrl, account: account, urlBase: urlBase, userId: userId)
 
         if useSubFolder && result {
             for dateSubFolder in createNameSubFolder(assets: assets) {
@@ -1031,9 +1019,9 @@ import Photos
                 guard let month = yearMonth.last else { break }
                 let serverUrlYear = autoUploadPath
                 let serverUrlMonth = autoUploadPath + "/" + year
-                result = createFolder(fileName: String(year), serverUrl: serverUrlYear)
+                result = createFolderWithSemaphore(fileName: String(year), serverUrl: serverUrlYear, account: account, urlBase: urlBase, userId: userId)
                 if result {
-                    result = createFolder(fileName: String(month), serverUrl: serverUrlMonth)
+                    result = createFolderWithSemaphore(fileName: String(month), serverUrl: serverUrlMonth, account: account, urlBase: urlBase, userId: userId)
                 }
                 if !result { break }
             }
@@ -1042,6 +1030,20 @@ import Photos
         return result
     }
 
+    private func createFolderWithSemaphore(fileName: String, serverUrl: String, account: String, urlBase: String, userId: String) -> Bool {
+
+        var result: Bool = false
+        let semaphore = DispatchSemaphore(value: 0)
+
+        NCNetworking.shared.createFolder(fileName: fileName, serverUrl: serverUrl, account: account, urlBase: urlBase, userId: userId, overwrite: true) { error in
+            if error == .success { result = true }
+            semaphore.signal()
+        }
+        semaphore.wait()
+
+        return result
+    }
+
     func createNameSubFolder(assets: [PHAsset]) -> [String] {
 
         var datesSubFolder: [String] = []