marinofaggiana 4 éve
szülő
commit
7a446a49ca

+ 4 - 0
iOSClient/Main/Create cloud/NCCreateFormUploadConflict.swift

@@ -55,6 +55,7 @@ extension NCCreateFormUploadConflictDelegate {
     @objc var serverUrl: String?
     @objc weak var delegate: NCCreateFormUploadConflictDelegate?
     @objc var alwaysNewFileNameNumber: Bool = false
+    @objc var hideLabelNewFiles: Bool = false
     
     var metadatasConflictNewFiles = [String]()
     var metadatasConflictAlreadyExistingFiles = [String]()
@@ -381,6 +382,9 @@ extension NCCreateFormUploadConflict: UITableViewDataSource {
                 cell.switchNewFile.isHidden = true
             }
             
+            // Hide Detail new file
+            cell.labelDetailNewFile.isHidden = hideLabelNewFiles
+            
             return cell
         }
         

+ 1 - 0
iOSClient/Main/Create cloud/NCCreateFormUploadDocuments.swift

@@ -274,6 +274,7 @@ import NCCommunication
                 guard let metadata = CCUtility.createMetadata(withAccount: appDelegate.activeAccount, date: Date(), directory: false, ocId: "", serverUrl: serverUrl, fileName: String(describing: fileNameForm), etag: "", size: 0, status: 0, url: appDelegate.activeUrl, contentType: "") else { return }
                 
                 guard let conflictViewController = UIStoryboard(name: "NCCreateFormUploadConflict", bundle: nil).instantiateInitialViewController() as? NCCreateFormUploadConflict else { return }
+                conflictViewController.hideLabelNewFiles = true
                 conflictViewController.alwaysNewFileNameNumber = true
                 conflictViewController.serverUrl = serverUrl
                 conflictViewController.metadatasUploadInConflict = [metadata]

+ 27 - 16
iOSClient/Main/Create cloud/NCCreateFormUploadScanDocument.swift

@@ -29,7 +29,7 @@ import WeScan
 import GoogleMobileVision
 #endif
 
-class NCCreateFormUploadScanDocument: XLFormViewController, NCSelectDelegate {
+class NCCreateFormUploadScanDocument: XLFormViewController, NCSelectDelegate, NCCreateFormUploadConflictDelegate {
     
     enum typeDpiQuality {
         case low
@@ -406,26 +406,37 @@ class NCCreateFormUploadScanDocument: XLFormViewController, NCSelectDelegate {
             fileNameSave = (name as! NSString).deletingPathExtension + "." + fileType.lowercased()
         }
         
-        let metadata = NCManageDatabase.sharedInstance.getMetadata(predicate: NSPredicate(format: "account == %@ AND serverUrl == %@ AND fileNameView == %@", appDelegate.activeAccount, self.serverUrl, fileNameSave))
-        if (metadata != nil) {
-            
-            let alertController = UIAlertController(title: fileNameSave, message: NSLocalizedString("_file_already_exists_", comment: ""), preferredStyle: .alert)
-            
-            let cancelAction = UIAlertAction(title: NSLocalizedString("_cancel_", comment: ""), style: .default) { (action:UIAlertAction) in
-            }
+        let ocId = CCUtility.createMetadataID(fromAccount: self.appDelegate.activeAccount, serverUrl: serverUrl, fileNameView: fileNameSave, directory: false)!
+        
+        if NCUtility.sharedInstance.getMetadataConflict(account: appDelegate.activeAccount, serverUrl: serverUrl, fileName: fileNameSave) != nil {
             
-            let overwriteAction = UIAlertAction(title: NSLocalizedString("_overwrite_", comment: ""), style: .cancel) { (action:UIAlertAction) in
-                NCManageDatabase.sharedInstance.deleteMetadata(predicate: NSPredicate(format: "account == %@ AND serverUrl == %@ AND fileNameView == %@", self.appDelegate.activeAccount, self.serverUrl, fileNameSave))
-                self.dismissAndUpload(fileNameSave, ocId: CCUtility.createMetadataID(fromAccount: self.appDelegate.activeAccount, serverUrl: self.serverUrl, fileNameView: fileNameSave, directory: false)!, serverUrl: self.serverUrl)
-            }
+            guard let metadata = CCUtility.createMetadata(withAccount: appDelegate.activeAccount, date: Date(), directory: false, ocId: ocId, serverUrl: serverUrl, fileName: fileNameSave, etag: "", size: 0, status: 0, url: appDelegate.activeUrl, contentType: "") else { return }
             
-            alertController.addAction(cancelAction)
-            alertController.addAction(overwriteAction)
+            guard let conflictViewController = UIStoryboard(name: "NCCreateFormUploadConflict", bundle: nil).instantiateInitialViewController() as? NCCreateFormUploadConflict else { return }
+            conflictViewController.hideLabelNewFiles = true
+            conflictViewController.serverUrl = self.serverUrl
+            conflictViewController.metadatasUploadInConflict = [metadata]
+            conflictViewController.delegate = self
             
-            self.present(alertController, animated: true, completion:nil)
+            self.present(conflictViewController, animated: true, completion: nil)
             
         } else {
-            dismissAndUpload(fileNameSave, ocId: CCUtility.createMetadataID(fromAccount: appDelegate.activeAccount, serverUrl: serverUrl, fileNameView: fileNameSave, directory: false)!, serverUrl: serverUrl)
+                            
+            dismissAndUpload(fileNameSave, ocId: ocId, serverUrl: serverUrl)
+        }
+    }
+    
+    func dismissCreateFormUploadConflict(metadatas: [tableMetadata]?) {
+        
+        if metadatas != nil && metadatas!.count > 0 {
+                        
+            let fileName = metadatas![0].fileName
+            let ocId = metadatas![0].ocId
+            let serverUrl = metadatas![0].serverUrl
+            
+            DispatchQueue.main.asyncAfter(deadline: .now() + 0.3) {
+                self.dismissAndUpload(fileName, ocId: ocId, serverUrl: serverUrl)
+            }
         }
     }