58 lines
1.9 KiB
HTML
58 lines
1.9 KiB
HTML
@use crate::ActixLoader;
|
|
@use crate::browse::ViewBrowseState;
|
|
@use crate::nav::NavState;
|
|
@use crate::templates::layouts::wide;
|
|
@use hyaenidae_toolkit::templates::button_group;
|
|
@use hyaenidae_toolkit::templates::centered;
|
|
@use hyaenidae_toolkit::{templates::{card, card_body, card_title}, Card};
|
|
@use hyaenidae_toolkit::{templates::{tab, tab_group}, Tab};
|
|
@use hyaenidae_toolkit::templates::{thumbnail, thumbnail_border, thumbnails};
|
|
@use i18n_embed_fl::fl;
|
|
|
|
@(loader: &ActixLoader, browse_view: &ViewBrowseState, nav_state: &NavState)
|
|
|
|
@:wide(loader, &fl!(loader, "site-name"), &fl!(loader, "site-description"), nav_state, {}, {
|
|
<div class="tabs">
|
|
@:tab_group({
|
|
@:tab(Tab::new("/browse").selected(true), {
|
|
@fl!(loader, "submissions-tab")
|
|
})
|
|
@:tab(Tab::new("/discover"), {
|
|
@fl!(loader, "profiles-tab")
|
|
})
|
|
})
|
|
</div>
|
|
@if browse_view.has_submissions() {
|
|
@if browse_view.has_nav() {
|
|
@:thumbnail_border({
|
|
@:button_group(&browse_view.nav(loader))
|
|
})
|
|
}
|
|
@:thumbnails({
|
|
@for thumb in browse_view.submissions() {
|
|
@:thumbnail(&thumb)
|
|
}
|
|
})
|
|
@if browse_view.has_nav() {
|
|
@:thumbnail_border({
|
|
@:button_group(&browse_view.nav(loader))
|
|
})
|
|
}
|
|
} else {
|
|
@:centered(false, {
|
|
@:card(&Card::full_width().dark(nav_state.dark()), {
|
|
@:card_title({
|
|
@fl!(loader, "site-name")
|
|
})
|
|
@:card_body({
|
|
@if browse_view.is_logged_in() {
|
|
@fl!(loader, "browse-empty")
|
|
} else {
|
|
@fl!(loader, "browse-logged-out")
|
|
}
|
|
})
|
|
})
|
|
})
|
|
}
|
|
})
|