vw_small

Hardened fork of Vaultwarden (https://github.com/dani-garcia/vaultwarden) with fewer features.
git clone https://git.philomathiclife.com/repos/vw_small
Log | Files | Refs | README

commit 06e14fea55be1dd6d24ca9b98f32bb800295e246
parent adf83c698dee8f60bc40629af3d4f63ac9b1183c
Author: Daniel GarcĂ­a <dani-garcia@users.noreply.github.com>
Date:   Tue, 21 Feb 2023 21:37:28 +0100

Merge branch 'mittler-works-search_user_by_email'

Diffstat:
Msrc/api/admin.rs | 13+++++++++++++
1 file changed, 13 insertions(+), 0 deletions(-)

diff --git a/src/api/admin.rs b/src/api/admin.rs @@ -33,6 +33,7 @@ pub fn routes() -> Vec<Route> { routes![ get_users_json, get_user_json, + get_user_by_mail_json, post_admin_login, admin_page, invite_user, @@ -331,6 +332,18 @@ async fn users_overview(_token: AdminToken, mut conn: DbConn) -> ApiResult<Html< Ok(Html(text)) } +#[get("/users/by-mail/<mail>")] +async fn get_user_by_mail_json(mail: String, _token: AdminToken, mut conn: DbConn) -> JsonResult { + if let Some(u) = User::find_by_mail(&mail, &mut conn).await { + let mut usr = u.to_json(&mut conn).await; + usr["UserEnabled"] = json!(u.enabled); + usr["CreatedAt"] = json!(format_naive_datetime_local(&u.created_at, DT_FMT)); + Ok(Json(usr)) + } else { + err_code!("User doesn't exist", Status::NotFound.code); + } +} + #[get("/users/<uuid>")] async fn get_user_json(uuid: String, _token: AdminToken, mut conn: DbConn) -> JsonResult { let u = get_user_or_404(&uuid, &mut conn).await?;