aboutsummaryrefslogtreecommitdiff
path: root/server
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2025-04-30 11:24:14 +0200
committermetamuffin <metamuffin@disroot.org>2025-04-30 11:24:14 +0200
commitd6a039a10ac3c81d410beb9b648d29524ca1e278 (patch)
treefa521277e3ea94f796e21071f4d2b372c5b9830c /server
parenta2ef3f6ec4c830611fde1a2e935588ccbbc61c03 (diff)
downloadjellything-d6a039a10ac3c81d410beb9b648d29524ca1e278.tar
jellything-d6a039a10ac3c81d410beb9b648d29524ca1e278.tar.bz2
jellything-d6a039a10ac3c81d410beb9b648d29524ca1e278.tar.zst
smaller fixes and remove useless deps
Diffstat (limited to 'server')
-rw-r--r--server/src/config.rs2
-rw-r--r--server/src/helper/filter_sort.rs5
-rw-r--r--server/src/helper/mod.rs2
-rw-r--r--server/src/ui/error.rs23
-rw-r--r--server/src/ui/node.rs3
5 files changed, 19 insertions, 16 deletions
diff --git a/server/src/config.rs b/server/src/config.rs
index 27074b4..68148dd 100644
--- a/server/src/config.rs
+++ b/server/src/config.rs
@@ -18,6 +18,7 @@ struct Config {
server: crate::Config,
base: jellybase::Config,
logic: jellylogic::Config,
+ import: jellyimport::Config,
}
pub async fn load_config() -> Result<()> {
@@ -36,6 +37,7 @@ pub async fn load_config() -> Result<()> {
*jellycache::CONF_PRELOAD.lock().unwrap() = Some(config.cache);
*jellylogic::CONF_PRELOAD.lock().unwrap() = Some(config.logic);
*jellybase::CONF_PRELOAD.lock().unwrap() = Some(config.base);
+ *jellyimport::CONF_PRELOAD.lock().unwrap() = Some(config.import);
*crate::CONF_PRELOAD.lock().unwrap() = Some(config.server);
*jellyui::CONF_PRELOAD.lock().unwrap() = Some(config.ui);
diff --git a/server/src/helper/filter_sort.rs b/server/src/helper/filter_sort.rs
index 186aa86..b30ff18 100644
--- a/server/src/helper/filter_sort.rs
+++ b/server/src/helper/filter_sort.rs
@@ -17,10 +17,11 @@ use rocket::{
#[async_trait]
impl<'v> FromFormField<'v> for A<NodeFilterSort> {
fn from_value(field: ValueField<'v>) -> Result<'v, Self> {
- Err(field.unexpected())?
+ // TODO
+ Ok(A(NodeFilterSort::default()))
}
async fn from_data(field: DataField<'v, '_>) -> Result<'v, Self> {
- Err(field.unexpected())?
+ Ok(A(NodeFilterSort::default()))
}
}
diff --git a/server/src/helper/mod.rs b/server/src/helper/mod.rs
index 7164175..f068cbc 100644
--- a/server/src/helper/mod.rs
+++ b/server/src/helper/mod.rs
@@ -9,5 +9,5 @@ pub mod filter_sort;
pub mod node_id;
pub mod session;
-#[derive(Debug, Clone, Copy)]
+#[derive(Debug, Clone, Copy, Default)]
pub struct A<T>(pub T);
diff --git a/server/src/ui/error.rs b/server/src/ui/error.rs
index 05249af..d9716f5 100644
--- a/server/src/ui/error.rs
+++ b/server/src/ui/error.rs
@@ -4,6 +4,7 @@
Copyright (C) 2025 metamuffin <metamuffin.org>
*/
use crate::CONF;
+use jellyui::{error::ErrorPage, locale::Language, render_page, scaffold::RenderInfo};
use log::info;
use rocket::{
catch,
@@ -25,18 +26,16 @@ static ERROR_IMAGE: LazyLock<Vec<u8>> = LazyLock::new(|| {
#[catch(default)]
pub fn r_catch<'a>(status: Status, _request: &Request) -> RawHtml<String> {
- // LayoutPage {
- // title: "Not found".to_string(),
- // content: markup::new! {
- // h2 { "Error" }
- // p { @format!("{status}") }
- // @if status == Status::NotFound {
- // p { "You might need to " a[href=uri!(r_account_login())] { "log in" } ", to see this page" }
- // }
- // },
- // ..Default::default()
- // }
- RawHtml("as".to_string())
+ RawHtml(render_page(
+ &ErrorPage {
+ status: format!("{status}"),
+ },
+ RenderInfo {
+ importing: false,
+ session: None,
+ },
+ Language::English,
+ ))
}
#[catch(default)]
diff --git a/server/src/ui/node.rs b/server/src/ui/node.rs
index 6241f4f..1441cfc 100644
--- a/server/src/ui/node.rs
+++ b/server/src/ui/node.rs
@@ -24,12 +24,13 @@ pub async fn r_node<'a>(
id: A<NodeID>,
db: &'a State<Database>,
aj: AcceptJson,
- filter: A<NodeFilterSort>,
+ filter: Option<A<NodeFilterSort>>,
lang: AcceptLanguage,
parents: bool,
children: bool,
) -> MyResult<Either<RawHtml<String>, Json<ApiNodeResponse>>> {
let AcceptLanguage(lang) = lang;
+ let filter = filter.unwrap_or_default();
let r = get_node(
&db,