mirror of
https://github.com/mCaptcha/mCaptcha.git
synced 2026-02-11 10:05:41 +00:00
feat: implement delete_captcha_levels and delete_captcha for sqlx postgres
This commit is contained in:
@@ -374,6 +374,44 @@ impl MCDatabase for Database {
|
|||||||
|
|
||||||
Ok(exists)
|
Ok(exists)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Delete all levels of a captcha
|
||||||
|
async fn delete_captcha_levels(
|
||||||
|
&self,
|
||||||
|
username: &str,
|
||||||
|
captcha_key: &str,
|
||||||
|
) -> DBResult<()> {
|
||||||
|
sqlx::query!(
|
||||||
|
"DELETE FROM mcaptcha_levels
|
||||||
|
WHERE config_id = (
|
||||||
|
SELECT config_id FROM mcaptcha_config where key = ($1)
|
||||||
|
AND user_id = (
|
||||||
|
SELECT ID from mcaptcha_users WHERE name = $2
|
||||||
|
)
|
||||||
|
)",
|
||||||
|
captcha_key,
|
||||||
|
username
|
||||||
|
)
|
||||||
|
.execute(&self.pool)
|
||||||
|
.await
|
||||||
|
.map_err(map_register_err)?;
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Delete captcha
|
||||||
|
async fn delete_captcha(&self, username: &str, captcha_key: &str) -> DBResult<()> {
|
||||||
|
sqlx::query!(
|
||||||
|
"DELETE FROM mcaptcha_config WHERE key = ($1)
|
||||||
|
AND
|
||||||
|
user_id = (SELECT ID FROM mcaptcha_users WHERE name = $2)",
|
||||||
|
captcha_key,
|
||||||
|
username,
|
||||||
|
)
|
||||||
|
.execute(&self.pool)
|
||||||
|
.await
|
||||||
|
.map_err(map_register_err)?;
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn now_unix_time_stamp() -> i64 {
|
fn now_unix_time_stamp() -> i64 {
|
||||||
|
|||||||
Reference in New Issue
Block a user