You've already forked AstralRinth
forked from didirus/AstralRinth
Fix two database errors (#3483)
* Fixes error when an admin tries transferring project ownership * Fixes error when trying to delete a user when they previously have a transaction Co-authored-by: Jai Agrawal <18202329+Geometrically@users.noreply.github.com>
This commit is contained in:
@@ -657,6 +657,18 @@ impl User {
|
||||
.execute(&mut **transaction)
|
||||
.await?;
|
||||
|
||||
sqlx::query!(
|
||||
"
|
||||
UPDATE charges
|
||||
SET user_id = $1
|
||||
WHERE user_id = $2
|
||||
",
|
||||
deleted_user as UserId,
|
||||
id as UserId,
|
||||
)
|
||||
.execute(&mut **transaction)
|
||||
.await?;
|
||||
|
||||
sqlx::query!(
|
||||
"
|
||||
DELETE FROM user_backup_codes
|
||||
|
||||
@@ -936,19 +936,26 @@ pub async fn transfer_ownership(
|
||||
let mut transaction = pool.begin().await?;
|
||||
|
||||
// The following are the only places new_is_owner is modified.
|
||||
TeamMember::edit_team_member(
|
||||
id.into(),
|
||||
current_user.id.into(),
|
||||
None,
|
||||
None,
|
||||
None,
|
||||
None,
|
||||
None,
|
||||
None,
|
||||
Some(false),
|
||||
&mut transaction,
|
||||
)
|
||||
.await?;
|
||||
if let Some(former_owner) =
|
||||
TeamMember::get_from_team_full(id.into(), &**pool, &redis)
|
||||
.await?
|
||||
.into_iter()
|
||||
.find(|x| x.is_owner)
|
||||
{
|
||||
TeamMember::edit_team_member(
|
||||
id.into(),
|
||||
former_owner.user_id,
|
||||
None,
|
||||
None,
|
||||
None,
|
||||
None,
|
||||
None,
|
||||
None,
|
||||
Some(false),
|
||||
&mut transaction,
|
||||
)
|
||||
.await?;
|
||||
}
|
||||
|
||||
TeamMember::edit_team_member(
|
||||
id.into(),
|
||||
|
||||
Reference in New Issue
Block a user