@use plume_models::blogs::Blog;
@use plume_models::posts::Post;
@use plume_models::users::User;
@use templates::{base, partials::post_card};
@use template_utils::*;

@(ctx: BaseContext, blog: Blog, fqn: String, authors: &Vec<User>, total_articles: usize, page: i32, n_pages: i32, is_author: bool, posts: Vec<Post>)

@:base(ctx, blog.title.as_ref(), {}, {
    <a href="/~/@fqn">@blog.title</a>
}, {
    <h1>@blog.title <small>~@fqn</small></h1>
    <p>@blog.summary</p>
    <p>
        @i18n!(ctx.1, "One author in this blog: ", "{0} authors in this blog: ", authors.len())
        @for author in authors {
            <a class="author" href="/@@/@author.get_fqn(ctx.0)">@author.name(ctx.0)</a>
        }
    </p>
    <p>
        @i18n!(ctx.1, "One article in this blog", "{0} articles in this blog", total_articles)
    </p>

    <section>
        <h2>
            @i18n!(ctx.1, "Latest articles")
            <small><a href="/~/@fqn/atom.xml" title="Atom feed">@icon!("rss")</a></small>
        </h2>
        @if posts.len() < 1 {
            <p>@i18n!(ctx.1, "No posts to see here yet.")</p>
        }
        @if is_author {
            <a href="/~/@fqn/new/" class="button inline-block">@i18n!(ctx.1, "New article")</a>
        }
        <div class="cards">
            @for article in posts {
                @:post_card(ctx, article)
            }
        </div>
        @paginate(ctx.1, page, n_pages)
    </section>
    @if is_author {
        <h2>@i18n!(ctx.1, "Danger zone")</h2>
        <p>@i18n!(ctx.1, "Be very careful, any action taken here can't be cancelled.")</p>
        <form method="post" action="/~/@fqn/delete">
	        <input type="submit" class="inline-block button destructive" value="@i18n!(ctx.1, "Delete this blog")">
        </form>
    }
})