mirror of
https://github.com/mCaptcha/mCaptcha.git
synced 2026-02-11 10:05:41 +00:00
feat: migrate update username to use db_* interface
This commit is contained in:
@@ -39,19 +39,6 @@
|
|||||||
},
|
},
|
||||||
"query": "SELECT email, secret FROM mcaptcha_users WHERE name = ($1)"
|
"query": "SELECT email, secret FROM mcaptcha_users WHERE name = ($1)"
|
||||||
},
|
},
|
||||||
"2021bc0eb03df51af06b59e2a1efdba231e8f35d9cfb5c5b55241c566b9055ce": {
|
|
||||||
"describe": {
|
|
||||||
"columns": [],
|
|
||||||
"nullable": [],
|
|
||||||
"parameters": {
|
|
||||||
"Left": [
|
|
||||||
"Varchar",
|
|
||||||
"Text"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"query": "UPDATE mcaptcha_users set name = $1\n WHERE name = $2"
|
|
||||||
},
|
|
||||||
"238569a64d7dbd252e3b27204f207e8a8548109717b89495ddf8f9a870c7c75d": {
|
"238569a64d7dbd252e3b27204f207e8a8548109717b89495ddf8f9a870c7c75d": {
|
||||||
"describe": {
|
"describe": {
|
||||||
"columns": [],
|
"columns": [],
|
||||||
@@ -169,6 +156,21 @@
|
|||||||
},
|
},
|
||||||
"query": "SELECT time FROM mcaptcha_pow_confirmed_stats \n WHERE \n config_id = (\n SELECT config_id FROM mcaptcha_config \n WHERE \n key = $1\n AND\n user_id = (\n SELECT \n ID FROM mcaptcha_users WHERE name = $2))\n ORDER BY time DESC"
|
"query": "SELECT time FROM mcaptcha_pow_confirmed_stats \n WHERE \n config_id = (\n SELECT config_id FROM mcaptcha_config \n WHERE \n key = $1\n AND\n user_id = (\n SELECT \n ID FROM mcaptcha_users WHERE name = $2))\n ORDER BY time DESC"
|
||||||
},
|
},
|
||||||
|
"45d9e9fb6344fe3a18c2529d50c935d3837bfe25c96595beb6970d6067720578": {
|
||||||
|
"describe": {
|
||||||
|
"columns": [],
|
||||||
|
"nullable": [],
|
||||||
|
"parameters": {
|
||||||
|
"Left": [
|
||||||
|
"Varchar",
|
||||||
|
"Text",
|
||||||
|
"Varchar",
|
||||||
|
"Varchar"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"query": "insert into mcaptcha_users \n (name , password, email, secret) values ($1, $2, $3, $4)"
|
||||||
|
},
|
||||||
"4a5dfbc5aeb2bab290a09640cc25223d484fbc7549e5bc54f33bab8616725031": {
|
"4a5dfbc5aeb2bab290a09640cc25223d484fbc7549e5bc54f33bab8616725031": {
|
||||||
"describe": {
|
"describe": {
|
||||||
"columns": [
|
"columns": [
|
||||||
@@ -561,6 +563,18 @@
|
|||||||
},
|
},
|
||||||
"query": "SELECT time FROM mcaptcha_pow_fetched_stats\n WHERE \n config_id = (\n SELECT \n config_id FROM mcaptcha_config \n WHERE \n key = $1\n AND\n user_id = (\n SELECT \n ID FROM mcaptcha_users WHERE name = $2))\n ORDER BY time DESC"
|
"query": "SELECT time FROM mcaptcha_pow_fetched_stats\n WHERE \n config_id = (\n SELECT \n config_id FROM mcaptcha_config \n WHERE \n key = $1\n AND\n user_id = (\n SELECT \n ID FROM mcaptcha_users WHERE name = $2))\n ORDER BY time DESC"
|
||||||
},
|
},
|
||||||
|
"ca9d5241f1234d1825f7ead391ebe9099fca776e7101ac6e1761881606def5fa": {
|
||||||
|
"describe": {
|
||||||
|
"columns": [],
|
||||||
|
"nullable": [],
|
||||||
|
"parameters": {
|
||||||
|
"Left": [
|
||||||
|
"Text"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"query": "DELETE FROM mcaptcha_users WHERE name = ($1)"
|
||||||
|
},
|
||||||
"d85750d86bbafeaf6f52cec3d49d708bef1a9ef85bbd9c55d63c9c27cb93223c": {
|
"d85750d86bbafeaf6f52cec3d49d708bef1a9ef85bbd9c55d63c9c27cb93223c": {
|
||||||
"describe": {
|
"describe": {
|
||||||
"columns": [],
|
"columns": [],
|
||||||
|
|||||||
@@ -19,7 +19,6 @@ use actix_web::{web, HttpResponse, Responder};
|
|||||||
use argon2_creds::Config;
|
use argon2_creds::Config;
|
||||||
use db_core::Login;
|
use db_core::Login;
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
use sqlx::Error::RowNotFound;
|
|
||||||
|
|
||||||
use crate::api::v1::auth::runners::Password;
|
use crate::api::v1::auth::runners::Password;
|
||||||
use crate::errors::*;
|
use crate::errors::*;
|
||||||
|
|||||||
@@ -65,26 +65,10 @@ async fn set_username(
|
|||||||
|
|
||||||
let processed_uname = data.creds.username(&payload.username)?;
|
let processed_uname = data.creds.username(&payload.username)?;
|
||||||
|
|
||||||
let res = sqlx::query!(
|
data.dblib
|
||||||
"UPDATE mcaptcha_users set name = $1
|
.update_username(&username, &processed_uname)
|
||||||
WHERE name = $2",
|
.await?;
|
||||||
&processed_uname,
|
|
||||||
&username,
|
|
||||||
)
|
|
||||||
.execute(&data.db)
|
|
||||||
.await;
|
|
||||||
|
|
||||||
if res.is_err() {
|
|
||||||
if let Err(sqlx::Error::Database(err)) = res {
|
|
||||||
if err.code() == Some(Cow::from("23505"))
|
|
||||||
&& err.message().contains("mcaptcha_users_name_key")
|
|
||||||
{
|
|
||||||
return Err(ServiceError::UsernameTaken);
|
|
||||||
} else {
|
|
||||||
return Err(sqlx::Error::Database(err).into());
|
|
||||||
}
|
|
||||||
};
|
|
||||||
}
|
|
||||||
id.forget();
|
id.forget();
|
||||||
id.remember(processed_uname);
|
id.remember(processed_uname);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user