diff options
author | metamuffin <metamuffin@disroot.org> | 2025-05-31 14:37:07 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2025-05-31 14:37:07 +0200 |
commit | 31cce6db5373ee99ef4c4c17ddf27b81040017eb (patch) | |
tree | 854be97a7c5c1e06def80136e44b12203f902f29 /server/src/ui | |
parent | 72a8d6c8cff8869019c3ce0cb1a38f806d964604 (diff) | |
download | jellything-31cce6db5373ee99ef4c4c17ddf27b81040017eb.tar jellything-31cce6db5373ee99ef4c4c17ddf27b81040017eb.tar.bz2 jellything-31cce6db5373ee99ef4c4c17ddf27b81040017eb.tar.zst |
Fix nodefiltersort fromform instance very badly
Diffstat (limited to 'server/src/ui')
-rw-r--r-- | server/src/ui/items.rs | 10 | ||||
-rw-r--r-- | server/src/ui/node.rs | 9 |
2 files changed, 10 insertions, 9 deletions
diff --git a/server/src/ui/items.rs b/server/src/ui/items.rs index 915963c..ace948f 100644 --- a/server/src/ui/items.rs +++ b/server/src/ui/items.rs @@ -4,8 +4,8 @@ Copyright (C) 2025 metamuffin <metamuffin.org> */ use super::error::MyError; -use crate::helper::{accept::Accept, RequestInfo, A}; -use jellycommon::api::{ApiItemsResponse, NodeFilterSort}; +use crate::helper::{accept::Accept, filter_sort::ANodeFilterSort, RequestInfo}; +use jellycommon::api::ApiItemsResponse; use jellylogic::items::all_items; use jellyui::{items::ItemsPage, render_page}; use rocket::{get, response::content::RawHtml, serde::json::Json, Either}; @@ -14,9 +14,9 @@ use rocket::{get, response::content::RawHtml, serde::json::Json, Either}; pub fn r_items( ri: RequestInfo, page: Option<usize>, - filter: A<NodeFilterSort>, + filter: ANodeFilterSort, ) -> Result<Either<RawHtml<String>, Json<ApiItemsResponse>>, MyError> { - let r = all_items(&ri.session, page, filter.0.clone())?; + let r = all_items(&ri.session, page, filter.clone().into())?; Ok(if matches!(ri.accept, Accept::Json) { Either::Right(Json(r)) } else { @@ -24,7 +24,7 @@ pub fn r_items( &ItemsPage { lang: &ri.lang, r, - filter: &filter.0, + filter: &filter.clone().into(), page: page.unwrap_or(0), }, ri.render_info(), diff --git a/server/src/ui/node.rs b/server/src/ui/node.rs index 7085a5a..5004b7b 100644 --- a/server/src/ui/node.rs +++ b/server/src/ui/node.rs @@ -4,7 +4,7 @@ Copyright (C) 2025 metamuffin <metamuffin.org> */ use super::error::MyResult; -use crate::helper::{RequestInfo, A}; +use crate::helper::{filter_sort::ANodeFilterSort, RequestInfo, A}; use jellycommon::{ api::{ApiNodeResponse, NodeFilterSort}, NodeID, @@ -17,10 +17,11 @@ use rocket::{get, response::content::RawHtml, serde::json::Json, Either}; pub async fn r_node<'a>( ri: RequestInfo, id: A<NodeID>, - filter: Option<A<NodeFilterSort>>, + filter: Option<ANodeFilterSort>, parents: bool, children: bool, ) -> MyResult<Either<RawHtml<String>, Json<ApiNodeResponse>>> { + let filter: Option<NodeFilterSort> = filter.map(Into::into); let filter = filter.unwrap_or_default(); let r = get_node( @@ -28,7 +29,7 @@ pub async fn r_node<'a>( id.0, !ri.accept.is_json() || children, !ri.accept.is_json() || parents, - filter.0.clone(), + filter.clone(), )?; Ok(if ri.accept.is_json() { @@ -41,7 +42,7 @@ pub async fn r_node<'a>( children: &r.children, parents: &r.parents, similar: &[], - filter: &filter.0, + filter: &filter, lang: &ri.lang, player: false, }, |