From b1a66d71b9893ac2581949522ad2c320211fb1ef Mon Sep 17 00:00:00 2001 From: philipp Date: Tue, 24 Oct 2023 12:36:14 +0200 Subject: [PATCH 1/3] test wiki auth --- src/tera/mod.rs | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/tera/mod.rs b/src/tera/mod.rs index 145b404..a191cb4 100644 --- a/src/tera/mod.rs +++ b/src/tera/mod.rs @@ -1,11 +1,12 @@ use rocket::{ catch, catchers, fairing::AdHoc, + form::Form, fs::FileServer, - get, + get, post, request::FlashMessage, response::{Flash, Redirect}, - routes, Build, Rocket, State, + routes, Build, FromForm, Rocket, State, }; use rocket_dyn_templates::{tera::Context, Template}; use serde::Deserialize; @@ -27,6 +28,20 @@ mod log; mod misc; mod stat; +#[derive(FromForm)] +struct LoginForm<'r> { + name: &'r str, + password: &'r str, +} + +#[post("/", data = "")] +async fn wikiauth(db: &State, login: Form>) -> String { + match User::login(db, login.name, login.password).await { + Ok(_) => "SUCC".into(), + Err(_) => "FAIL".into(), + } +} + #[get("/")] async fn index(db: &State, user: User, flash: Option>) -> Template { let mut context = Context::new(); @@ -195,6 +210,7 @@ pub fn config(rocket: Rocket) -> Rocket { rocket .mount("/", routes![index, join, remove, remove_guest]) .mount("/auth", auth::routes()) + .mount("/wikiauth", routes![wikiauth]) .mount("/log", log::routes()) .mount("/stat", stat::routes()) .mount("/boatdamage", boatdamage::routes()) From 43219862044acadbe147684bfc44592ca89d2d1f Mon Sep 17 00:00:00 2001 From: philipp Date: Tue, 24 Oct 2023 13:14:26 +0200 Subject: [PATCH 2/3] debug --- src/tera/mod.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/tera/mod.rs b/src/tera/mod.rs index a191cb4..c598c4f 100644 --- a/src/tera/mod.rs +++ b/src/tera/mod.rs @@ -28,7 +28,7 @@ mod log; mod misc; mod stat; -#[derive(FromForm)] +#[derive(FromForm, Debug)] struct LoginForm<'r> { name: &'r str, password: &'r str, @@ -36,6 +36,7 @@ struct LoginForm<'r> { #[post("/", data = "")] async fn wikiauth(db: &State, login: Form>) -> String { + println!("{login:?}"); match User::login(db, login.name, login.password).await { Ok(_) => "SUCC".into(), Err(_) => "FAIL".into(), From afa5597f49af9a179742fcad34c5b5ab0089d415 Mon Sep 17 00:00:00 2001 From: philipp Date: Tue, 24 Oct 2023 13:36:14 +0200 Subject: [PATCH 3/3] remove debug thingy --- src/tera/mod.rs | 1 - 1 file changed, 1 deletion(-) diff --git a/src/tera/mod.rs b/src/tera/mod.rs index c598c4f..799ae24 100644 --- a/src/tera/mod.rs +++ b/src/tera/mod.rs @@ -36,7 +36,6 @@ struct LoginForm<'r> { #[post("/", data = "")] async fn wikiauth(db: &State, login: Form>) -> String { - println!("{login:?}"); match User::login(db, login.name, login.password).await { Ok(_) => "SUCC".into(), Err(_) => "FAIL".into(),