summaryrefslogtreecommitdiff
path: root/src/api/pages.rs
diff options
context:
space:
mode:
authorTyler Murphy <tylermurphy534@gmail.com>2023-01-26 17:29:16 -0500
committerTyler Murphy <tylermurphy534@gmail.com>2023-01-26 17:29:16 -0500
commit88209d88236c3d865a9f5174a0dced31920859bf (patch)
tree89a9985927393005cf632950b585a6a227b1c679 /src/api/pages.rs
downloadxssbook-88209d88236c3d865a9f5174a0dced31920859bf.tar.gz
xssbook-88209d88236c3d865a9f5174a0dced31920859bf.tar.bz2
xssbook-88209d88236c3d865a9f5174a0dced31920859bf.zip
i did things
Diffstat (limited to 'src/api/pages.rs')
-rw-r--r--src/api/pages.rs58
1 files changed, 58 insertions, 0 deletions
diff --git a/src/api/pages.rs b/src/api/pages.rs
new file mode 100644
index 0000000..749a686
--- /dev/null
+++ b/src/api/pages.rs
@@ -0,0 +1,58 @@
+use axum::{Router, response::{Response, Redirect, IntoResponse}, routing::get};
+
+use crate::types::{extract::AuthorizedUser, response::ResponseCode};
+
+async fn root(user: Option<AuthorizedUser>) -> 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<AuthorizedUser>) -> 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<AuthorizedUser>) -> 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<AuthorizedUser>) -> 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<AuthorizedUser>) -> 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))
+} \ No newline at end of file