Quellcode durchsuchen

Add lock-owner-editor property

- used e.g. for showing the app icon

Signed-off-by: Henrik Storch <henrik.storch@nextcloud.com>
Henrik Storch vor 2 Jahren
Ursprung
Commit
3840170fd2

+ 1 - 0
iOSClient/Data/NCDatabase.swift

@@ -386,6 +386,7 @@ class tableMetadata: Object, NCUserBaseUrl {
     @objc dynamic var ownerDisplayName = ""
     @objc public var lock = false
     @objc public var lockOwner = ""
+    @objc public var lockOwnerEditor = ""
     @objc public var lockOwnerType = 0
     @objc public var lockOwnerDisplayName = ""
     @objc public var lockTime: Date?

+ 1 - 0
iOSClient/Data/NCManageDatabase+Metadata.swift

@@ -66,6 +66,7 @@ extension NCManageDatabase {
         metadata.ownerDisplayName = file.ownerDisplayName
         metadata.lock = file.lock
         metadata.lockOwner = file.lockOwner
+        metadata.lockOwnerEditor = file.lockOwnerEditor
         metadata.lockOwnerType = file.lockOwnerType
         metadata.lockOwnerDisplayName = file.lockOwnerDisplayName
         metadata.lockTime = file.lockTime

+ 8 - 5
iOSClient/Menu/NCCollectionViewCommon+Menu.swift

@@ -75,7 +75,13 @@ extension NCCollectionViewCommon {
         if metadata.lock {
             var lockTimeString: String?
             var lockOwnerName = metadata.lockOwnerDisplayName.isEmpty ? metadata.lockOwner : metadata.lockOwnerDisplayName
-            if metadata.lockOwnerType != 0 { lockOwnerName += " app" }
+            var lockIcon = NCUtility.shared.loadUserImage(for: metadata.lockOwner, displayName: lockOwnerName, userBaseUrl: metadata)
+            if metadata.lockOwnerType != 0 {
+                lockOwnerName += " app"
+                if !metadata.lockOwnerEditor.isEmpty, let appIcon = UIImage(named: metadata.lockOwnerEditor) {
+                    lockIcon = appIcon
+                }
+            }
             if let lockTime = metadata.lockTimeOut, let timeInterval = (lockTime.timeIntervalSince1970 - Date().timeIntervalSince1970).format() {
                 lockTimeString = String(format: NSLocalizedString("_time_remaining_", comment: ""), timeInterval)
             } else if let lockTime = metadata.lockTime {
@@ -86,10 +92,7 @@ extension NCCollectionViewCommon {
                 NCMenuAction(
                     title: String(format: NSLocalizedString("_locked_by_", comment: ""), lockOwnerName),
                     details: lockTimeString,
-                    icon: NCUtility.shared.loadUserImage(
-                        for: metadata.lockOwner,
-                           displayName: lockOwnerName,
-                           userBaseUrl: metadata),
+                    icon: lockIcon,
                     action: nil)
             )
         }