Marino Faggiana 7 жил өмнө
parent
commit
6db1a75947

+ 0 - 4
Nextcloud.xcodeproj/project.pbxproj

@@ -129,7 +129,6 @@
 		F726EEEC1FED1C820030B9C8 /* NCEndToEndInitialize.swift in Sources */ = {isa = PBXBuildFile; fileRef = F726EEEB1FED1C820030B9C8 /* NCEndToEndInitialize.swift */; };
 		F72AAECA1E5C60C700BB17E1 /* AHKActionSheet.m in Sources */ = {isa = PBXBuildFile; fileRef = F72AAEC31E5C60C700BB17E1 /* AHKActionSheet.m */; };
 		F72AAECB1E5C60C700BB17E1 /* AHKActionSheetViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F72AAEC51E5C60C700BB17E1 /* AHKActionSheetViewController.m */; };
-		F730A64F20A9E58100551B2B /* FileProviderItemNC.swift in Sources */ = {isa = PBXBuildFile; fileRef = F730A64E20A9E58100551B2B /* FileProviderItemNC.swift */; };
 		F732B3371E8045A1002B7D75 /* SwiftWebVC.strings in Resources */ = {isa = PBXBuildFile; fileRef = F732B3351E8045A1002B7D75 /* SwiftWebVC.strings */; };
 		F732BA061D76CE1500E9878B /* CCNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = F732BA041D76CE1500E9878B /* CCNetworking.m */; };
 		F732BA0B1D76DBA500E9878B /* CCNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = F732BA041D76CE1500E9878B /* CCNetworking.m */; };
@@ -809,7 +808,6 @@
 		F72AAEC51E5C60C700BB17E1 /* AHKActionSheetViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AHKActionSheetViewController.m; sourceTree = "<group>"; };
 		F73049B81CB567F000C7C320 /* NSString+TruncateToWidth.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+TruncateToWidth.h"; sourceTree = "<group>"; };
 		F73049B91CB567F000C7C320 /* NSString+TruncateToWidth.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+TruncateToWidth.m"; sourceTree = "<group>"; };
-		F730A64E20A9E58100551B2B /* FileProviderItemNC.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FileProviderItemNC.swift; sourceTree = "<group>"; };
 		F7320931201B812F008A0888 /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = ko.lproj/CTAssetsPicker.strings; sourceTree = "<group>"; };
 		F7320932201B812F008A0888 /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = ko.lproj/SwiftWebVC.strings; sourceTree = "<group>"; };
 		F7320933201B812F008A0888 /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = ko.lproj/BKPasscodeView.strings; sourceTree = "<group>"; };
@@ -2168,7 +2166,6 @@
 				F7496B7B208F548E004B299C /* FileProviderEnumerator.swift */,
 				F75EAC4C20974B470071FF95 /* FileProviderEnumeratorWorkingSet.swift */,
 				F75EAC4E20974B5E0071FF95 /* FileProviderEnumeratorFile.swift */,
-				F730A64E20A9E58100551B2B /* FileProviderItemNC.swift */,
 				F7496B7C208F548E004B299C /* FileProviderItem.swift */,
 				F74344241E1264EE001CC831 /* FileProvider.swift */,
 			);
@@ -3768,7 +3765,6 @@
 				F7BB50CA1F22386700C47094 /* OCCapabilities.m in Sources */,
 				F7BB50CE1F22388000C47094 /* OCNotifications.m in Sources */,
 				F7BB50CC1F22387900C47094 /* OCExternalSites.m in Sources */,
-				F730A64F20A9E58100551B2B /* FileProviderItemNC.swift in Sources */,
 				F7BB50EA1F2238FB00C47094 /* UIScrollView+EmptyDataSet.m in Sources */,
 				F7F878B11FB9E3B900599E4F /* NCEndToEndMetadata.swift in Sources */,
 				F75EAC4D20974B470071FF95 /* FileProviderEnumeratorWorkingSet.swift in Sources */,

+ 1 - 1
Picker/DocumentPickerViewController.swift

@@ -480,7 +480,7 @@ extension DocumentPickerViewController {
                     
                         // Upload fileName to Cloud
                     
-                        CCNetworking.shared().uploadFile(fileName, serverUrl: self!.serverUrl, assetLocalIdentifier: nil, fileID: "",session: k_upload_session_foreground, taskStatus: Int(k_taskStatusResume), selector: "", selectorPost: "", errorCode: 0, delegate: self)
+                        CCNetworking.shared().uploadFile(fileName, serverUrl: self!.serverUrl, assetLocalIdentifier: nil, session: k_upload_session_foreground, taskStatus: Int(k_taskStatusResume), selector: "", selectorPost: "", errorCode: 0, delegate: self)
                         
                         self!.hud.visibleHudTitle(NSLocalizedString("_uploading_", comment: ""), mode: MBProgressHUDMode.determinate, color: NCBrandColor.sharedInstance.brandElement)
                     }

+ 36 - 96
PickerFileProvider/FileProvider.swift

@@ -37,14 +37,15 @@ var directoryUser = ""
 // Directory
 var groupURL: URL?
 var fileProviderStorageURL: URL?
-var importDocumentURL: URL?
-var changeDocumentURL: URL?
 
 // List
 var listUpdateItems = [NSFileProviderItem]()
 var listFavoriteIdentifierRank = [String:NSNumber]()
 var fileNamePathImport = [String]()
 
+// Metadata Temp for Import
+let FILEID_IMPORT_METADATA_TEMP = k_uploadSessionID + "FILE_PROVIDER_EXTENSION"
+
 var timerUpload: Timer?
 
 class FileProvider: NSFileProviderExtension, CCNetworkingDelegate {
@@ -337,8 +338,6 @@ class FileProvider: NSFileProviderExtension, CCNetworkingDelegate {
             
             let fileName = url.lastPathComponent
             let pathComponents = url.pathComponents
-            let changeDocumentPath = changeDocumentURL!.path + "/" + fileName
-            let importDocumentPath = importDocumentURL!.path + "/" + fileName
             let metadataNet = CCMetadataNet()
 
             assert(pathComponents.count > 2)
@@ -352,19 +351,13 @@ class FileProvider: NSFileProviderExtension, CCNetworkingDelegate {
                 return
             }
             
-            // Refresh
-            self.refreshEnumerator(identifier: identifier, serverUrl: serverUrl)
-            
             // Copy file to Change Document & if exists on Import Document
-            _ = self.copyFile(url.path, toPath: changeDocumentPath)
-            if FileManager.default.fileExists(atPath: importDocumentPath) {
-                _ = self.copyFile(url.path, toPath: importDocumentPath)
-            }
-                
+            _ = self.copyFile(url.path, toPath: fileProviderStorageURL!.path + "/" + fileName)
+            
             metadataNet.account = account
             metadataNet.assetLocalIdentifier = k_assetLocalIdentifierFileProviderStorage + identifier.rawValue
             metadataNet.fileName = fileName
-            metadataNet.path = changeDocumentPath
+            metadataNet.path = fileProviderStorageURL!.path + "/" + fileName
             metadataNet.selector = selectorUploadFile
             metadataNet.selectorPost = ""
             metadataNet.serverUrl = serverUrl
@@ -429,7 +422,7 @@ class FileProvider: NSFileProviderExtension, CCNetworkingDelegate {
                 
                 _ = self.copyFile(url.path, toPath: destinationDirectoryUser)
 
-                CCNetworking.shared().uploadFile(fileName, serverUrl: serverUrl, assetLocalIdentifier: nil, fileID: "", session: k_upload_session, taskStatus: Int(k_taskStatusResume), selector: nil, selectorPost: nil, errorCode: 0, delegate: self)
+                CCNetworking.shared().uploadFile(fileName, serverUrl: serverUrl, assetLocalIdentifier: nil, session: k_upload_session, taskStatus: Int(k_taskStatusResume), selector: nil, selectorPost: nil, errorCode: 0, delegate: self)
             }
 
             self.stopProvidingItem(at: url)
@@ -870,7 +863,6 @@ class FileProvider: NSFileProviderExtension, CCNetworkingDelegate {
             return
         }
         
-        var fileName = fileURL.lastPathComponent
         let fileCoordinator = NSFileCoordinator()
         var error: NSError?
         var directoryPredicate: NSPredicate
@@ -896,68 +888,54 @@ class FileProvider: NSFileProviderExtension, CCNetworkingDelegate {
             return
         }
         
-        fileName = createFileName(fileName, directoryID: directoryParent.directoryID, serverUrl: serverUrl)
-        
-        let fileNameLocalPath = importDocumentURL!.appendingPathComponent(fileName)
-        
+        let fileName = createFileName(fileURL.lastPathComponent, directoryID: directoryParent.directoryID, serverUrl: serverUrl)
+                
         fileCoordinator.coordinate(readingItemAt: fileURL, options: NSFileCoordinator.ReadingOptions.withoutChanges, error: &error) { (url) in
-            _ = self.copyFile( url.path, toPath: fileNameLocalPath.path)
+            _ = self.copyFile(url.path, toPath: fileProviderStorageURL!.path + "/" + fileName)
         }
             
         fileURL.stopAccessingSecurityScopedResource()
         
         // ---------------------------------------------------------------------------------
         
+        // ---------- Send the file to Nextcloud if size > 0 [Office 365] ----------
         do {
-            let attributes = try FileManager.default.attributesOfItem(atPath: fileNameLocalPath.path)
+            let attributes = try FileManager.default.attributesOfItem(atPath: fileProviderStorageURL!.path + "/" + fileName)
             size = attributes[FileAttributeKey.size] as! Double
         } catch let error {
             print("error: \(error)")
         }
         
+        // ------- TEMP ----- //
         let metadata = tableMetadata()
-                
+        
         metadata.account = account
         metadata.date = NSDate()
         metadata.directory = false
         metadata.directoryID = directoryParent.directoryID
-        metadata.etag = "000"
-        metadata.fileID = k_uploadSessionID + directoryParent.directoryID + fileName
-        metadata.fileName = fileName
-        metadata.fileNameView = fileName
+        metadata.etag = ""
+        metadata.fileID = FILEID_IMPORT_METADATA_TEMP
+        metadata.fileName = fileURL.lastPathComponent
+        metadata.fileNameView = fileURL.lastPathComponent
         metadata.size = size
         metadata.status = Double(k_metadataStatusHide)
-
+        
         CCUtility.insertTypeFileIconName(fileName, metadata: metadata)
-                
+        
         guard let metadataDB = NCManageDatabase.sharedInstance.addMetadata(metadata) else {
             completionHandler(nil, NSFileProviderError(.noSuchItem))
             return
         }
-        
-        NCManageDatabase.sharedInstance.addLocalFile(metadata: metadata)
-        NCManageDatabase.sharedInstance.setLocalFile(fileID: metadata.fileID, date: nil, exifDate: nil, exifLatitude: nil, exifLongitude: nil, fileName: nil, etag: metadata.etag, etagFPE: metadata.etag)
-            
-        // Create dir <base storage directory>/<item identifier>
-        do {
-            try FileManager.default.createDirectory(atPath: fileProviderStorageURL!.appendingPathComponent(metadata.fileID).path, withIntermediateDirectories: true, attributes: nil)
-        } catch let error {
-            print("error: \(error)")
-        }
-        // copy <base storage directory>/<item identifier>/<item file name>
-        _ = self.copyFile(fileNameLocalPath.path, toPath: "\(fileProviderStorageURL!.appendingPathComponent(metadata.fileID).path)/\(metadata.fileName)")
-        
-        // ---------- Send the file to Nextcloud if size > 0 [Office 365] ----------
+        // ------------------ //
         
         if (size > 0) {
             
             let metadataNet = CCMetadataNet()
             
             metadataNet.account = account
-            metadataNet.assetLocalIdentifier = k_assetLocalIdentifierFileProviderStorage + metadata.fileID
-            metadataNet.fileID = k_uploadSessionID + directoryParent.directoryID + fileName
+            metadataNet.assetLocalIdentifier = k_assetLocalIdentifierFileProviderStorage + k_uploadSessionID + directoryParent.directoryID + fileName
             metadataNet.fileName = fileName
-            metadataNet.path = importDocumentURL!.path + "/" + metadata.fileNameView
+            metadataNet.path = fileProviderStorageURL!.path + "/" + fileName
             metadataNet.selector = selectorUploadFile
             metadataNet.selectorPost = ""
             metadataNet.serverUrl = serverUrl
@@ -965,15 +943,12 @@ class FileProvider: NSFileProviderExtension, CCNetworkingDelegate {
             metadataNet.taskStatus = Int(k_taskStatusResume)
             
             _ = NCManageDatabase.sharedInstance.addQueueUpload(metadataNet: metadataNet)
+            
+            self.uploadFile()
         }
-
-        let ii = NSFileProviderItemIdentifier(metadata.fileID + "/" + fileURL.lastPathComponent)
-        
-        let item = FileProviderItemNC(metadata: metadataDB, serverUrl: serverUrl, ii: ii)
-        //let item = FileProviderItem(metadata: metadataDB, serverUrl: serverUrl)
+            
+        let item = FileProviderItem(metadata: metadataDB, serverUrl: serverUrl)
         completionHandler(item, nil)
-        
-        // self.uploadFile()
     }
     
     // --------------------------------------------------------------------------------------------
@@ -988,25 +963,17 @@ class FileProvider: NSFileProviderExtension, CCNetworkingDelegate {
             
             if (errorCode == 0) {
                 
-                let prevFileID = assetLocalIdentifier.replacingOccurrences(of: k_assetLocalIdentifierFileProviderStorage, with: "")
-            
                 NCManageDatabase.sharedInstance.setLocalFile(fileID: fileID, date: nil, exifDate: nil, exifLatitude: nil, exifLongitude: nil, fileName: nil, etag: metadata.etag, etagFPE: metadata.etag)
                 
-                // Change fileID 
-                if (prevFileID != fileID) {
-                    
-                    NCManageDatabase.sharedInstance.deleteLocalFile(predicate: NSPredicate(format: "account = %@ AND fileID = %@", account, prevFileID))
-                
-                    // rename Directory : <base storage directory>/prevFileID/<item file name> to <base storage directory>/fileID/<item file name>
-                    do {
-                        let atPath = fileProviderStorageURL!.path + "/" + prevFileID
-                        let toPath = fileProviderStorageURL!.path + "/" + fileID
-                        try FileManager.default.moveItem(atPath: atPath, toPath: toPath)
-                    } catch let error as NSError {
-                        NSLog("Unable to create directory \(error.debugDescription)")
-                    }
+                do {
+                    try FileManager.default.createDirectory(atPath: fileProviderStorageURL!.path + "/" + fileID, withIntermediateDirectories: true, attributes: nil)
+                } catch let error {
+                    print("error: \(error)")
                 }
-            
+                
+                _ = copyFile(fileProviderStorageURL!.path + "/" + fileName, toPath: fileProviderStorageURL!.path + "/" + fileID + "/" + fileName)
+                _ = deleteFile(fileProviderStorageURL!.path + "/" + fileName)
+                
                 let item = FileProviderItem(metadata: metadata, serverUrl: serverUrl)
                 self.refreshEnumerator(identifier: item.itemIdentifier, serverUrl: serverUrl)
             }
@@ -1015,17 +982,6 @@ class FileProvider: NSFileProviderExtension, CCNetworkingDelegate {
         uploadFile()
     }
     
-    func uploadStart(_ fileID: String!, serverUrl: String!) {
-        
-        /*
-        if let metadata = NCManageDatabase.sharedInstance.getMetadata(predicate: NSPredicate(format: "account = %@ AND fileID = %@", account, fileID)) {
-            
-            let item = FileProviderItem(metadata: metadata, serverUrl: serverUrl)
-            self.refreshEnumerator(identifier: item.itemIdentifier, serverUrl: serverUrl)
-        }
-        */
-    }
-    
     func uploadFile() {
         
         let queueInLock = NCManageDatabase.sharedInstance.getQueueUploadInLock()
@@ -1036,7 +992,7 @@ class FileProvider: NSFileProviderExtension, CCNetworkingDelegate {
                 
                 if self.copyFile(metadataNetQueue!.path, toPath: directoryUser + "/" + metadataNetQueue!.fileName) == nil {
                     
-                    CCNetworking.shared().uploadFile(metadataNetQueue!.fileName, serverUrl: metadataNetQueue!.serverUrl, assetLocalIdentifier: metadataNetQueue!.assetLocalIdentifier, fileID: metadataNetQueue!.fileID ,session: metadataNetQueue!.session, taskStatus: metadataNetQueue!.taskStatus, selector: metadataNetQueue!.selector, selectorPost: metadataNetQueue!.selectorPost, errorCode: 0, delegate: self)
+                    CCNetworking.shared().uploadFile(metadataNetQueue!.fileName, serverUrl: metadataNetQueue!.serverUrl, assetLocalIdentifier: metadataNetQueue!.assetLocalIdentifier ,session: metadataNetQueue!.session, taskStatus: metadataNetQueue!.taskStatus, selector: metadataNetQueue!.selector, selectorPost: metadataNetQueue!.selectorPost, errorCode: 0, delegate: self)
                     
                 } else {
                     // file not present, delete record Upload Queue
@@ -1182,8 +1138,6 @@ func setupActiveAccount() {
     
     groupURL = FileManager.default.containerURL(forSecurityApplicationGroupIdentifier: NCBrandOptions.sharedInstance.capabilitiesGroups)
     fileProviderStorageURL = groupURL!.appendingPathComponent(k_assetLocalIdentifierFileProviderStorage)
-    importDocumentURL = groupURL!.appendingPathComponent(k_assetLocalIdentifierFileProviderStorage).appendingPathComponent(k_fileProviderStorageImportDocument)
-    changeDocumentURL = groupURL!.appendingPathComponent(k_assetLocalIdentifierFileProviderStorage).appendingPathComponent(k_fileProviderStorageChangeDocument)
     
     // Create dir File Provider Storage
     do {
@@ -1191,18 +1145,4 @@ func setupActiveAccount() {
     } catch let error as NSError {
         NSLog("Unable to create directory \(error.debugDescription)")
     }
-    
-    // Create dir for Upload
-    do {
-        try FileManager.default.createDirectory(atPath: importDocumentURL!.path, withIntermediateDirectories: true, attributes: nil)
-    } catch let error as NSError {
-        NSLog("Unable to create directory \(error.debugDescription)")
-    }
-    
-    // Create dir for change document
-    do {
-        try FileManager.default.createDirectory(atPath: changeDocumentURL!.path, withIntermediateDirectories: true, attributes: nil)
-    } catch let error as NSError {
-        NSLog("Unable to create directory \(error.debugDescription)")
-    }
 }

+ 0 - 55
PickerFileProvider/FileProviderItemNC.swift

@@ -1,55 +0,0 @@
-//
-//  FileProviderItem.swift
-//  Files
-//
-//  Created by Marino Faggiana on 26/03/18.
-//  Copyright © 2018 TWS. All rights reserved.
-//
-
-import FileProvider
-
-class FileProviderItemNC: NSObject, NSFileProviderItem {
-
-    let metadataDB: tableMetadata
-    var itemIdentifier: NSFileProviderItemIdentifier
-    
-    // TODO: implement an initializer to create an item from your extension's backing model
-    // TODO: implement the accessors to return the values from your extension's backing model
-    
-    var parentItemIdentifier: NSFileProviderItemIdentifier {
-        if #available(iOSApplicationExtension 11.0, *) {
-            return NSFileProviderItemIdentifier.rootContainer
-        } else {
-            return NSFileProviderItemIdentifier("")
-        }
-    }
-    
-    var capabilities: NSFileProviderItemCapabilities {
-        return .allowsAll
-    }
-    
-    var filename: String {
-        return metadataDB.fileName
-    }
-    
-    var typeIdentifier: String {
-        return metadataDB.typeFile
-    }
-    
-    var documentSize: NSNumber? {
-        return 0
-    }
-    
-    var contentModificationDate: Date? {
-        return NSDate() as Date
-    }
-    
-    var creationDate: Date? {
-        return NSDate() as Date
-    }
-    
-    init(metadata: tableMetadata, serverUrl: String, ii: NSFileProviderItemIdentifier) {
-        metadataDB = metadata
-        self.itemIdentifier = ii
-    }
-}

+ 1 - 1
Share/ShareViewController.m

@@ -216,7 +216,7 @@
     
         NSString *fileName = [self.filesName objectAtIndex:0];
         
-        [[CCNetworking sharedNetworking] uploadFile:fileName serverUrl:_serverUrl assetLocalIdentifier:nil fileID:@"" session:k_upload_session_foreground taskStatus:k_taskStatusResume selector:@"" selectorPost:@"" errorCode:0 delegate:self];
+        [[CCNetworking sharedNetworking] uploadFile:fileName serverUrl:_serverUrl assetLocalIdentifier:nil session:k_upload_session_foreground taskStatus:k_taskStatusResume selector:@"" selectorPost:@"" errorCode:0 delegate:self];
         
         [self.hud visibleHudTitle:NSLocalizedString(@"_uploading_", nil) mode:MBProgressHUDModeDeterminate color:[NCBrandColor sharedInstance].brandElement];
     }

+ 1 - 1
iOSClient/AppDelegate.m

@@ -1515,7 +1515,7 @@
                 metadataNet.session = k_upload_session;
             }
             
-            [[CCNetworking sharedNetworking] uploadFile:metadataNet.fileName serverUrl:metadataNet.serverUrl assetLocalIdentifier:metadataNet.assetLocalIdentifier fileID:metadataNet.fileID session:metadataNet.session taskStatus:k_taskStatusResume selector:metadataNet.selector selectorPost:metadataNet.selectorPost errorCode:0 delegate:nil];
+            [[CCNetworking sharedNetworking] uploadFile:metadataNet.fileName serverUrl:metadataNet.serverUrl assetLocalIdentifier:metadataNet.assetLocalIdentifier session:metadataNet.session taskStatus:k_taskStatusResume selector:metadataNet.selector selectorPost:metadataNet.selectorPost errorCode:0 delegate:nil];
             counterNewUpload++;
         }
         

+ 1 - 1
iOSClient/Create/CCCreateCloud.swift

@@ -633,7 +633,7 @@ class CreateFormUploadFile: XLFormViewController, CCMoveDelegate {
             let success = FileManager.default.createFile(atPath: "\(self.appDelegate.directoryUser!)/\(fileNameSave)", contents: data, attributes: nil)
             
             if success {
-                CCNetworking.shared().uploadFile(fileNameSave, serverUrl: self.serverUrl, assetLocalIdentifier: nil, fileID: "", session: k_upload_session, taskStatus: Int(k_taskStatusResume), selector: nil, selectorPost: nil, errorCode: 0, delegate: self.appDelegate.activeMain)
+                CCNetworking.shared().uploadFile(fileNameSave, serverUrl: self.serverUrl, assetLocalIdentifier: nil, session: k_upload_session, taskStatus: Int(k_taskStatusResume), selector: nil, selectorPost: nil, errorCode: 0, delegate: self.appDelegate.activeMain)
             } else {
                 self.appDelegate.messageNotification("_error_", description: "_error_creation_file_", visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.info, errorCode: 0)
             }

+ 0 - 1
iOSClient/Database/NCDatabase.swift

@@ -262,7 +262,6 @@ class tableQueueUpload: Object {
     @objc dynamic var assetLocalIdentifier = ""
     @objc dynamic var date = NSDate()
     @objc dynamic var errorCode: Int = 0
-    @objc dynamic var fileID: String?
     @objc dynamic var fileName = ""
     @objc dynamic var lock: Bool = false
     @objc dynamic var path: String?

+ 1 - 14
iOSClient/Database/NCManageDatabase.swift

@@ -57,7 +57,7 @@ class NCManageDatabase: NSObject {
         let config = Realm.Configuration(
         
             fileURL: dirGroup?.appendingPathComponent("\(appDatabaseNextcloud)/\(k_databaseDefault)"),
-            schemaVersion: 22,
+            schemaVersion: 21,
             
             // 10 : Version 2.18.0
             // 11 : Version 2.18.2
@@ -71,7 +71,6 @@ class NCManageDatabase: NSObject {
             // 19 : Version 2.20.7
             // 20 : Version 2.21.0
             // 21 : Version 2.21.3
-            // 22 : Version 2.21.5
             
             migrationBlock: { migration, oldSchemaVersion in
                 // We haven’t migrated anything yet, so oldSchemaVersion == 0
@@ -2239,9 +2238,6 @@ class NCManageDatabase: NSObject {
                         addObject.account = tableAccount.account
                         addObject.assetLocalIdentifier = metadataNet.assetLocalIdentifier
                         addObject.errorCode = metadataNet.errorCode
-                        if metadataNet.fileID != nil {
-                            addObject.fileID = metadataNet.fileID
-                        }
                         addObject.fileName = metadataNet.fileName
                         addObject.path = metadataNet.path
                         addObject.selector = metadataNet.selector
@@ -2286,9 +2282,6 @@ class NCManageDatabase: NSObject {
                         addObject.account = tableAccount.account
                         addObject.assetLocalIdentifier = metadataNet.assetLocalIdentifier
                         addObject.errorCode = metadataNet.errorCode
-                        if metadataNet.fileID != nil {
-                            addObject.fileID = metadataNet.fileID
-                        }
                         addObject.fileName = metadataNet.fileName
                         addObject.path = metadataNet.path
                         addObject.selector = metadataNet.selector
@@ -2338,9 +2331,6 @@ class NCManageDatabase: NSObject {
         metadataNet.assetLocalIdentifier = result!.assetLocalIdentifier
         metadataNet.directoryID = self.getDirectoryID(result!.serverUrl)
         metadataNet.errorCode = result!.errorCode
-        if result!.fileID != nil {
-            metadataNet.fileID = result!.fileID
-        }
         metadataNet.fileName = result!.fileName
         metadataNet.path = result!.path
         metadataNet.selector = result!.selector
@@ -2417,9 +2407,6 @@ class NCManageDatabase: NSObject {
         metadataNet.assetLocalIdentifier = result!.assetLocalIdentifier
         metadataNet.errorCode = result!.errorCode
         metadataNet.directoryID = self.getDirectoryID(result!.serverUrl)
-        if result!.fileID != nil {
-            metadataNet.fileID = result!.fileID
-        }
         metadataNet.fileName = result!.fileName
         metadataNet.path = result!.path
         metadataNet.selector = result!.selector

+ 2 - 2
iOSClient/Main/CCMain.m

@@ -721,7 +721,7 @@
                 if ([data writeToFile:fileNamePath options:NSDataWritingAtomic error:&error]) {
                     
                     // Upload File
-                    [[CCNetworking sharedNetworking] uploadFile:fileName serverUrl:serverUrl assetLocalIdentifier: nil fileID:@"" session:k_upload_session taskStatus: k_taskStatusResume selector:@"" selectorPost:@"" errorCode:0 delegate:nil];
+                    [[CCNetworking sharedNetworking] uploadFile:fileName serverUrl:serverUrl assetLocalIdentifier: nil session:k_upload_session taskStatus: k_taskStatusResume selector:@"" selectorPost:@"" errorCode:0 delegate:nil];
                     
                 } else {
                     
@@ -3503,7 +3503,7 @@
                         [CCUtility copyFileAtPath:[NSString stringWithFormat:@"%@/%@", directoryUser, metadata.fileID] toPath:[NSString stringWithFormat:@"%@/%@", appDelegate.directoryUser, metadata.fileNameView]];
                         
                         dispatch_after(dispatch_time(DISPATCH_TIME_NOW, timer * NSEC_PER_SEC), dispatch_get_main_queue(), ^{
-                            [[CCNetworking sharedNetworking] uploadFile:metadata.fileNameView serverUrl:_serverUrl assetLocalIdentifier:nil fileID:@"" session:k_upload_session taskStatus:k_taskStatusResume selector:@"" selectorPost:@"" errorCode:0 delegate:nil];
+                            [[CCNetworking sharedNetworking] uploadFile:metadata.fileNameView serverUrl:_serverUrl assetLocalIdentifier:nil session:k_upload_session taskStatus:k_taskStatusResume selector:@"" selectorPost:@"" errorCode:0 delegate:nil];
                         });
                         
                         timer += 0.1;

+ 1 - 3
iOSClient/Networking/CCNetworking.h

@@ -63,7 +63,7 @@
 // Upload
 - (void)uploadFileFromAssetLocalIdentifier:(CCMetadataNet *)metadataNet delegate:(id)delegate;
 
-- (void)uploadFile:(NSString *)fileName serverUrl:(NSString *)serverUrl assetLocalIdentifier:(NSString *)assetLocalIdentifier fileID:(NSString *)fileID session:(NSString *)session taskStatus:(NSInteger)taskStatus selector:(NSString *)selector selectorPost:(NSString *)selectorPost errorCode:(NSInteger)errorCode delegate:(id)delegate;
+- (void)uploadFile:(NSString *)fileName serverUrl:(NSString *)serverUrl assetLocalIdentifier:(NSString *)assetLocalIdentifier session:(NSString *)session taskStatus:(NSInteger)taskStatus selector:(NSString *)selector selectorPost:(NSString *)selectorPost errorCode:(NSInteger)errorCode delegate:(id)delegate;
 - (void)uploadFileMetadata:(tableMetadata *)metadata taskStatus:(NSInteger)taskStatus;
 
 // Utility
@@ -80,8 +80,6 @@
 - (void)downloadFileSuccessFailure:(NSString *)fileName fileID:(NSString *)fileID serverUrl:(NSString *)serverUrl selector:(NSString *)selector selectorPost:(NSString *)selectorPost errorMessage:(NSString *)errorMessage errorCode:(NSInteger)errorCode;
 - (void)uploadFileSuccessFailure:(NSString *)fileName fileID:(NSString *)fileID assetLocalIdentifier:(NSString *)assetLocalIdentifier serverUrl:(NSString *)serverUrl selector:(NSString *)selector selectorPost:(NSString *)selectorPost errorMessage:(NSString *)errorMessage errorCode:(NSInteger)errorCode;
 
-- (void)uploadStart:(NSString *)fileID serverUrl:(NSString *)serverUrl;
-
 @end
 
 #pragma --------------------------------------------------------------------------------------------

+ 6 - 16
iOSClient/Networking/CCNetworking.m

@@ -865,7 +865,7 @@
                 [delegate uploadFileSuccessFailure:metadataNet.fileName fileID:metadataNet.fileID assetLocalIdentifier:metadataNet.assetLocalIdentifier serverUrl:metadataNet.serverUrl selector:metadataNet.selector selectorPost:metadataNet.selectorPost errorMessage:[NSString stringWithFormat:@"Image request failed [%@]", error.description] errorCode:error.code];
             } else {
                 // OOOOOK
-                [self upload:metadataNet.fileName serverUrl:metadataNet.serverUrl assetLocalIdentifier:metadataNet.assetLocalIdentifier fileID:metadataNet.fileID session:metadataNet.session taskStatus:metadataNet.taskStatus selector:metadataNet.selector selectorPost:metadataNet.selectorPost errorCode:metadataNet.errorCode delegate:delegate];
+                [self upload:metadataNet.fileName serverUrl:metadataNet.serverUrl assetLocalIdentifier:metadataNet.assetLocalIdentifier session:metadataNet.session taskStatus:metadataNet.taskStatus selector:metadataNet.selector selectorPost:metadataNet.selectorPost errorCode:metadataNet.errorCode delegate:delegate];
             }
         }];
     }
@@ -901,7 +901,7 @@
                 } else {
                     dispatch_async(dispatch_get_main_queue(), ^{
                         // OOOOOK
-                        [self upload:metadataNet.fileName serverUrl:metadataNet.serverUrl assetLocalIdentifier:metadataNet.assetLocalIdentifier fileID:metadataNet.fileID session:metadataNet.session taskStatus:metadataNet.taskStatus selector:metadataNet.selector selectorPost:metadataNet.selectorPost errorCode:metadataNet.errorCode delegate:delegate];
+                        [self upload:metadataNet.fileName serverUrl:metadataNet.serverUrl assetLocalIdentifier:metadataNet.assetLocalIdentifier session:metadataNet.session taskStatus:metadataNet.taskStatus selector:metadataNet.selector selectorPost:metadataNet.selectorPost errorCode:metadataNet.errorCode delegate:delegate];
                     });
                 }
             }
@@ -909,22 +909,18 @@
     }
 }
 
-- (void)uploadFile:(NSString *)fileName serverUrl:(NSString *)serverUrl assetLocalIdentifier:(NSString *)assetLocalIdentifier fileID:(NSString *)fileID session:(NSString *)session taskStatus:(NSInteger)taskStatus selector:(NSString *)selector selectorPost:(NSString *)selectorPost errorCode:(NSInteger)errorCode delegate:(id)delegate
+- (void)uploadFile:(NSString *)fileName serverUrl:(NSString *)serverUrl assetLocalIdentifier:(NSString *)assetLocalIdentifier session:(NSString *)session taskStatus:(NSInteger)taskStatus selector:(NSString *)selector selectorPost:(NSString *)selectorPost errorCode:(NSInteger)errorCode delegate:(id)delegate
 {
-    [self upload:fileName serverUrl:serverUrl assetLocalIdentifier:assetLocalIdentifier fileID:fileID session:session taskStatus:taskStatus selector:selector selectorPost:selectorPost errorCode:errorCode delegate:delegate];
+    [self upload:fileName serverUrl:serverUrl assetLocalIdentifier:assetLocalIdentifier session:session taskStatus:taskStatus selector:selector selectorPost:selectorPost errorCode:errorCode delegate:delegate];
 }
 
-- (void)upload:(NSString *)fileName serverUrl:(NSString *)serverUrl assetLocalIdentifier:(NSString *)assetLocalIdentifier fileID:(NSString *)fileID session:(NSString *)session taskStatus:(NSInteger)taskStatus selector:(NSString *)selector selectorPost:(NSString *)selectorPost errorCode:(NSInteger)errorCode delegate:(id)delegate
+- (void)upload:(NSString *)fileName serverUrl:(NSString *)serverUrl assetLocalIdentifier:(NSString *)assetLocalIdentifier session:(NSString *)session taskStatus:(NSInteger)taskStatus selector:(NSString *)selector selectorPost:(NSString *)selectorPost errorCode:(NSInteger)errorCode delegate:(id)delegate
 {
-    NSString *uploadID;
     NSString *directoryID = [[NCManageDatabase sharedInstance] getDirectoryID:serverUrl];
     if (!directoryID) return;
     
     //fileID
-    if (fileID.length > 0)
-        uploadID = fileID;
-    else
-        uploadID =  [k_uploadSessionID stringByAppendingString:[CCUtility createRandomString:16]];
+    NSString *uploadID =  [k_uploadSessionID stringByAppendingString:[CCUtility createRandomString:16]];
     
     //add delegate
     if (delegate)
@@ -1140,12 +1136,6 @@
          }
     }
 
-    dispatch_async(dispatch_get_main_queue(), ^{
-        if ([[self getDelegate:sessionID] respondsToSelector:@selector(uploadStart:serverUrl:)]) {
-            [[self getDelegate:sessionID] uploadStart:metadata.fileID serverUrl:serverUrl];
-        }
-    });
-    
 #ifndef EXTENSION
     [(AppDelegate *)[[UIApplication sharedApplication] delegate] updateApplicationIconBadgeNumber];
 #endif

+ 1 - 1
iOSClient/Text/NCText.swift

@@ -160,7 +160,7 @@ class NCText: UIViewController, UITextViewDelegate {
                     self.dismiss(animated: true, completion: {
                         
                         // Send file
-                        CCNetworking.shared().uploadFile(metadata.fileNameView, serverUrl: serverUrl, assetLocalIdentifier: nil, fileID: "", session: k_upload_session, taskStatus: Int(k_taskStatusResume), selector: nil, selectorPost: nil, errorCode: 0, delegate: self.appDelegate.activeMain)
+                        CCNetworking.shared().uploadFile(metadata.fileNameView, serverUrl: serverUrl, assetLocalIdentifier: nil, session: k_upload_session, taskStatus: Int(k_taskStatusResume), selector: nil, selectorPost: nil, errorCode: 0, delegate: self.appDelegate.activeMain)
                         NotificationCenter.default.post(name: NSNotification.Name(rawValue: "detailBack"), object: nil)
                     })
 

+ 1 - 1
iOSClient/UploadFromOtherUpp/CCUploadFromOtherUpp.m

@@ -173,7 +173,7 @@
 
 -(void)upload
 {
-    [[CCNetworking sharedNetworking] uploadFile:appDelegate.fileNameUpload serverUrl:serverUrlLocal assetLocalIdentifier:nil fileID:@"" session:k_upload_session taskStatus: k_taskStatusResume selector:@"" selectorPost:@"" errorCode:0 delegate:nil];
+    [[CCNetworking sharedNetworking] uploadFile:appDelegate.fileNameUpload serverUrl:serverUrlLocal assetLocalIdentifier:nil session:k_upload_session taskStatus: k_taskStatusResume selector:@"" selectorPost:@"" errorCode:0 delegate:nil];
     
     [self dismissViewControllerAnimated:YES completion:nil];
 }