admin/users: update username/name/email/admin status

This commit is contained in:
Philippe Loctaux 2023-05-04 23:53:32 +02:00
parent bdd5eca9f1
commit 05373a2800
7 changed files with 202 additions and 50 deletions

View file

@ -0,0 +1,5 @@
update users
set is_admin = ?
where id is ?

View file

@ -546,6 +546,16 @@
},
"query": "update users\n\nset paper_key = ?\n\nwhere id is ?"
},
"6ff12f357d884a50035d708577a7f3109a07a1ca193cb3082d13687af65c6de0": {
"describe": {
"columns": [],
"nullable": [],
"parameters": {
"Right": 2
}
},
"query": "update users\n\nset is_admin = ?\n\nwhere id is ?"
},
"71c74369dc5d374d8ec5aa347b5f599728b74e545df3e986e3e7e66882f73ba0": {
"describe": {
"columns": [

View file

@ -257,4 +257,18 @@ impl Users {
Ok((query.rows_affected() == 1).then_some(()))
}
pub async fn set_admin_status(
conn: impl SqliteExecutor<'_>,
id: &str,
value: bool,
) -> Result<Option<()>, Error> {
let query: SqliteQueryResult =
sqlx::query_file!("queries/users/set_admin_status.sql", value, id)
.execute(conn)
.await
.map_err(handle_error)?;
Ok((query.rows_affected() == 1).then_some(()))
}
}