clean code with clippy

This commit is contained in:
2023-04-03 17:32:41 +02:00
parent ff73accb52
commit 79f22b9217
4 changed files with 150 additions and 21 deletions

View File

@ -1,14 +1,17 @@
use rocket::{
form::Form,
get, post,
get,
http::{Cookie, CookieJar},
post,
request::FlashMessage,
response::{status, Flash, Redirect},
routes, FromForm, Responder, Route, State,
response::{Flash, Redirect},
routes, FromForm, Route, State,
};
use rocket_dyn_templates::{context, tera, Template};
use rocket_dyn_templates::{tera, Template};
use serde_json::json;
use sqlx::SqlitePool;
use crate::model::user::{self, User};
use crate::model::user::User;
#[get("/")]
async fn index(flash: Option<FlashMessage<'_>>) -> Template {
@ -28,7 +31,11 @@ struct LoginForm {
}
#[post("/", data = "<login>")]
async fn login(login: Form<LoginForm>, db: &State<SqlitePool>) -> Flash<Redirect> {
async fn login(
login: Form<LoginForm>,
db: &State<SqlitePool>,
cookies: &CookieJar<'_>,
) -> Flash<Redirect> {
let user = User::login(db, login.name.clone(), login.password.clone()).await;
//TODO: be able to use for find_by_name. This would get rid of the following match clause.
@ -39,6 +46,9 @@ async fn login(login: Form<LoginForm>, db: &State<SqlitePool>) -> Flash<Redirect
}
};
let user_json: String = format!("{}", json!(user));
cookies.add_private(Cookie::new("user", user_json));
Flash::success(Redirect::to("/"), "Login erfolgreich")
}