From 21880c5f825b5e79aa054996313d8a36b275299f Mon Sep 17 00:00:00 2001
From: Awiteb
Date: Thu, 18 Jul 2024 11:14:49 +0300
Subject: [PATCH] refactor: Use `get_user_status` util in more places
Signed-off-by: Awiteb
---
crates/oxidetalis/src/database/user_status.rs | 72 +++++++++----------
1 file changed, 32 insertions(+), 40 deletions(-)
diff --git a/crates/oxidetalis/src/database/user_status.rs b/crates/oxidetalis/src/database/user_status.rs
index 24d96ae..47d9303 100644
--- a/crates/oxidetalis/src/database/user_status.rs
+++ b/crates/oxidetalis/src/database/user_status.rs
@@ -103,17 +103,15 @@ impl UsersStatusExt for DatabaseConnection {
whitelister: &UserModel,
target_public_key: &PublicKey,
) -> ServerResult {
- whitelister
- .find_related(UsersStatusEntity)
- .filter(
- UsersStatusColumn::Target
- .eq(target_public_key.to_string())
- .and(UsersStatusColumn::Status.eq(AccessStatus::Whitelisted)),
- )
- .one(self)
- .await
- .map(|u| u.is_some())
- .map_err(Into::into)
+ get_user_status(
+ self,
+ whitelister,
+ target_public_key,
+ AccessStatus::Whitelisted,
+ )
+ .await
+ .map(|u| u.is_some())
+ .map_err(Into::into)
}
async fn is_blacklisted(
@@ -121,17 +119,15 @@ impl UsersStatusExt for DatabaseConnection {
blacklister: &UserModel,
target_public_key: &PublicKey,
) -> ServerResult {
- blacklister
- .find_related(UsersStatusEntity)
- .filter(
- UsersStatusColumn::Target
- .eq(target_public_key.to_string())
- .and(UsersStatusColumn::Status.eq(AccessStatus::Blacklisted)),
- )
- .one(self)
- .await
- .map(|u| u.is_some())
- .map_err(Into::into)
+ get_user_status(
+ self,
+ blacklister,
+ target_public_key,
+ AccessStatus::Blacklisted,
+ )
+ .await
+ .map(|u| u.is_some())
+ .map_err(Into::into)
}
async fn add_to_whitelist(
@@ -223,15 +219,13 @@ impl UsersStatusExt for DatabaseConnection {
whitelister: &UserModel,
target_public_key: &PublicKey,
) -> ServerResult<()> {
- if let Some(target_user) = whitelister
- .find_related(UsersStatusEntity)
- .filter(
- UsersStatusColumn::Target
- .eq(target_public_key.to_string())
- .and(UsersStatusColumn::Status.eq(AccessStatus::Whitelisted)),
- )
- .one(self)
- .await?
+ if let Some(target_user) = get_user_status(
+ self,
+ whitelister,
+ target_public_key,
+ AccessStatus::Whitelisted,
+ )
+ .await?
{
target_user.delete(self).await?;
}
@@ -243,15 +237,13 @@ impl UsersStatusExt for DatabaseConnection {
blacklister: &UserModel,
target_public_key: &PublicKey,
) -> ServerResult<()> {
- if let Some(target_user) = blacklister
- .find_related(UsersStatusEntity)
- .filter(
- UsersStatusColumn::Target
- .eq(target_public_key.to_string())
- .and(UsersStatusColumn::Status.eq(AccessStatus::Blacklisted)),
- )
- .one(self)
- .await?
+ if let Some(target_user) = get_user_status(
+ self,
+ blacklister,
+ target_public_key,
+ AccessStatus::Blacklisted,
+ )
+ .await?
{
target_user.delete(self).await?;
}