diff options
Diffstat (limited to 'server/src/ui/stats.rs')
-rw-r--r-- | server/src/ui/stats.rs | 30 |
1 files changed, 8 insertions, 22 deletions
diff --git a/server/src/ui/stats.rs b/server/src/ui/stats.rs index 4ae592e..ff02e33 100644 --- a/server/src/ui/stats.rs +++ b/server/src/ui/stats.rs @@ -4,38 +4,24 @@ Copyright (C) 2025 metamuffin <metamuffin.org> */ use super::error::MyError; -use crate::helper::{accept::AcceptJson, language::AcceptLanguage, A}; +use crate::helper::RequestInfo; use jellycommon::api::ApiStatsResponse; -use jellyimport::is_importing; -use jellylogic::{session::Session, stats::stats}; -use jellyui::{ - render_page, - scaffold::{RenderInfo, SessionInfo}, - stats::StatsPage, -}; +use jellylogic::stats::stats; +use jellyui::{render_page, stats::StatsPage}; use rocket::{get, response::content::RawHtml, serde::json::Json, Either}; #[get("/stats")] pub fn r_stats( - session: A<Session>, - aj: AcceptJson, - lang: AcceptLanguage, + ri: RequestInfo, ) -> Result<Either<RawHtml<String>, Json<ApiStatsResponse>>, MyError> { - let AcceptLanguage(lang) = lang; - let r = stats(&session.0)?; + let r = stats(&ri.session)?; - Ok(if *aj { + Ok(if ri.accept.is_json() { Either::Right(Json(r)) } else { Either::Left(RawHtml(render_page( - &StatsPage { lang: &lang, r }, - RenderInfo { - importing: is_importing(), - session: Some(SessionInfo { - user: session.0.user, - }), - }, - lang, + &StatsPage { lang: &ri.lang, r }, + ri.render_info(), ))) }) } |