marinofaggiana 5 years ago
parent
commit
446da0b02f

+ 4 - 0
iOSClient/Database/NCElementsJSON.swift

@@ -46,5 +46,9 @@ import Foundation
     @objc public let capabilitiesE2EEEnabled:                   Array = ["ocs","data","capabilities","end-to-end-encryption","enabled"]
     @objc public let capabilitiesE2EEEnabled:                   Array = ["ocs","data","capabilities","end-to-end-encryption","enabled"]
     @objc public let capabilitiesE2EEApiVersion:                Array = ["ocs","data","capabilities","end-to-end-encryption","api-version"]
     @objc public let capabilitiesE2EEApiVersion:                Array = ["ocs","data","capabilities","end-to-end-encryption","api-version"]
     
     
+    @objc public let capabilitiesExternalSitesExists:           Array = ["ocs","data","capabilities","external"]
+
+    @objc public let capabilitiesRichdocumentsMimetypes:        Array = ["ocs","data","capabilities","richdocuments","mimetypes"]
+
     @objc public let capabilitiesHWCEnabled:                    Array = ["ocs","data","capabilities","handwerkcloud","enabled"]
     @objc public let capabilitiesHWCEnabled:                    Array = ["ocs","data","capabilities","handwerkcloud","enabled"]
 }
 }

+ 0 - 62
iOSClient/Database/NCManageDatabase.swift

@@ -974,68 +974,6 @@ class NCManageDatabase: NSObject {
         return nil
         return nil
     }
     }
     
     
-    @objc func getCapabilitiesFilesSharingPublicPasswordEnforced(account: String) -> Bool {
-
-        let realm = try! Realm()
-        realm.refresh()
-        
-        guard let result = realm.objects(tableCapabilities.self).filter("account == %@", account).first else {
-            return false
-        }
-        guard let jsondata = result.jsondata else {
-            return false
-        }
-        
-        let json = JSON(jsondata)
-        let dataCapabilities = json["ocs"]["data"]["capabilities"]
-
-        return dataCapabilities["files_sharing"]["public"]["password"]["enforced"].boolValue
-    }
-    
-    @objc func getCapabilitiesRichdocumentsMimetypes(account: String) -> [String]? {
-        
-        let realm = try! Realm()
-        realm.refresh()
-        var resultArray = [String]()
-
-        guard let result = realm.objects(tableCapabilities.self).filter("account == %@", account).first else {
-            return nil
-        }
-        guard let jsondata = result.jsondata else {
-            return nil
-        }
-        
-        let json = JSON(jsondata)
-        let dataCapabilities = json["ocs"]["data"]["capabilities"]
-        
-        if let results = dataCapabilities["richdocuments"]["mimetypes"].array {
-            for result in results {
-                resultArray.append(result.string ?? "")
-            }
-            return resultArray
-        }
-        
-        return nil
-    }
-    
-    @objc func getCapabilitiesExternalSitesServerEnabled(account: String) -> Bool {
-
-        let realm = try! Realm()
-        realm.refresh()
-        
-        guard let result = realm.objects(tableCapabilities.self).filter("account == %@", account).first else {
-            return false
-        }
-        guard let jsondata = result.jsondata else {
-            return false
-        }
-        
-        let json = JSON(jsondata)
-        let dataCapabilities = json["ocs"]["data"]["capabilities"]
-
-        return dataCapabilities["external"].exists()
-    }
-    
     //MARK: -
     //MARK: -
     //MARK: Table Comments
     //MARK: Table Comments
     
     

+ 1 - 1
iOSClient/Main/Menu/AppDelegate+Menu.swift

@@ -218,7 +218,7 @@ extension AppDelegate {
             )
             )
         }
         }
         
         
-        if let richdocumentsMimetypes = NCManageDatabase.sharedInstance.getCapabilitiesRichdocumentsMimetypes(account: appDelegate.activeAccount) {
+        if let richdocumentsMimetypes = NCManageDatabase.sharedInstance.getCapabilitiesServerArray(account: appDelegate.activeAccount, elements: NCElementsJSON.shared.capabilitiesRichdocumentsMimetypes) {
             if richdocumentsMimetypes.count > 0 && appDelegate.reachability.isReachable() && !isEncrypted {
             if richdocumentsMimetypes.count > 0 && appDelegate.reachability.isReachable() && !isEncrypted {
                 actions.append(
                 actions.append(
                     NCMenuAction(
                     NCMenuAction(

+ 1 - 1
iOSClient/Networking/NCService.swift

@@ -181,7 +181,7 @@ class NCService: NSObject {
                     }
                     }
                 }
                 }
                 
                 
-                let isExternalSitesServerEnabled = NCManageDatabase.sharedInstance.getCapabilitiesExternalSitesServerEnabled(account: account)
+                let isExternalSitesServerEnabled = NCManageDatabase.sharedInstance.getCapabilitiesServerBool(account: account, elements: NCElementsJSON.shared.capabilitiesExternalSitesExists, exists: true)
                 if (isExternalSitesServerEnabled) {
                 if (isExternalSitesServerEnabled) {
                     OCNetworking.sharedManager().getExternalSites(withAccount: account, completion: { (account, listOfExternalSites, message, errorCode) in
                     OCNetworking.sharedManager().getExternalSites(withAccount: account, completion: { (account, listOfExternalSites, message, errorCode) in
                         if errorCode == 0 && account == self.appDelegate.activeAccount {
                         if errorCode == 0 && account == self.appDelegate.activeAccount {

+ 1 - 1
iOSClient/Share/NCShare.swift

@@ -142,7 +142,7 @@ class NCShare: UIViewController, UIGestureRecognizerDelegate, NCShareLinkCellDel
     @IBAction func touchUpInsideButtonMenu(_ sender: Any) {
     @IBAction func touchUpInsideButtonMenu(_ sender: Any) {
 
 
         guard let metadata = self.metadata else { return }
         guard let metadata = self.metadata else { return }
-        let isFilesSharingPublicPasswordEnforced = NCManageDatabase.sharedInstance.getCapabilitiesFilesSharingPublicPasswordEnforced(account: metadata.account)
+        let isFilesSharingPublicPasswordEnforced = NCManageDatabase.sharedInstance.getCapabilitiesServerBool(account: metadata.account, elements: NCElementsJSON.shared.capabilitiesFileSharingPubPasswdEnforced, exists: false)
         let shares = NCManageDatabase.sharedInstance.getTableShares(metadata: metadata)
         let shares = NCManageDatabase.sharedInstance.getTableShares(metadata: metadata)
 
 
         if isFilesSharingPublicPasswordEnforced && shares.firstShareLink == nil {
         if isFilesSharingPublicPasswordEnforced && shares.firstShareLink == nil {

+ 2 - 1
iOSClient/Utility/NCUtility.swift

@@ -330,7 +330,8 @@ class NCUtility: NSObject {
         guard let mimeType = CCUtility.getMimeType(metadata.fileNameView) else {
         guard let mimeType = CCUtility.getMimeType(metadata.fileNameView) else {
             return false
             return false
         }
         }
-        guard let richdocumentsMimetypes = NCManageDatabase.sharedInstance.getCapabilitiesRichdocumentsMimetypes(account: metadata.account) else {
+        
+        guard let richdocumentsMimetypes = NCManageDatabase.sharedInstance.getCapabilitiesServerArray(account: metadata.account, elements: NCElementsJSON.shared.capabilitiesRichdocumentsMimetypes) else {
             return false
             return false
         }
         }