From 3b15caade07e8fbe351fed9aceb3f435bf58368e Mon Sep 17 00:00:00 2001 From: metamuffin Date: Mon, 26 May 2025 18:24:16 +0200 Subject: move all direct database access to logic crate --- server/src/api.rs | 26 ++++++-------------------- 1 file changed, 6 insertions(+), 20 deletions(-) (limited to 'server/src/api.rs') diff --git a/server/src/api.rs b/server/src/api.rs index 38bab08..d983548 100644 --- a/server/src/api.rs +++ b/server/src/api.rs @@ -5,15 +5,15 @@ */ use super::ui::error::MyResult; use crate::helper::{accept::AcceptJson, language::AcceptLanguage, A}; -use jellycommon::{user::CreateSessionParams, NodeID, Visibility}; +use jellycommon::{user::CreateSessionParams, NodeID}; use jellyimport::asset_token::AssetInner; use jellylogic::{ login::login_logic, + node::get_nodes_modified_since, session::{AdminSession, Session}, - Database, }; use jellyui::locale::get_translation_table; -use rocket::{get, post, response::Redirect, serde::json::Json, Either, State}; +use rocket::{get, post, response::Redirect, serde::json::Json, Either}; use serde_json::{json, Value}; use std::collections::HashMap; @@ -49,12 +49,8 @@ pub fn r_translations( } #[post("/api/create_session", data = "")] -pub fn r_api_account_login( - database: &State, - data: Json, -) -> MyResult { +pub fn r_api_account_login(data: Json) -> MyResult { let token = login_logic( - database, &data.username, &data.password, data.expire, @@ -69,17 +65,7 @@ pub fn r_api_asset_token_raw(_admin: A, token: &str) -> MyResult")] -pub fn r_nodes_modified_since( - _session: A, - database: &State, - since: u64, -) -> MyResult>> { - let mut nodes = database.get_nodes_modified_since(since)?; - nodes.retain(|id| { - database.get_node(*id).is_ok_and(|n| { - n.as_ref() - .is_some_and(|n| n.visibility >= Visibility::Reduced) - }) - }); +pub fn r_nodes_modified_since(session: A, since: u64) -> MyResult>> { + let nodes = get_nodes_modified_since(&session.0, since)?; Ok(Json(nodes)) } -- cgit v1.2.3-70-g09d2