added ability to set media class of items
Build and Push Image / build-and-push (push) Successful in 5m4s

This commit is contained in:
2026-03-29 03:19:33 -04:00
parent b8d01b567c
commit b1ab165665
26 changed files with 739 additions and 234 deletions
+32 -5
View File
@@ -1,7 +1,9 @@
use dioxus::prelude::*;
use web_sys::window;
#[component]
pub fn Pagination(page: Signal<i32>, max_page: Signal<i32>, item_count: Signal<i32>) -> Element {
pub fn Pagination(page: Signal<i32>, max_page: Signal<i32>, item_count: Signal<i32>) -> Element
{
let cur_page_val = page.cloned();
let max_page_val = max_page.cloned();
let item_count_val = item_count.cloned();
@@ -9,22 +11,47 @@ pub fn Pagination(page: Signal<i32>, max_page: Signal<i32>, item_count: Signal<i
div {
class: "pagination",
a {
onclick: move|_| page.set(1),
onclick: move|_| {
page.set(1);
on_page_change();
},
"First"
}
a {
onclick: move|_| page.set((cur_page_val - 1).max(1)),
onclick: move|_| {
let p = (cur_page_val - 1).max(1);
page.set(p);
on_page_change();
},
"Prev"
}
div { "Page {cur_page_val} of {max_page_val} ({item_count_val} Media Items)" }
a {
onclick: move|_| page.set((cur_page_val + 1).min(max_page_val)),
onclick: move|_| {
let p = (cur_page_val + 1).min(max_page_val);
page.set(p);
on_page_change();
},
"Next"
}
a {
onclick: move|_| page.set(max_page_val),
onclick: move|_| {
page.set(max_page_val);
on_page_change();
},
"Last"
}
}
}
}
fn on_page_change()
{
let window = window().expect("Failed to get window");
let document = window.document().expect("Failed to get document");
document
.query_selector("#content")
.expect("Failed to find content")
.expect("Failed to find content")
.scroll_to_with_x_and_y(0.0, 0.0);
}