3663bffe5c
* update compiler to recent nightly * cargo fmt * fix clippy but ructe code is still complaining * update circleci and rocket_csrf * fix last clippy problems * cargo fmt * fix build issue was caused be improper handling of recursive template (comment) by old ructe, which is fixed on newer version
49 lines
2.0 KiB
HTML
49 lines
2.0 KiB
HTML
@use template_utils::*;
|
|
@use plume_models::comments::CommentTree;
|
|
@use routes::*;
|
|
|
|
@(ctx: BaseContext, comment_tree: &CommentTree, in_reply_to: Option<&str>, blog: &str, slug: &str)
|
|
|
|
@if let Some(ref comm) = Some(&comment_tree.comment) {
|
|
@if let Ok(author) = comm.get_author(ctx.0) {
|
|
<div class="comment u-comment h-cite" id="comment-@comm.id">
|
|
<main class="content">
|
|
<header>
|
|
<a class="author u-author h-card" href="@uri!(user::details: name = &author.fqn)" dir="auto">
|
|
@avatar(ctx.0, &author, Size::Small, true, ctx.1)
|
|
<span class="display-name p-name">@author.name()</span>
|
|
<small>@author.fqn</small>
|
|
</a>
|
|
<p class="dt-published" datetime="@comm.creation_date.format("%F %T")">
|
|
@if let Some(ref ap_url) = comm.ap_url {
|
|
<a class="u-url" href="@ap_url">@comm.creation_date.format("%B %e, %Y %H:%M")</a>
|
|
}
|
|
</p>
|
|
|
|
@if let Some(ref in_reply_to) = in_reply_to {
|
|
<a class="u-in-reply-to hidden" href="@in_reply_to"></a>
|
|
}
|
|
</header>
|
|
<div class="text p-content">
|
|
@if comm.sensitive {
|
|
<details>
|
|
<summary dir="auto">@comm.spoiler_text</summary>
|
|
}
|
|
@Html(&comm.content)
|
|
@if comm.sensitive {
|
|
</details>
|
|
}
|
|
</div>
|
|
<a class="button icon icon-message-circle" href="?responding_to=@comm.id">@i18n!(ctx.1, "Respond")</a>
|
|
@if ctx.2.clone().map(|u| u.id == author.id).unwrap_or(false) {
|
|
<form class="inline icon icon-trash" method="post" action="@uri!(comments::delete: blog = blog, slug = slug, id = comm.id)">
|
|
<input onclick="return confirm('@i18n!(ctx.1, "Are you sure?")')" type="submit" value="@i18n!(ctx.1, "Delete this comment")">
|
|
</form>
|
|
}
|
|
</main>
|
|
@for res in &comment_tree.responses {
|
|
@:comment_html(ctx, res, comm.ap_url.as_ref().map(|u| &**u), blog, slug)
|
|
}
|
|
</div>
|
|
}}
|