marinofaggiana преди 4 години
родител
ревизия
f73f45b7fd
променени са 2 файла, в които са добавени 19 реда и са изтрити 9 реда
  1. 9 5
      iOSClient/Settings/NCCapabilitiesViewController.swift
  2. 10 4
      iOSClient/Utility/NCUtilityFileSystem.swift

+ 9 - 5
iOSClient/Settings/NCCapabilitiesViewController.swift

@@ -55,6 +55,7 @@ class NCCapabilitiesViewController: UIViewController, UIDocumentInteractionContr
     @IBOutlet weak var imageOnlyOffice: UIImageView!
     @IBOutlet weak var imageStatusOnlyOffice: UIImageView!
     
+    private var documentController: UIDocumentInteractionController?
     private var account: String = ""
     private var capabilitiesText = ""
     private var imageEnable: UIImage?
@@ -111,14 +112,17 @@ class NCCapabilitiesViewController: UIViewController, UIDocumentInteractionContr
     }
     
     @objc func share() {
+        
         let tempDirectoryURL = NSURL.fileURL(withPath: NSTemporaryDirectory(), isDirectory: true)
         let fileURL = tempDirectoryURL.appendingPathComponent("capabilities.txt")
         
-        NCUtilityFileSystem.shared.writeFile(fileURL: fileURL, text: capabilitiesText)
-
-        let documentController = UIDocumentInteractionController.init(url: fileURL)
-        documentController.delegate = self
-        documentController.presentOpenInMenu(from: CGRect.zero, in: self.view, animated: true)
+        if NCUtilityFileSystem.shared.writeFile(fileURL: fileURL, text: capabilitiesText) {
+            documentController = UIDocumentInteractionController.init(url: fileURL)
+            if documentController != nil {
+                documentController!.delegate = self
+                documentController!.presentOpenInMenu(from: CGRect.zero, in: self.view, animated: true)
+            }
+        }
     }
     
     @objc func close() {

+ 10 - 4
iOSClient/Utility/NCUtilityFileSystem.swift

@@ -73,14 +73,20 @@ class NCUtilityFileSystem: NSObject {
         return nil
     }
     
-    @objc func writeFile(fileURL: URL, text: String) {
+    @objc func writeFile(fileURL: URL, text: String) -> Bool {
         
         do {
             try FileManager.default.removeItem(at: fileURL)
-            try text.write(to: fileURL, atomically: false, encoding: .utf8)
         }
-        catch { }
-
+        catch {}
+        
+        do {
+            try text.write(to: fileURL, atomically: true, encoding: .utf8)
+            return true
+        }
+        catch {
+            return false
+        }
     }
 }