marinofaggiana 4 лет назад
Родитель
Сommit
40e083d74b
4 измененных файлов с 18 добавлено и 4 удалено
  1. 1 1
      Cartfile.resolved
  2. 1 1
      iOSClient/CCGlobal.h
  3. 3 0
      iOSClient/Database/NCDatabase.swift
  4. 13 2
      iOSClient/Database/NCManageDatabase.swift

+ 1 - 1
Cartfile.resolved

@@ -18,7 +18,7 @@ github "krzyzanowskim/OpenSSL" "1.0.218"
 github "malcommac/SwiftRichString" "3.7.2"
 github "malcommac/SwiftRichString" "3.7.2"
 github "marinofaggiana/KTVHTTPCache" "2.0.2"
 github "marinofaggiana/KTVHTTPCache" "2.0.2"
 github "marinofaggiana/TOPasscodeViewController" "0.0.7"
 github "marinofaggiana/TOPasscodeViewController" "0.0.7"
-github "nextcloud/ios-communication-library" "e562713a280f29886ef427c0b5af77d69870a3c6"
+github "nextcloud/ios-communication-library" "179e99de8ddee4d4fa279a094a743102ca897a3c"
 github "realm/realm-cocoa" "v5.3.3"
 github "realm/realm-cocoa" "v5.3.3"
 github "rechsteiner/Parchment" "v2.4.0"
 github "rechsteiner/Parchment" "v2.4.0"
 github "scenee/FloatingPanel" "v1.7.5"
 github "scenee/FloatingPanel" "v1.7.5"

+ 1 - 1
iOSClient/CCGlobal.h

@@ -85,7 +85,7 @@
 
 
 // Database Realm
 // Database Realm
 #define k_databaseDefault                               @"nextcloud.realm"
 #define k_databaseDefault                               @"nextcloud.realm"
-#define k_databaseSchemaVersion                         134
+#define k_databaseSchemaVersion                         135
 
 
 // Intro selector
 // Intro selector
 #define k_intro_login                                   0
 #define k_intro_login                                   0

+ 3 - 0
iOSClient/Database/NCDatabase.swift

@@ -308,10 +308,13 @@ class tableMetadata: Object {
     @objc dynamic var e2eEncrypted: Bool = false
     @objc dynamic var e2eEncrypted: Bool = false
     @objc dynamic var edited: Bool = false
     @objc dynamic var edited: Bool = false
     @objc dynamic var etag = ""
     @objc dynamic var etag = ""
+    @objc dynamic var ext = ""
     @objc dynamic var favorite: Bool = false
     @objc dynamic var favorite: Bool = false
     @objc dynamic var fileId = ""
     @objc dynamic var fileId = ""
     @objc dynamic var fileName = ""
     @objc dynamic var fileName = ""
     @objc dynamic var fileNameView = ""
     @objc dynamic var fileNameView = ""
+    @objc dynamic var fileNameWithoutExt = ""
+    @objc dynamic var hasMOVlinked: Bool = false
     @objc dynamic var hasPreview: Bool = false
     @objc dynamic var hasPreview: Bool = false
     @objc dynamic var iconName = ""
     @objc dynamic var iconName = ""
     @objc dynamic var mountType = ""
     @objc dynamic var mountType = ""

+ 13 - 2
iOSClient/Database/NCManageDatabase.swift

@@ -103,7 +103,6 @@ class NCManageDatabase: NSObject {
                         migration.deleteData(forType: tableE2eEncryptionLock.className())
                         migration.deleteData(forType: tableE2eEncryptionLock.className())
                         migration.deleteData(forType: tableCapabilities.className())
                         migration.deleteData(forType: tableCapabilities.className())
                         migration.deleteData(forType: tableComments.className())
                         migration.deleteData(forType: tableComments.className())
-                        migration.deleteData(forType: tableMetadata.className())
                         migration.deleteData(forType: tableDirectory.className())
                         migration.deleteData(forType: tableDirectory.className())
                     }
                     }
                     
                     
@@ -114,6 +113,10 @@ class NCManageDatabase: NSObject {
                         migration.deleteData(forType: tableExternalSites.className())
                         migration.deleteData(forType: tableExternalSites.className())
                     }
                     }
                     
                     
+                    if oldSchemaVersion < 135 {
+                        migration.deleteData(forType: tableMetadata.className())
+                    }
+                    
                 }, shouldCompactOnLaunch: { totalBytes, usedBytes in
                 }, shouldCompactOnLaunch: { totalBytes, usedBytes in
                     
                     
                     // totalBytes refers to the size of the file on disk in bytes (data + free space)
                     // totalBytes refers to the size of the file on disk in bytes (data + free space)
@@ -1725,10 +1728,13 @@ class NCManageDatabase: NSObject {
         metadata.directory = file.directory
         metadata.directory = file.directory
         metadata.e2eEncrypted = file.e2eEncrypted
         metadata.e2eEncrypted = file.e2eEncrypted
         metadata.etag = file.etag
         metadata.etag = file.etag
+        metadata.ext = file.ext
         metadata.favorite = file.favorite
         metadata.favorite = file.favorite
         metadata.fileId = file.fileId
         metadata.fileId = file.fileId
         metadata.fileName = file.fileName
         metadata.fileName = file.fileName
         metadata.fileNameView = file.fileName
         metadata.fileNameView = file.fileName
+        metadata.fileNameWithoutExt = file.fileNameWithoutExt
+        metadata.hasMOVlinked = file.hasMOVlinked
         metadata.hasPreview = file.hasPreview
         metadata.hasPreview = file.hasPreview
         metadata.iconName = file.iconName
         metadata.iconName = file.iconName
         metadata.mountType = file.mountType
         metadata.mountType = file.mountType
@@ -1811,9 +1817,11 @@ class NCManageDatabase: NSObject {
         metadata.date = Date() as NSDate
         metadata.date = Date() as NSDate
         metadata.hasPreview = true
         metadata.hasPreview = true
         metadata.iconName = results.iconName
         metadata.iconName = results.iconName
-        metadata.ocId = ocId
+        metadata.ext = (fileName as NSString).pathExtension.lowercased()
         metadata.fileName = fileName
         metadata.fileName = fileName
         metadata.fileNameView = fileName
         metadata.fileNameView = fileName
+        metadata.fileNameWithoutExt = (fileName as NSString).deletingPathExtension
+        metadata.ocId = ocId
         metadata.serverUrl = serverUrl
         metadata.serverUrl = serverUrl
         metadata.typeFile = results.typeFile
         metadata.typeFile = results.typeFile
         metadata.uploadDate = Date() as NSDate
         metadata.uploadDate = Date() as NSDate
@@ -1875,10 +1883,13 @@ class NCManageDatabase: NSObject {
                     metadata.directory = file.directory
                     metadata.directory = file.directory
                     metadata.e2eEncrypted = file.e2eEncrypted
                     metadata.e2eEncrypted = file.e2eEncrypted
                     metadata.etag = file.etag
                     metadata.etag = file.etag
+                    metadata.ext = file.ext
                     metadata.favorite = file.favorite
                     metadata.favorite = file.favorite
                     metadata.fileId = file.fileId
                     metadata.fileId = file.fileId
                     metadata.fileName = file.fileName
                     metadata.fileName = file.fileName
                     metadata.fileNameView = file.fileName
                     metadata.fileNameView = file.fileName
+                    metadata.fileNameWithoutExt = file.fileNameWithoutExt
+                    metadata.hasMOVlinked = file.hasMOVlinked
                     metadata.hasPreview = file.hasPreview
                     metadata.hasPreview = file.hasPreview
                     metadata.iconName = file.iconName
                     metadata.iconName = file.iconName
                     metadata.mountType = file.mountType
                     metadata.mountType = file.mountType