@use plume_models::posts::Post;
@use templates::{base, partials::post_card};
@use template_utils::*;
@use routes::*;

@(ctx: BaseContext, articles: Vec<Post>, page: i32, n_pages: i32)

@:base(ctx, i18n!(ctx.1, "All the articles of the Fediverse"), {}, {}, {
<div class="h-feed">
  <h1 "p-name">@i18n!(ctx.1, "All the articles of the Fediverse")</h1>

    @if ctx.2.is_some() {
        @tabs(&[
            (&uri!(instance::index).to_string(), i18n!(ctx.1, "Latest articles"), false),
            (&uri!(instance::feed: _).to_string(), i18n!(ctx.1, "Your feed"), false),
            (&uri!(instance::federated: _).to_string(), i18n!(ctx.1, "Federated feed"), true),
            (&uri!(instance::local: _).to_string(), i18n!(ctx.1, "Local feed"), false),
        ])
    } else {
        @tabs(&[
              (&uri!(instance::index).to_string(), i18n!(ctx.1, "Latest articles"), false),
              (&uri!(instance::federated: _).to_string(), i18n!(ctx.1, "Federated feed"), true),
              (&uri!(instance::local: _).to_string(), i18n!(ctx.1, "Local feed"), false),
        ])
    }

    <div class="cards">
        @for article in articles {
            @:post_card(ctx, article)
        }
    </div>
    @paginate(ctx.1, page, n_pages)
</div>
})
