diff --git a/src/pages/login.rs b/src/pages/login.rs index bbb4823..ef45d1a 100644 --- a/src/pages/login.rs +++ b/src/pages/login.rs @@ -2,12 +2,27 @@ use leptos::leptos_dom::*; use leptos::*; use leptos_icons::IoIcon::*; use leptos_icons::*; +use crate::auth::login; #[component] pub fn Login() -> impl IntoView { - let (username, set_username) = create_signal("".to_string()); + let (username_or_email, set_username_or_email) = create_signal("".to_string()); let (password, set_password) = create_signal("".to_string()); + let on_submit = move |ev: leptos::ev::SubmitEvent| { + ev.prevent_default(); + + spawn_local(async move { + if let Err(err) = login(username_or_email.get(), password.get()).await { + // Handle the error here, e.g., log it or display to the user + log!("Error logging in: {:?}", err); + } else { + // Redirect to the login page + log!("Logged in Successfully!"); + } + }); + }; + view! {