diff options
Diffstat (limited to 'server/src/routes/api/mod.rs')
-rw-r--r-- | server/src/routes/api/mod.rs | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/server/src/routes/api/mod.rs b/server/src/routes/api/mod.rs index d49ecec..b39950c 100644 --- a/server/src/routes/api/mod.rs +++ b/server/src/routes/api/mod.rs @@ -3,11 +3,13 @@ which is licensed under the GNU Affero General Public License (version 3); see /COPYING. Copyright (C) 2023 metamuffin <metamuffin.org> */ -pub mod error; -use super::ui::account::{login_logic, LoginForm}; -use crate::{database::Database, routes::api::error::ApiResult}; -use rocket::{get, http::CookieJar, post, response::Redirect, serde::json::Json, State}; +use super::ui::{ + account::{login_logic, LoginForm}, + error::MyResult, +}; +use crate::database::Database; +use rocket::{get, post, response::Redirect, serde::json::Json, State}; use serde_json::{json, Value}; #[get("/api")] @@ -17,15 +19,11 @@ pub fn r_api_root() -> Redirect { #[get("/api/version")] pub fn r_api_version() -> &'static str { - "1" + "2" } #[post("/api/account/login", data = "<data>")] -pub fn r_api_account_login( - database: &State<Database>, - jar: &CookieJar, - data: Json<LoginForm>, -) -> ApiResult<Value> { - login_logic(jar, database, &data.username, &data.password)?; - Ok(json!({ "ok": true })) +pub fn r_api_account_login(database: &State<Database>, data: Json<LoginForm>) -> MyResult<Value> { + let token = login_logic(database, &data.username, &data.password)?; + Ok(json!(token)) } |