@use plume_models::posts::Post;
@use template_utils::*;
@use routes::*;

@(ctx: BaseContext, article: Post)

<div class="card h-entry">
    @if article.cover_id.is_some() {
        <div class="cover" style="background-image: url('@Html(article.cover_url(ctx.0).unwrap_or_default())')"></div>
    }
    <h3 class="p-name">
        <a class="u-url" href="@uri!(posts::details: blog = article.get_blog(ctx.0).unwrap().fqn, slug = &article.slug, responding_to = _)">
            @article.title
        </a>
    </h3>
    <main>
        <p class="p-summary">@article.subtitle</p>
    </main>
    <footer class="authors">
        @Html(i18n!(ctx.1, "By {0}"; format!(
            "<a class=\"p-author h-card\" href=\"{}\">{}</a>",
            uri!(user::details: name = &article.get_authors(ctx.0).unwrap_or_default()[0].fqn),
            escape(&article.get_authors(ctx.0).unwrap_or_default()[0].name())
        )))
        @if article.published {
	       ⋅ <span class="dt-published" datetime="@article.creation_date.format("%F %T")">@article.creation_date.format("%B %e, %Y")</span>
        }
        ⋅ <a href="@uri!(blogs::details: name = &article.get_blog(ctx.0).unwrap().fqn, page = _)">@article.get_blog(ctx.0).unwrap().title</a>
        @if !article.published {
            ⋅ @i18n!(ctx.1, "Draft")
        }
    </footer>
</div>