marinofaggiana пре 5 година
родитељ
комит
9c20b191a5

+ 1 - 1
Cartfile.resolved

@@ -16,7 +16,7 @@ github "krzyzanowskim/OpenSSL" "1.0.218"
 github "malcommac/SwiftRichString" "3.0.4"
 github "marinofaggiana/AFNetworking" "2967678c3e0e98c9b8d7e06222ad12d1f49c26f2"
 github "marinofaggiana/FastScroll" "81967c2309d29bc2c330d422da612160a30bade8"
-github "nextcloud/ios-communication-library" "d1915bb2828e93579f2a0c0225f8af093b80ff86"
+github "nextcloud/ios-communication-library" "fa2d36f4131fb492e97aa9e0487e1e8013a4e19d"
 github "realm/realm-cocoa" "v4.1.1"
 github "rechsteiner/Parchment" "v1.7.0"
 github "tilltue/TLPhotoPicker" "2.0.7"

+ 1 - 1
iOSClient/AppDelegate.m

@@ -1628,7 +1628,7 @@ PKPushRegistry *pushRegistry;
                                             // Push
                                             NSString *directoryName = [[path stringByDeletingLastPathComponent] lastPathComponent];
                                             NSString *serverUrl = [CCUtility deletingLastPathComponentFromServerUrl:[NSString stringWithFormat:@"%@%@/%@", matchedAccount.url, k_webDAV, [path stringByDeletingLastPathComponent]]];
-                                            tableMetadata *metadata = [CCUtility createMetadataWithAccount:matchedAccount.account date:[NSDate date] directory:NO ocId:[[NSUUID UUID] UUIDString] serverUrl:serverUrl fileName:directoryName etag:@"" size:0 status:k_metadataStatusNormal url:@""];
+                                            tableMetadata *metadata = [CCUtility createMetadataWithAccount:matchedAccount.account date:[NSDate date] directory:NO ocId:[[NSUUID UUID] UUIDString] serverUrl:serverUrl fileName:directoryName etag:@"" size:0 status:k_metadataStatusNormal url:@"" contentType:@""];
                                             
                                             [self.activeMain performSegueDirectoryWithControlPasscode:true metadata:metadata blinkFileNamePath:fileNamePath];
                                             

+ 1 - 1
iOSClient/CCGlobal.h

@@ -281,7 +281,7 @@
 #define k_richdocument_presentation                     @"presentation"
 
 // Template Nextcloud Text
-#define k_nextcloudtext_document                        @"document"
+#define k_nextcloudtext_document                        @"textdocument"
 
 // Layout
 #define k_layout_list                                   @"typeLayoutList"

+ 1 - 1
iOSClient/Main/CCMain.m

@@ -1777,7 +1777,7 @@
     NSString *ocIdTemp = [[NSUUID UUID] UUIDString];
     
     // Create Directory (temp) on metadata
-    tableMetadata *metadata = [CCUtility createMetadataWithAccount:appDelegate.activeAccount date:[NSDate date] directory:YES ocId:ocIdTemp serverUrl:serverUrl fileName:fileNameFolder etag:@"" size:0 status:k_metadataStatusNormal url:@""];
+    tableMetadata *metadata = [CCUtility createMetadataWithAccount:appDelegate.activeAccount date:[NSDate date] directory:YES ocId:ocIdTemp serverUrl:serverUrl fileName:fileNameFolder etag:@"" size:0 status:k_metadataStatusNormal url:@"" contentType:@""];
     (void)[[NCManageDatabase sharedInstance] addMetadata:metadata];
     
     [[NCManageDatabase sharedInstance] clearDateReadWithServerUrl:serverUrl account:appDelegate.activeAccount];

+ 29 - 14
iOSClient/Main/Create cloud/NCCreateFormUploadDocuments.swift

@@ -250,27 +250,31 @@ class NCCreateFormUploadDocuments: XLFormViewController, NCSelectDelegate, UICol
     
     @objc func save() {
         
+        guard let selectTemplate = self.selectTemplate else {
+            return
+        }
         let rowFileName : XLFormRowDescriptor  = self.form.formRow(withTag: "fileName")!
         guard let fileNameForm = rowFileName.value else {
             return
         }
         if fileNameForm as! String == "" {
             return
-        }
+        } else {
             
-        if self.typeTemplate == k_nextcloudtext_document {
-                        
             fileName = (fileNameForm as! NSString).deletingPathExtension + "." + fileNameExtension
             fileName = CCUtility.returnFileNamePath(fromFileName: fileName, serverUrl: serverUrl, activeUrl: appDelegate.activeUrl)
+        }
             
-            NCCommunication.sharedInstance.NCTextCreateFile(urlString: appDelegate.activeUrl, fileNamePath: fileName, editor: "text", templateId: selectTemplate?.identifier, account: self.appDelegate.activeAccount) { (account, url, errorCode, errorMessage) in
+        if self.typeTemplate == k_nextcloudtext_document {
+                                    
+            NCCommunication.sharedInstance.NCTextCreateFile(urlString: appDelegate.activeUrl, fileNamePath: fileName, editor: "text", templateId: selectTemplate.identifier, account: self.appDelegate.activeAccount) { (account, url, errorCode, errorMessage) in
                 
                 if errorCode == 0 && account == self.appDelegate.activeAccount {
                     
                     if url != nil && url!.count > 0 {
                         
                         self.dismiss(animated: true, completion: {
-                            let metadata = CCUtility.createMetadata(withAccount: self.appDelegate.activeAccount, date: Date(), directory: false, ocId: CCUtility.createRandomString(12), serverUrl: self.serverUrl, fileName: (fileNameForm as! NSString).deletingPathExtension + "." + self.fileNameExtension, etag: "", size: 0, status: Double(k_metadataStatusNormal), url:url)
+                            let metadata = CCUtility.createMetadata(withAccount: self.appDelegate.activeAccount, date: Date(), directory: false, ocId: CCUtility.createRandomString(12), serverUrl: self.serverUrl, fileName: (fileNameForm as! NSString).deletingPathExtension + "." + self.fileNameExtension, etag: "", size: 0, status: Double(k_metadataStatusNormal), url:url, contentType: "text/markdown")
                             
                             self.appDelegate.activeMain.shouldPerformSegue(metadata, selector: "")
                         })
@@ -285,13 +289,6 @@ class NCCreateFormUploadDocuments: XLFormViewController, NCSelectDelegate, UICol
             
         } else {
             
-            guard let selectTemplate = self.selectTemplate else {
-                return
-            }
-            
-            fileName = (fileNameForm as! NSString).deletingPathExtension + "." + fileNameExtension
-            fileName = CCUtility.returnFileNamePath(fromFileName: fileName, serverUrl: serverUrl, activeUrl: appDelegate.activeUrl)
-            
             OCNetworking.sharedManager().createNewRichdocuments(withAccount: appDelegate.activeAccount, fileName: fileName, serverUrl: serverUrl, templateID: selectTemplate.identifier, completion: { (account, url, message, errorCode) in
                        
                 if errorCode == 0 && account == self.appDelegate.activeAccount {
@@ -299,7 +296,7 @@ class NCCreateFormUploadDocuments: XLFormViewController, NCSelectDelegate, UICol
                    if url != nil && url!.count > 0 {
                        
                        self.dismiss(animated: true, completion: {
-                           let metadata = CCUtility.createMetadata(withAccount: self.appDelegate.activeAccount, date: Date(), directory: false, ocId: CCUtility.createRandomString(12), serverUrl: self.serverUrl, fileName: (fileNameForm as! NSString).deletingPathExtension + "." + self.fileNameExtension, etag: "", size: 0, status: Double(k_metadataStatusNormal), url:url)
+                           let metadata = CCUtility.createMetadata(withAccount: self.appDelegate.activeAccount, date: Date(), directory: false, ocId: CCUtility.createRandomString(12), serverUrl: self.serverUrl, fileName: (fileNameForm as! NSString).deletingPathExtension + "." + self.fileNameExtension, etag: "", size: 0, status: Double(k_metadataStatusNormal), url:url, contentType: "")
                            
                            self.appDelegate.activeMain.shouldPerformSegue(metadata, selector: "")
                        })
@@ -355,6 +352,24 @@ class NCCreateFormUploadDocuments: XLFormViewController, NCSelectDelegate, UICol
                             self.navigationItem.rightBarButtonItem?.isEnabled = true
                         }
                     }
+                    
+                    // NOT ALIGNED getTemplatesRichdocuments
+                    if templates.count == 0 {
+                        let temp = NCEditorTemplates()
+                        
+                        temp.identifier = ""
+                        temp.ext = "md"
+                        temp.name = "Empty"
+                        temp.preview = ""
+                                                                      
+                        self.listOfTemplate.append(temp)
+                        
+                        self.selectTemplate = temp
+                        self.fileNameExtension = temp.ext
+                        self.navigationItem.rightBarButtonItem?.isEnabled = true
+                    }
+                    
+                    self.collectionView.reloadData()
                                         
                 } else if errorCode != 0 {
                     self.appDelegate.messageNotification("_error_", description: errorMessage, visible: true, delay: TimeInterval(k_dismissAfterSecond), type: TWMessageBarMessageType.error, errorCode: errorCode)
@@ -388,7 +403,7 @@ class NCCreateFormUploadDocuments: XLFormViewController, NCSelectDelegate, UICol
                         // default: template empty
                         if temp.preview == "" {
                             self.selectTemplate = temp
-                            self.fileNameExtension = template.extension
+                            self.fileNameExtension = temp.ext
                             self.navigationItem.rightBarButtonItem?.isEnabled = true
                         }
                     }

+ 1 - 1
iOSClient/Utility/CCUtility.h

@@ -251,7 +251,7 @@
 
 // ===== CCMetadata =====
 
-+ (tableMetadata *)createMetadataWithAccount:(NSString *)account date:(NSDate *)date directory:(BOOL)directory ocId:(NSString *)ocId serverUrl:(NSString *)serverUrl fileName:(NSString *)fileName etag:(NSString *)etag size:(double)size status:(double)status url:(NSString *)url;
++ (tableMetadata *)createMetadataWithAccount:(NSString *)account date:(NSDate *)date directory:(BOOL)directory ocId:(NSString *)ocId serverUrl:(NSString *)serverUrl fileName:(NSString *)fileName etag:(NSString *)etag size:(double)size status:(double)status url:(NSString *)url contentType:(NSString *)contentType;
 
 + (tableMetadata *)trasformedOCFileToCCMetadata:(OCFileDto *)itemDto fileName:(NSString *)fileName serverUrl:(NSString *)serverUrl autoUploadFileName:(NSString *)autoUploadFileName autoUploadDirectory:(NSString *)autoUploadDirectory account:(NSString *)account isFolderEncrypted:(BOOL)isFolderEncrypted;
 

+ 2 - 1
iOSClient/Utility/CCUtility.m

@@ -1425,11 +1425,12 @@
 #pragma mark ===== CCMetadata =====
 #pragma --------------------------------------------------------------------------------------------
 
-+ (tableMetadata *)createMetadataWithAccount:(NSString *)account date:(NSDate *)date directory:(BOOL)directory ocId:(NSString *)ocId serverUrl:(NSString *)serverUrl fileName:(NSString *)fileName etag:(NSString *)etag size:(double)size status:(double)status url:(NSString *)url
++ (tableMetadata *)createMetadataWithAccount:(NSString *)account date:(NSDate *)date directory:(BOOL)directory ocId:(NSString *)ocId serverUrl:(NSString *)serverUrl fileName:(NSString *)fileName etag:(NSString *)etag size:(double)size status:(double)status url:(NSString *)url contentType:(NSString *)contentType
 {
     tableMetadata *metadata = [tableMetadata new];
     
     metadata.account = account;
+    metadata.contentType = contentType;
     metadata.date = date;
     metadata.directory = directory;
     metadata.etag = etag;

+ 27 - 1
iOSClient/Viewer/NCViewerNextcloudText.swift

@@ -34,7 +34,7 @@ class NCViewerNextcloudText: WKWebView, WKNavigationDelegate, WKScriptMessageHan
         super.init(frame: frame, configuration: configuration)
 
         let contentController = configuration.userContentController
-        contentController.add(self, name: "RichDocumentsMobileInterface")
+        contentController.add(self, name: "DirectEditingMobileInterface")
         
         autoresizingMask = [.flexibleWidth, .flexibleHeight]
         navigationDelegate = self
@@ -82,6 +82,32 @@ class NCViewerNextcloudText: WKWebView, WKNavigationDelegate, WKScriptMessageHan
 
     public func userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMessage) {
         
+        if (message.name == "DirectEditingMobileInterface") {
+            
+            if message.body as? String == "close" {
+                
+                removeFromSuperview()
+                
+                detail.navigationController?.popViewController(animated: true)
+                detail.navigationController?.navigationBar.topItem?.title = ""
+            }
+            
+            if message.body as? String == "share" {
+                NCMainCommon.sharedInstance.openShare(ViewController: detail, metadata: metadata, indexPage: 2)
+            }
+            
+            if message.body as? String == "loading" {
+                print("loading")
+            }
+            
+            if message.body as? String == "loaded" {
+                print("loaded")
+            }
+            
+            if message.body as? String == "paste" {
+                self.paste(self)
+            }
+        }
     }