diff options
author | metamuffin <metamuffin@disroot.org> | 2025-05-31 13:11:36 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2025-05-31 13:11:36 +0200 |
commit | 373243a81f8c44fcfc6a3612ba46da2c6a3286c6 (patch) | |
tree | f2cee1099592d7a3771647cce58a3feb2ae462a9 /server/src/ui/items.rs | |
parent | 3e834092ba230ee081065a3b80ad227d585b5a13 (diff) | |
download | jellything-373243a81f8c44fcfc6a3612ba46da2c6a3286c6.tar jellything-373243a81f8c44fcfc6a3612ba46da2c6a3286c6.tar.bz2 jellything-373243a81f8c44fcfc6a3612ba46da2c6a3286c6.tar.zst |
use RenderInfo guard everywhere and start to use FlashMessage
Diffstat (limited to 'server/src/ui/items.rs')
-rw-r--r-- | server/src/ui/items.rs | 32 |
1 files changed, 8 insertions, 24 deletions
diff --git a/server/src/ui/items.rs b/server/src/ui/items.rs index 1ac2c09..915963c 100644 --- a/server/src/ui/items.rs +++ b/server/src/ui/items.rs @@ -4,46 +4,30 @@ Copyright (C) 2025 metamuffin <metamuffin.org> */ use super::error::MyError; -use crate::helper::{accept::AcceptJson, language::AcceptLanguage, A}; +use crate::helper::{accept::Accept, RequestInfo, A}; use jellycommon::api::{ApiItemsResponse, NodeFilterSort}; -use jellyimport::is_importing; -use jellylogic::{items::all_items, session::Session}; -use jellyui::{ - items::ItemsPage, - render_page, - scaffold::{RenderInfo, SessionInfo}, -}; +use jellylogic::items::all_items; +use jellyui::{items::ItemsPage, render_page}; use rocket::{get, response::content::RawHtml, serde::json::Json, Either}; #[get("/items?<page>&<filter..>")] pub fn r_items( - session: A<Session>, - aj: AcceptJson, + ri: RequestInfo, page: Option<usize>, filter: A<NodeFilterSort>, - lang: AcceptLanguage, ) -> Result<Either<RawHtml<String>, Json<ApiItemsResponse>>, MyError> { - let AcceptLanguage(lang) = lang; - - let r = all_items(&session.0, page, filter.0.clone())?; - - Ok(if *aj { + let r = all_items(&ri.session, page, filter.0.clone())?; + Ok(if matches!(ri.accept, Accept::Json) { Either::Right(Json(r)) } else { Either::Left(RawHtml(render_page( &ItemsPage { - lang: &lang, + lang: &ri.lang, r, filter: &filter.0, page: page.unwrap_or(0), }, - RenderInfo { - importing: is_importing(), - session: Some(SessionInfo { - user: session.0.user, - }), - }, - lang, + ri.render_info(), ))) }) } |