diff --git a/src/db/models/collection.rs b/src/db/models/collection.rs index 905ca41e..5261bec4 100644 --- a/src/db/models/collection.rs +++ b/src/db/models/collection.rs @@ -278,6 +278,7 @@ pub struct CollectionCipher { /// Database methods impl CollectionCipher { pub fn save(cipher_uuid: &str, collection_uuid: &str, conn: &DbConn) -> EmptyResult { + Self::update_users_revision(&collection_uuid, conn); diesel::replace_into(ciphers_collections::table) .values(( ciphers_collections::cipher_uuid.eq(cipher_uuid), @@ -288,6 +289,7 @@ impl CollectionCipher { } pub fn delete(cipher_uuid: &str, collection_uuid: &str, conn: &DbConn) -> EmptyResult { + Self::update_users_revision(&collection_uuid, conn); diesel::delete( ciphers_collections::table .filter(ciphers_collections::cipher_uuid.eq(cipher_uuid)) @@ -308,4 +310,10 @@ impl CollectionCipher { .execute(&**conn) .map_res("Error removing ciphers from collection") } + + pub fn update_users_revision(collection_uuid: &str, conn: &DbConn) { + if let Some(collection) = Collection::find_by_uuid(collection_uuid, conn) { + collection.update_users_revision(conn); + } + } }