Daniel García
4 years ago
No known key found for this signature in database
GPG Key ID: FC8A7D14C3CD543A
2 changed files with
13 additions and
6 deletions
-
src/db/models/collection.rs
-
src/db/models/organization.rs
|
|
@ -356,13 +356,20 @@ impl CollectionUser { |
|
|
|
}} |
|
|
|
} |
|
|
|
|
|
|
|
pub fn delete_all_by_user(user_uuid: &str, conn: &DbConn) -> EmptyResult { |
|
|
|
User::update_uuid_revision(&user_uuid, conn); |
|
|
|
pub fn delete_all_by_user_and_org(user_uuid: &str, org_uuid: &str, conn: &DbConn) -> EmptyResult { |
|
|
|
let collectionusers = Self::find_by_organization_and_user_uuid(org_uuid, user_uuid, conn); |
|
|
|
|
|
|
|
db_run! { conn: { |
|
|
|
diesel::delete(users_collections::table.filter(users_collections::user_uuid.eq(user_uuid))) |
|
|
|
.execute(conn) |
|
|
|
.map_res("Error removing user from collections") |
|
|
|
for user in collectionusers { |
|
|
|
diesel::delete(users_collections::table.filter( |
|
|
|
users_collections::user_uuid.eq(user_uuid) |
|
|
|
.and(users_collections::collection_uuid.eq(user.collection_uuid)) |
|
|
|
|
|
|
|
)) |
|
|
|
.execute(conn) |
|
|
|
.map_res("Error removing user from collections")?; |
|
|
|
} |
|
|
|
Ok(()) |
|
|
|
}} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
@ -389,7 +389,7 @@ impl UserOrganization { |
|
|
|
pub fn delete(self, conn: &DbConn) -> EmptyResult { |
|
|
|
User::update_uuid_revision(&self.user_uuid, conn); |
|
|
|
|
|
|
|
CollectionUser::delete_all_by_user(&self.user_uuid, &conn)?; |
|
|
|
CollectionUser::delete_all_by_user_and_org(&self.user_uuid, &self.org_uuid, &conn)?; |
|
|
|
|
|
|
|
db_run! { conn: { |
|
|
|
diesel::delete(users_organizations::table.filter(users_organizations::uuid.eq(self.uuid))) |
|
|
|