aboutsummaryrefslogtreecommitdiff
path: root/server/src/routes/ui/browser.rs
diff options
context:
space:
mode:
Diffstat (limited to 'server/src/routes/ui/browser.rs')
-rw-r--r--server/src/routes/ui/browser.rs20
1 files changed, 13 insertions, 7 deletions
diff --git a/server/src/routes/ui/browser.rs b/server/src/routes/ui/browser.rs
index 13f30c8..9cc9d88 100644
--- a/server/src/routes/ui/browser.rs
+++ b/server/src/routes/ui/browser.rs
@@ -6,11 +6,15 @@
use super::{
account::session::Session,
error::MyError,
- layout::{DynLayoutPage, LayoutPage},
+ layout::{trs, trsa, DynLayoutPage, LayoutPage},
node::NodeCard,
sort::{filter_and_sort_nodes, NodeFilterSort, NodeFilterSortForm, SortOrder, SortProperty},
};
-use crate::{database::Database, routes::api::AcceptJson, uri};
+use crate::{
+ database::Database,
+ routes::{api::AcceptJson, locale::AcceptLanguage},
+ uri,
+};
use jellycommon::{api::ApiItemsResponse, Visibility};
use rocket::{get, serde::json::Json, Either, State};
@@ -25,7 +29,9 @@ pub fn r_all_items_filter(
aj: AcceptJson,
page: Option<usize>,
filter: NodeFilterSort,
+ lang: AcceptLanguage,
) -> Result<Either<DynLayoutPage<'_>, Json<ApiItemsResponse>>, MyError> {
+ let AcceptLanguage(lang) = lang;
let mut items = db.list_nodes_with_udata(sess.user.name.as_str())?;
items.retain(|(n, _)| matches!(n.visibility, Visibility::Visible));
@@ -55,17 +61,17 @@ pub fn r_all_items_filter(
content: markup::new! {
.page.dir {
h1 { "All Items" }
- @NodeFilterSortForm { f: &filter }
+ @NodeFilterSortForm { f: &filter, lang: &lang }
ul.children { @for (node, udata) in &items[from..to] {
- li {@NodeCard { node, udata }}
+ li {@NodeCard { node, udata, lang: &lang }}
}}
p.pagecontrols {
- span.current { "Page " @{page + 1} " of " @max_page " " }
+ span.current { @trsa(&lang, "page.curr", &[("cur", &(page + 1).to_string()), ("max", &max_page.to_string())]) " " }
@if page > 0 {
- a.prev[href=uri!(r_all_items_filter(Some(page - 1), filter.clone()))] { "Previous page" } " "
+ a.prev[href=uri!(r_all_items_filter(Some(page - 1), filter.clone()))] { @trs(&lang, "page.prev") } " "
}
@if page + 1 < max_page {
- a.next[href=uri!(r_all_items_filter(Some(page + 1), filter.clone()))] { "Next page" }
+ a.next[href=uri!(r_all_items_filter(Some(page + 1), filter.clone()))] { @trs(&lang, "page.next") }
}
}
}