@use crate::ActixLoader; @use crate::extensions::SubmissionExt; @use crate::nav::NavState; @use crate::submissions::ViewSubmissionState; @use crate::templates::button_js; @use crate::templates::layouts::home; @use crate::templates::comments::nodes; @use crate::templates::submissions::profile_box; @use hyaenidae_toolkit::templates::bbcode; @use hyaenidae_toolkit::{templates::button_group, Button}; @use hyaenidae_toolkit::{templates::{card, card_body, card_section, card_spacer, card_title}, Card}; @use hyaenidae_toolkit::templates::image; @use hyaenidae_toolkit::templates::nested; @use hyaenidae_toolkit::templates::text_input; @use hyaenidae_toolkit::{templates::{tile, tiles}, Tiles}; @use i18n_embed_fl::fl; @(loader: &ActixLoader, view: &ViewSubmissionState, nav_state: &NavState) @:home(loader, &view.submission.title_text(), view.submission.description_text().unwrap_or(&fl!(loader, "view-submission-subtitle", title = view.submission.title_text())), nav_state, { @:button_js() }, { @if view.is_self { @:card(&Card::full_width().dark(nav_state.dark()), { @:card_title({ Edit Submission }) @:card_body({ @:button_group(&[ Button::primary(&fl!(loader, "view-submission-edit-button")).href(&view.submission.update_path()), ]) }) }) } @:card(&Card::full_width().dark(nav_state.dark()), { @:card_title({ @Html(view.submission.title_text()) }) @:card_section({ @if let Some(img) = view.image() {
@:image(&img)
} else {

@fl!(loader, "view-submission-image-error")

} }) @if view.tiles(loader).len() > 1 { @:card_spacer() @:card_section({ @:tiles(&Tiles::new().small(true).scroll(true), { @for t in view.tiles(loader) { @:tile(&t) } }) }) } @:card_body({
@:button_group(&view.nav)
}) @:card_body({ @:profile_box(loader, &view.poster(), view.submission.published(), nav_state.dark(), { @if let Some(description) = view.submission.description_text() { @:bbcode({ @Html(description) }) } }) }) }) @if view.profile.is_some() && view.submission.published().is_some() { @:card(&Card::full_width().dark(nav_state.dark()), {
@:card_title({ @fl!(loader, "comment-heading") }) @:card_body({ @:text_input(&view.comment_input(loader).dark(nav_state.dark())) }) @:card_body({ @:button_group(&[ Button::primary(&fl!(loader, "comment-button")), ]) })
}) } @if view.comments.has_children() { @:card(&Card::full_width().dark(nav_state.dark()), { @:card_title({ @fl!(loader, "comment-section-heading") }) @:card_body({ @:nested(nav_state.dark(), { @:nodes(loader, &view.comments, &view.cache, &view.parent(), view.profile.is_some(), nav_state.dark()) }) }) }) } })