commit cccd8262fa78dabc8e1949c4dcb490b99fb0cd84
parent 5f458b288a7a7892f075087348ebcd3dab9a771b
Author: Carl Dong <accounts@carldong.me>
Date: Sat, 8 May 2021 16:03:03 -0400
admin: Add /users/<uuid> route
Individual user information can now be looked up by UUID.
Diffstat:
1 file changed, 8 insertions(+), 0 deletions(-)
diff --git a/src/api/admin.rs b/src/api/admin.rs
@@ -30,6 +30,7 @@ pub fn routes() -> Vec<Route> {
routes![
admin_login,
get_users_json,
+ get_user_json,
post_admin_login,
admin_page,
invite_user,
@@ -349,6 +350,13 @@ fn users_overview(_token: AdminToken, conn: DbConn) -> ApiResult<Html<String>> {
Ok(Html(text))
}
+#[get("/users/<uuid>")]
+fn get_user_json(uuid: String, _token: AdminToken, conn: DbConn) -> JsonResult {
+ let user = User::find_by_uuid(&uuid, &conn).map_res("User doesn't exist")?;
+
+ Ok(Json(user.to_json(&conn)))
+}
+
#[post("/users/<uuid>/delete")]
fn delete_user(uuid: String, _token: AdminToken, conn: DbConn) -> EmptyResult {
let user = User::find_by_uuid(&uuid, &conn).map_res("User doesn't exist")?;