From c76252be0a40a1368e79a128e02252c768eec758 Mon Sep 17 00:00:00 2001 From: Fu Zi Xiang Date: Wed, 11 Oct 2023 15:41:18 +0800 Subject: [PATCH] feat: add email to display at home page --- admin_frontend/src/templates.rs | 4 +++- admin_frontend/src/web_app.rs | 27 ++++++++++++++++++++------- admin_frontend/templates/home.html | 14 +++++++++++--- 3 files changed, 34 insertions(+), 11 deletions(-) diff --git a/admin_frontend/src/templates.rs b/admin_frontend/src/templates.rs index 8ceb36e9..0b74100c 100644 --- a/admin_frontend/src/templates.rs +++ b/admin_frontend/src/templates.rs @@ -6,7 +6,9 @@ pub struct Login; #[derive(Template)] #[template(path = "home.html")] -pub struct Home; +pub struct Home<'a> { + pub email: &'a str, +} #[derive(Template)] #[template(path = "admin.html")] diff --git a/admin_frontend/src/web_app.rs b/admin_frontend/src/web_app.rs index 430f3cd0..faf32ba8 100644 --- a/admin_frontend/src/web_app.rs +++ b/admin_frontend/src/web_app.rs @@ -17,8 +17,26 @@ pub fn router() -> Router { .route("/admin/users/:user_id", get(admin_user_details_handler)) } -pub async fn home_handler(_: UserSession) -> Result, RenderError> { - let s = templates::Home {}.render()?; +pub async fn login_handler() -> Result, RenderError> { + let s = templates::Login {}.render()?; + Ok(Html(s)) +} + +pub async fn home_handler( + State(state): State, + session: UserSession, +) -> Result, RenderError> { + let user_email = state + .gotrue_client + .user_info(&session.access_token) + .await + .map(|user_info| user_info.email) + .unwrap_or_else(|err| { + println!("Failed to fetch user info: {:?}", err); + "".to_owned() + }); + + let s = templates::Home { email: &user_email }.render()?; Ok(Html(s)) } @@ -60,8 +78,3 @@ pub async fn admin_user_details_handler( let s = templates::UserDetails { user: &users }.render()?; Ok(Html(s)) } - -pub async fn login_handler() -> Result, RenderError> { - let s = templates::Login {}.render()?; - Ok(Html(s)) -} diff --git a/admin_frontend/templates/home.html b/admin_frontend/templates/home.html index b1fe2f71..be753bdd 100644 --- a/admin_frontend/templates/home.html +++ b/admin_frontend/templates/home.html @@ -1,9 +1,17 @@ -

Welcome to the Home Page

- - + +
+

User Management

+

Welcome, {{ email }}

+
+ + +