Browse Source

Fix collections and native app issue (#4685)

Collections were not visible in the organization view.
This was because the `flexibleCollections` was set to `true`

Found an issue with loading some old created Secure Notes which had `{}` or `{"type":null}` as there `data` value.
This isn't allowed. When detected, replace it with `{"type":0}`

Fixes #4682
Fixes #4590
Mathijs van Veluw 1 year ago
parent
commit
d42b264a93
2 changed files with 7 additions and 1 deletions
  1. 6 0
      src/db/models/cipher.rs
  2. 1 1
      src/db/models/organization.rs

+ 6 - 0
src/db/models/cipher.rs

@@ -189,6 +189,12 @@ impl Cipher {
             }
         }
 
+        // Fix secure note issues when data is `{}`
+        // This breaks at least the native mobile clients
+        if self.atype == 2 && (self.data.eq("{}") || self.data.to_ascii_lowercase().eq("{\"type\":null}")) {
+            type_data_json = json!({"type": 0});
+        }
+
         // Clone the type_data and add some default value.
         let mut data_json = type_data_json.clone();
 

+ 1 - 1
src/db/models/organization.rs

@@ -406,7 +406,7 @@ impl UserOrganization {
             "accessSecretsManager": false,
             "limitCollectionCreationDeletion": true,
             "allowAdminAccessToAllCollectionItems": true,
-            "flexibleCollections": true,
+            "flexibleCollections": false,
 
             "permissions": permissions,