Răsfoiți Sursa

added isAutoupload in metadata

Signed-off-by: marinofaggiana <ios@nextcloud.com>
marinofaggiana 2 ani în urmă
părinte
comite
92a65c593c

+ 1 - 0
iOSClient/Data/NCDatabase.swift

@@ -385,6 +385,7 @@ class tableMetadata: Object, NCUserBaseUrl {
     @objc dynamic var hasPreview: Bool = false
     @objc dynamic var iconName = ""
     @objc dynamic var iconUrl = ""
+    @objc dynamic var isAutoupload: Bool = false
     @objc dynamic var livePhoto: Bool = false
     @objc dynamic var mountType = ""
     @objc dynamic var name = ""

+ 1 - 0
iOSClient/Data/NCManageDatabase.swift

@@ -27,6 +27,7 @@ import RealmSwift
 import NCCommunication
 import SwiftyJSON
 import CoreMedia
+import Photos
 
 class NCManageDatabase: NSObject {
     @objc static let shared: NCManageDatabase = {

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

@@ -23,6 +23,7 @@
 
 import UIKit
 import NCCommunication
+import Photos
 
 @objc protocol NCCreateFormUploadConflictDelegate {
     @objc func dismissCreateFormUploadConflict(metadatas: [tableMetadata]?)

+ 1 - 0
iOSClient/Main/NCFunctionCenter.swift

@@ -26,6 +26,7 @@ import NCCommunication
 import Queuer
 import JGProgressHUD
 import SVGKit
+import Photos
 
 @objc class NCFunctionCenter: NSObject, UIDocumentInteractionControllerDelegate, NCSelectDelegate {
     @objc public static let shared: NCFunctionCenter = {

+ 1 - 0
iOSClient/Main/NCPickerViewController.swift

@@ -24,6 +24,7 @@
 import UIKit
 import TLPhotoPicker
 import MobileCoreServices
+import Photos
 
 // MARK: - Photo Picker
 

+ 1 - 1
iOSClient/NCGlobal.swift

@@ -115,7 +115,7 @@ class NCGlobal: NSObject {
     // Database Realm
     //
     let databaseDefault                             = "nextcloud.realm"
-    let databaseSchemaVersion: UInt64               = 227
+    let databaseSchemaVersion: UInt64               = 228
 
     // Intro selector
     //

+ 7 - 0
iOSClient/Networking/NCAutoUpload.swift

@@ -24,6 +24,7 @@
 import UIKit
 import CoreLocation
 import NCCommunication
+import Photos
 
 class NCAutoUpload: NSObject {
     @objc static let shared: NCAutoUpload = {
@@ -171,6 +172,9 @@ class NCAutoUpload: NSObject {
                         metadataForUpload.assetLocalIdentifier = asset.localIdentifier
                         metadataForUpload.session = session
                         metadataForUpload.sessionSelector = selector
+                        if selector != NCGlobal.shared.selectorUploadAutoUploadAll {
+                            metadataForUpload.isAutoupload = true
+                        }
                         metadataForUpload.status = NCGlobal.shared.metadataStatusWaitUpload
                         if assetMediaType == PHAssetMediaType.video {
                             metadataForUpload.classFile = NCCommunicationCommon.typeClassFile.video.rawValue
@@ -200,6 +204,9 @@ class NCAutoUpload: NSObject {
                                     let metadataForUpload = NCManageDatabase.shared.createMetadata(account: account.account, user: account.user, userId: account.userId, fileName: fileName, fileNameView: fileName, ocId: ocId, serverUrl: serverUrl, urlBase: account.urlBase, url: "", contentType: "", isLivePhoto: livePhoto)
                                     metadataForUpload.session = session
                                     metadataForUpload.sessionSelector = selector
+                                    if selector != NCGlobal.shared.selectorUploadAutoUploadAll {
+                                        metadataForUpload.isAutoupload = true
+                                    }
                                     metadataForUpload.size = NCUtilityFileSystem.shared.getFileSize(filePath: filePath)
                                     metadataForUpload.status = NCGlobal.shared.metadataStatusWaitUpload
                                     metadataForUpload.classFile = NCCommunicationCommon.typeClassFile.video.rawValue

+ 1 - 0
iOSClient/Networking/NCNetworking.swift

@@ -26,6 +26,7 @@ import OpenSSL
 import NCCommunication
 import Alamofire
 import Queuer
+import Photos
 
 @objc public protocol NCNetworkingDelegate {
     @objc optional func downloadProgress(_ progress: Float, totalBytes: Int64, totalBytesExpected: Int64, fileName: String, serverUrl: String, session: URLSession, task: URLSessionTask)

+ 4 - 0
iOSClient/Networking/NCNetworkingProcessUpload.swift

@@ -111,6 +111,10 @@ class NCNetworkingProcessUpload: NSObject {
 
                         // Chunk 
                         if metadata.chunk && UIApplication.shared.applicationState == .active {
+                            if metadata.session == NCNetworking.shared.sessionIdentifierBackgroundWWan && metadata.isAutoupload && NCNetworking.shared.networkReachability != NCCommunicationCommon.typeReachability.reachableEthernetOrWiFi {
+                                continue
+                            }
+
                             if let metadata = NCManageDatabase.shared.setMetadataStatus(ocId: metadata.ocId, status: NCGlobal.shared.metadataStatusInUpload) {
                                 NCNetworking.shared.upload(metadata: metadata) {
                                     // start

+ 1 - 0
iOSClient/ScanDocument/NCScan.swift

@@ -22,6 +22,7 @@
 //
 
 import UIKit
+import Photos
 
 @available(iOS 13.0, *)
 class NCScan: UIViewController, NCScanCellCellDelegate {

+ 1 - 0
iOSClient/Settings/NCManageAutoUploadFileName.swift

@@ -22,6 +22,7 @@
 //
 
 import UIKit
+import Photos
 
 class NCManageAutoUploadFileName: XLFormViewController {