Browse Source

remove old metadata ext, filenamewithoutext

Signed-off-by: Marino Faggiana <marino@marinofaggiana.com>
Marino Faggiana 2 years ago
parent
commit
fae0790f8b

+ 0 - 2
iOSClient/Data/NCDatabase.swift

@@ -399,12 +399,10 @@ class tableMetadata: Object, NCUserBaseUrl {
     @objc dynamic var edited: Bool = false
     @objc dynamic var etag = ""
     @objc dynamic var etagResource = ""
-    @objc dynamic var ext = ""
     @objc dynamic var favorite: Bool = false
     @objc dynamic var fileId = ""
     @objc dynamic var fileName = ""
     @objc dynamic var fileNameView = ""
-    @objc dynamic var fileNameWithoutExt = ""
     @objc dynamic var hasPreview: Bool = false
     @objc dynamic var iconName = ""
     @objc dynamic var iconUrl = ""

+ 6 - 14
iOSClient/Data/NCManageDatabase+Metadata.swift

@@ -50,12 +50,10 @@ extension NCManageDatabase {
         metadata.downloadURL = file.downloadURL
         metadata.e2eEncrypted = file.e2eEncrypted
         metadata.etag = file.etag
-        metadata.ext = file.ext
         metadata.favorite = file.favorite
         metadata.fileId = file.fileId
         metadata.fileName = file.fileName
         metadata.fileNameView = file.fileName
-        metadata.fileNameWithoutExt = file.fileNameWithoutExt
         metadata.hasPreview = file.hasPreview
         metadata.iconName = file.iconName
         metadata.livePhoto = file.livePhoto
@@ -201,10 +199,8 @@ extension NCManageDatabase {
         metadata.date = Date() as NSDate
         metadata.hasPreview = true
         metadata.etag = ocId
-        metadata.ext = (fileName as NSString).pathExtension.lowercased()
         metadata.fileName = fileName
         metadata.fileNameView = fileName
-        metadata.fileNameWithoutExt = (fileName as NSString).deletingPathExtension
         metadata.livePhoto = isLivePhoto
         metadata.name = name
         metadata.ocId = ocId
@@ -295,13 +291,6 @@ extension NCManageDatabase {
                     let resultsType = NKCommon.shared.getInternalType(fileName: fileNameTo, mimeType: "", directory: result.directory)
                     result.fileName = fileNameTo
                     result.fileNameView = fileNameTo
-                    if result.directory {
-                        result.fileNameWithoutExt = fileNameTo
-                        result.ext = ""
-                    } else {
-                        result.fileNameWithoutExt = (fileNameTo as NSString).deletingPathExtension
-                        result.ext = resultsType.ext
-                    }
                     result.iconName = resultsType.iconName
                     result.contentType = resultsType.mimeType
                     result.classFile = resultsType.classFile
@@ -759,6 +748,7 @@ extension NCManageDatabase {
 
         let realm = try! Realm()
         var classFile = metadata.classFile
+        var fileName = (metadata.fileNameView as NSString).deletingPathExtension
 
         if !metadata.livePhoto || !CCUtility.getLivePhoto() {
             return nil
@@ -766,11 +756,13 @@ extension NCManageDatabase {
 
         if classFile == NKCommon.typeClassFile.image.rawValue {
             classFile = NKCommon.typeClassFile.video.rawValue
+            fileName = fileName + ".mov"
         } else {
             classFile = NKCommon.typeClassFile.image.rawValue
+            fileName = fileName + ".jpg"
         }
 
-        guard let result = realm.objects(tableMetadata.self).filter(NSPredicate(format: "account == %@ AND serverUrl == %@ AND fileNameWithoutExt == %@ AND ocId != %@ AND classFile == %@", metadata.account, metadata.serverUrl, metadata.fileNameWithoutExt, metadata.ocId, classFile)).first else {
+        guard let result = realm.objects(tableMetadata.self).filter(NSPredicate(format: "account == %@ AND serverUrl == %@ AND fileNameView CONTAINS[cd] %@ AND ocId != %@ AND classFile == %@", metadata.account, metadata.serverUrl, fileName, metadata.ocId, classFile)).first else {
             return nil
         }
 
@@ -825,11 +817,11 @@ extension NCManageDatabase {
 
         // verify exists conflict
         let fileNameExtension = (fileNameView as NSString).pathExtension.lowercased()
-        let fileNameWithoutExtension = (fileNameView as NSString).deletingPathExtension
+        let fileNameNoExtension = (fileNameView as NSString).deletingPathExtension
         var fileNameConflict = fileNameView
 
         if fileNameExtension == "heic" && CCUtility.getFormatCompatibility() {
-            fileNameConflict = fileNameWithoutExtension + ".jpg"
+            fileNameConflict = fileNameNoExtension + ".jpg"
         }
         return getMetadata(predicate: NSPredicate(format: "account == %@ AND serverUrl == %@ AND fileNameView == %@", account, serverUrl, fileNameConflict))
     }

+ 2 - 2
iOSClient/Main/Create cloud/NCCreateFormUploadConflict.swift

@@ -243,9 +243,9 @@ extension NCCreateFormUploadConflictDelegate {
 
                 var fileName = metadata.fileNameView
                 let fileNameExtension = (fileName as NSString).pathExtension.lowercased()
-                let fileNameWithoutExtension = (fileName as NSString).deletingPathExtension
+                let fileNameNoExtension = (fileName as NSString).deletingPathExtension
                 if fileNameExtension == "heic" && CCUtility.getFormatCompatibility() {
-                    fileName = fileNameWithoutExtension + ".jpg"
+                    fileName = fileNameNoExtension + ".jpg"
                 }
                 let oldPath = CCUtility.getDirectoryProviderStorageOcId(metadata.ocId, fileNameView: metadata.fileNameView)
                 let newFileName = NCUtilityFileSystem.shared.createFileName(fileName, serverUrl: metadata.serverUrl, account: metadata.account)

+ 1 - 1
iOSClient/Media/NCMedia.swift

@@ -464,7 +464,7 @@ extension NCMedia {
         guard var predicateForGetMetadatasMedia = predicate else { return }
 
         if livePhoto {
-            let predicateLivePhoto = NSPredicate(format: "!(ext == 'mov' AND livePhoto == true)")
+            let predicateLivePhoto = NSPredicate(format: "!(classFile == '\(NKCommon.typeClassFile.video.rawValue)' AND livePhoto == true)")
             predicateForGetMetadatasMedia = NSCompoundPredicate(andPredicateWithSubpredicates: [predicateForGetMetadatasMedia, predicateLivePhoto])
         }
 

+ 1 - 1
iOSClient/NCGlobal.swift

@@ -122,7 +122,7 @@ class NCGlobal: NSObject {
     // Database Realm
     //
     let databaseDefault                             = "nextcloud.realm"
-    let databaseSchemaVersion: UInt64               = 255
+    let databaseSchemaVersion: UInt64               = 256
     let fileAccounts: String                        = "accounts.json"
 
     // Intro selector

+ 4 - 4
iOSClient/Rename file/NCRenameFile.storyboard

@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="21225" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="V0q-CP-xMJ">
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="21507" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="V0q-CP-xMJ">
     <device id="retina6_0" orientation="portrait" appearance="light"/>
     <dependencies>
         <deployment identifier="iOS"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21207"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21505"/>
         <capability name="Safe area layout guides" minToolsVersion="9.0"/>
         <capability name="System colors in document resources" minToolsVersion="11.0"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
@@ -126,8 +126,8 @@
                     <connections>
                         <outlet property="cancelButton" destination="W5y-aT-UlI" id="P9l-o1-miU"/>
                         <outlet property="ext" destination="Q9G-gl-Fkc" id="YeW-bU-cMx"/>
-                        <outlet property="fileNameWithoutExt" destination="Ny2-wR-rxo" id="2Wq-hO-cwc"/>
-                        <outlet property="fileNameWithoutExtTrailingContraint" destination="BZO-yF-B1w" id="OBT-Ha-an7"/>
+                        <outlet property="fileNameNoExtension" destination="Ny2-wR-rxo" id="gQX-c7-EMv"/>
+                        <outlet property="fileNameNoExtensionTrailingContraint" destination="BZO-yF-B1w" id="VWV-as-Wa7"/>
                         <outlet property="point" destination="FOZ-fs-k7i" id="InG-ZA-GpE"/>
                         <outlet property="previewFile" destination="t26-3S-4T4" id="aOo-XG-pom"/>
                         <outlet property="renameButton" destination="hcV-V0-eZB" id="YGX-pw-OGW"/>

+ 22 - 22
iOSClient/Rename file/NCRenameFile.swift

@@ -37,10 +37,10 @@ class NCRenameFile: UIViewController, UITextFieldDelegate {
 
     @IBOutlet weak var titleLabel: UILabel!
     @IBOutlet weak var previewFile: UIImageView!
-    @IBOutlet weak var fileNameWithoutExt: UITextField!
+    @IBOutlet weak var fileNameNoExtension: UITextField!
     @IBOutlet weak var point: UILabel!
     @IBOutlet weak var ext: UITextField!
-    @IBOutlet weak var fileNameWithoutExtTrailingContraint: NSLayoutConstraint!
+    @IBOutlet weak var fileNameNoExtensionTrailingContraint: NSLayoutConstraint!
     @IBOutlet weak var cancelButton: UIButton!
     @IBOutlet weak var renameButton: UIButton!
 
@@ -66,9 +66,9 @@ class NCRenameFile: UIViewController, UITextFieldDelegate {
                 titleLabel.text = NSLocalizedString("_rename_file_", comment: "")
             }
 
-            fileNameWithoutExt.text = (metadata.fileNameView as NSString).deletingPathExtension
-            fileNameWithoutExt.delegate = self
-            fileNameWithoutExt.becomeFirstResponder()
+            fileNameNoExtension.text = (metadata.fileNameView as NSString).deletingPathExtension
+            fileNameNoExtension.delegate = self
+            fileNameNoExtension.becomeFirstResponder()
 
             ext.text = metadata.fileExtension
             ext.delegate = self
@@ -89,7 +89,7 @@ class NCRenameFile: UIViewController, UITextFieldDelegate {
 
                 ext.isHidden = true
                 point.isHidden = true
-                fileNameWithoutExtTrailingContraint.constant = 20
+                fileNameNoExtensionTrailingContraint.constant = 20
 
             } else {
 
@@ -97,17 +97,17 @@ class NCRenameFile: UIViewController, UITextFieldDelegate {
                     previewFile.image = NCBrandColor.cacheImages.file
                 }
 
-                fileNameWithoutExtTrailingContraint.constant = 90
+                fileNameNoExtensionTrailingContraint.constant = 90
             }
 
         } else if let fileName = self.fileName {
 
             titleLabel.text = NSLocalizedString("_rename_file_", comment: "")
 
-            fileNameWithoutExt.text = (fileName as NSString).deletingPathExtension
-            fileNameWithoutExt.delegate = self
-            fileNameWithoutExt.becomeFirstResponder()
-            fileNameWithoutExtTrailingContraint.constant = 90
+            fileNameNoExtension.text = (fileName as NSString).deletingPathExtension
+            fileNameNoExtension.delegate = self
+            fileNameNoExtension.becomeFirstResponder()
+            fileNameNoExtensionTrailingContraint.constant = 90
 
             ext.text = (fileName as NSString).pathExtension
             ext.delegate = self
@@ -136,7 +136,7 @@ class NCRenameFile: UIViewController, UITextFieldDelegate {
             dismiss(animated: true)
         }
 
-        fileNameWithoutExt.selectAll(nil)
+        fileNameNoExtension.selectAll(nil)
     }
 
     func textFieldShouldReturn(_ textField: UITextField) -> Bool {
@@ -155,7 +155,7 @@ class NCRenameFile: UIViewController, UITextFieldDelegate {
 
     @IBAction func renameFile(_ sender: Any) {
 
-        var fileNameWithoutExtNew = ""
+        var fileNameNoExtensionNew = ""
         var extNew = ""
         var fileNameNew = ""
 
@@ -163,16 +163,16 @@ class NCRenameFile: UIViewController, UITextFieldDelegate {
 
             let extCurrent = (metadata.fileNameView as NSString).pathExtension
 
-            if fileNameWithoutExt.text == nil || fileNameWithoutExt.text?.count == 0 {
-                self.fileNameWithoutExt.text = (metadata.fileNameView as NSString).deletingPathExtension
+            if fileNameNoExtension.text == nil || fileNameNoExtension.text?.count == 0 {
+                self.fileNameNoExtension.text = (metadata.fileNameView as NSString).deletingPathExtension
                 return
             } else {
-                fileNameWithoutExtNew = fileNameWithoutExt.text!
+                fileNameNoExtensionNew = fileNameNoExtension.text!
             }
 
             if metadata.directory {
 
-                fileNameNew = fileNameWithoutExtNew
+                fileNameNew = fileNameNoExtensionNew
                 renameMetadata(metadata, fileNameNew: fileNameNew)
 
             } else {
@@ -192,7 +192,7 @@ class NCRenameFile: UIViewController, UITextFieldDelegate {
                     var title = NSLocalizedString("_use_", comment: "") + " ." + extNew
                     alertController.addAction(UIAlertAction(title: title, style: .default, handler: { _ in
 
-                        fileNameNew = fileNameWithoutExtNew + "." + extNew
+                        fileNameNew = fileNameNoExtensionNew + "." + extNew
                         self.renameMetadata(metadata, fileNameNew: fileNameNew)
                     }))
 
@@ -205,22 +205,22 @@ class NCRenameFile: UIViewController, UITextFieldDelegate {
 
                 } else {
 
-                    fileNameNew = fileNameWithoutExtNew + "." + extNew
+                    fileNameNew = fileNameNoExtensionNew + "." + extNew
                     renameMetadata(metadata, fileNameNew: fileNameNew)
                 }
             }
 
         } else if let fileName = self.fileName {
 
-            if fileNameWithoutExt.text == nil || fileNameWithoutExt.text?.count == 0 {
-                fileNameWithoutExt.text = (fileName as NSString).deletingPathExtension
+            if fileNameNoExtension.text == nil || fileNameNoExtension.text?.count == 0 {
+                fileNameNoExtension.text = (fileName as NSString).deletingPathExtension
                 return
             } else if ext.text == nil || ext.text?.count == 0 {
                 ext.text = (fileName as NSString).pathExtension
                 return
             }
 
-            fileNameNew = (fileNameWithoutExt.text ?? "") + "." + (ext.text ?? "")
+            fileNameNew = (fileNameNoExtension.text ?? "") + "." + (ext.text ?? "")
             self.dismiss(animated: true) {
                 self.delegate?.rename(fileName: fileName, fileNameNew: fileNameNew)
             }

+ 0 - 1
iOSClient/Security/NCEndToEndMetadata.swift

@@ -217,7 +217,6 @@ class NCEndToEndMetadata: NSObject {
 
                         // Update metadata on tableMetadata
                         metadata.fileNameView = encryptedFileAttributes.filename
-                        metadata.fileNameWithoutExt = (encryptedFileAttributes.filename as NSString).deletingPathExtension
 
                         let results = NKCommon.shared.getInternalType(fileName: encryptedFileAttributes.filename, mimeType: metadata.contentType, directory: metadata.directory)
 

+ 0 - 1
iOSClient/Utility/NCUtility.swift

@@ -464,7 +464,6 @@ class NCUtility: NSObject {
         if asset.mediaType == PHAssetMediaType.image && (extensionAsset == "HEIC" || extensionAsset == "DNG") && CCUtility.getFormatCompatibility() {
             let fileName = (metadata.fileNameView as NSString).deletingPathExtension + ".jpg"
             metadata.contentType = "image/jpeg"
-            metadata.ext = "jpg"
             fileNamePath = NSTemporaryDirectory() + fileName
             metadata.fileNameView = fileName
             if !metadata.e2eEncrypted {

+ 1 - 1
iOSClient/Viewer/NCViewerRichdocument/NCViewerRichdocument.swift

@@ -184,7 +184,7 @@ class NCViewerRichdocument: UIViewController, WKNavigationDelegate, WKScriptMess
                         guard let type = values["Type"] as? String else { return }
                         guard let urlString = values["URL"] as? String else { return }
                         guard let url = URL(string: urlString) else { return }
-                        let fileNameLocalPath = CCUtility.getDirectoryUserData() + "/" + metadata.fileNameWithoutExt
+                        let fileNameLocalPath = CCUtility.getDirectoryUserData() + "/" + (metadata.fileName as NSString).deletingPathExtension
 
                         NCActivityIndicator.shared.start(backgroundView: view)