marinofaggiana 4 years ago
parent
commit
65f7ed4fa3

+ 2 - 2
iOSClient/BackgroundImageColor/NCBackgroundImageColor.swift

@@ -43,8 +43,8 @@ class NCBackgroundImageColor: UIViewController {
     private let defaultColorPickerSize = CGSize(width: 200, height: 200)
     private let brightnessSliderWidthHeightRatio: CGFloat = 0.1
     
-    private var darkColorHexString = ""
-    private var lightColorHexString = ""
+    private var darkColorHexString = "#000000"
+    private var lightColorHexString = "#FFFFFF"
     
     public var collectionViewCommon: NCCollectionViewCommon?
     public var defaultDarkColor: UIColor = .black

+ 5 - 0
iOSClient/Data/NCDatabase.swift

@@ -79,6 +79,11 @@ class tableAccount: Object {
     @objc dynamic var userStatusStatusIsUserDefined: Bool = false
     @objc dynamic var webpage = ""
     @objc dynamic var zip = ""
+    
+    // COLOR Files
+    @objc dynamic var darkColorFiles = ""
+    @objc dynamic var lightColorFiles = ""
+
     // HC
     @objc dynamic var hcIsTrial: Bool = false
     @objc dynamic var hcTrialExpired: Bool = false

+ 16 - 0
iOSClient/Data/NCManageDatabase.swift

@@ -723,6 +723,22 @@ class NCManageDatabase: NSObject {
         }
     }
     
+    @objc func setAccountColorFiles(lightColorFiles: String, darkColorFiles: String) {
+        
+        let realm = try! Realm()
+
+        do {
+            try realm.safeWrite {
+                if let result = realm.objects(tableAccount.self).filter("active == true").first {
+                    result.lightColorFiles = lightColorFiles
+                    result.darkColorFiles = darkColorFiles
+                }
+            }
+        } catch let error {
+            NCCommunicationCommon.shared.writeLog("Could not write to database: \(error)")
+        }
+    }
+    
     //MARK: -
     //MARK: Table Activity
 

+ 10 - 2
iOSClient/Main/Collection Common/NCCollectionViewCommon.swift

@@ -247,12 +247,13 @@ class NCCollectionViewCommon: UIViewController, UIGestureRecognizerDelegate, UIS
         selectOcId.removeAll()
         
         setNavigationItem()
-    
+        setLayout()
+        
         reloadDataSource()
     }
     
     @objc func changeTheming() {
-        collectionView.reloadData()
+        setLayout()
     }
     
     @objc func reloadDataSource(_ notification: NSNotification) {
@@ -624,19 +625,26 @@ class NCCollectionViewCommon: UIViewController, UIGestureRecognizerDelegate, UIS
         }
         
         // COLOR BACKGROUND
+        let activeAccount = NCManageDatabase.shared.getActiveAccount()
         if traitCollection.userInterfaceStyle == .dark {
             if layoutForView?.darkColorBackground != "" {
                 collectionView.backgroundColor = UIColor.init(hex: layoutForView?.darkColorBackground ?? "")
+            } else if activeAccount?.darkColorFiles != "" {
+                collectionView.backgroundColor = UIColor.init(hex: activeAccount?.darkColorFiles ?? "")
             } else {
                 collectionView.backgroundColor = defaultBackgroundColor
             }
         } else {
             if layoutForView?.lightColorBackground != "" {
                 collectionView.backgroundColor = UIColor.init(hex: layoutForView?.lightColorBackground ?? "")
+            } else if activeAccount?.lightColorFiles != "" {
+                collectionView.backgroundColor = UIColor.init(hex: activeAccount?.lightColorFiles ?? "")
             } else {
                 collectionView.backgroundColor = defaultBackgroundColor
             }
         }
+        
+        collectionView.reloadData()
     }
 
     // MARK: - Empty

+ 1 - 1
iOSClient/NCGlobal.swift

@@ -81,7 +81,7 @@ class NCGlobal: NSObject {
     // Database Realm
     //
     let databaseDefault                             = "nextcloud.realm"
-    let databaseSchemaVersion: UInt64               = 175
+    let databaseSchemaVersion: UInt64               = 176
     
     // Intro selector
     //