use axum::{Router, response::{Response, Redirect, IntoResponse}, routing::get}; use crate::types::{extract::AuthorizedUser, response::ResponseCode}; async fn root(user: Option) -> Response { println!("{}", user.is_some()); if user.is_some() { return Redirect::to("/home").into_response() } else { return Redirect::to("/login").into_response() } } async fn login(user: Option) -> Response { if user.is_some() { return Redirect::to("/home").into_response() } else { return ResponseCode::Success.file("/login.html").await.unwrap() } } async fn home(user: Option) -> Response { if user.is_none() { return Redirect::to("/login").into_response() } else { return ResponseCode::Success.file("/home.html").await.unwrap() } } async fn people(user: Option) -> Response { if user.is_none() { return Redirect::to("/login").into_response() } else { return ResponseCode::Success.file("/people.html").await.unwrap() } } async fn profile(user: Option) -> Response { if user.is_none() { return Redirect::to("/login").into_response() } else { return ResponseCode::Success.file("/profile.html").await.unwrap() } } async fn wordpress() -> Response { ResponseCode::ImATeapot.msg("Hello i am a teapot owo") } pub fn router() -> Router { Router::new() .route("/", get(root)) .route("/login", get(login)) .route("/home", get(home)) .route("/people", get(people)) .route("/profile", get(profile)) .route("/wp-admin", get(wordpress)) }