diff options
Diffstat (limited to 'server/src/helper')
-rw-r--r-- | server/src/helper/accept.rs | 4 | ||||
-rw-r--r-- | server/src/helper/mod.rs | 15 |
2 files changed, 18 insertions, 1 deletions
diff --git a/server/src/helper/accept.rs b/server/src/helper/accept.rs index 3ac53c8..11210d1 100644 --- a/server/src/helper/accept.rs +++ b/server/src/helper/accept.rs @@ -32,6 +32,10 @@ impl Accept { Accept::Other } } + + pub fn is_json(&self) -> bool { + matches!(self, Self::Json) + } } pub struct AcceptJson(bool); diff --git a/server/src/helper/mod.rs b/server/src/helper/mod.rs index 9e8ce79..a4e0e1f 100644 --- a/server/src/helper/mod.rs +++ b/server/src/helper/mod.rs @@ -13,8 +13,12 @@ pub mod session; use crate::ui::error::{MyError, MyResult}; use accept::Accept; +use jellyimport::is_importing; use jellylogic::session::Session; -use jellyui::locale::Language; +use jellyui::{ + locale::Language, + scaffold::{RenderInfo, SessionInfo}, +}; use language::lang_from_request; use rocket::{ async_trait, @@ -41,6 +45,15 @@ impl RequestInfo { session: session_from_request(request).await?, }) } + pub fn render_info(&self) -> RenderInfo { + RenderInfo { + importing: is_importing(), + session: Some(SessionInfo { + user: self.session.user.clone(), // TODO no clone? + }), + lang: self.lang, + } + } } #[async_trait] |