@use plume_models::medias::Media; @use plume_models::safe_string::SafeString; @use templates::base; @use template_utils::*; @use routes::*; @(ctx: BaseContext, medias: Vec<Media>) @:base(ctx, "Your media", {}, {}, { <h1>@i18n!(ctx.1, "Your media")</h1> <div> <a href="@uri!(medias::new)" class="inline-block button">@i18n!(ctx.1, "Upload")</a> </div> <section> @if medias.is_empty() { <p>@i18n!(ctx.1, "You don't have any media yet.")</p> } <div class="list"> @for media in medias { <div class="card flex"> @Html(media.preview_html(ctx.0).unwrap_or(SafeString::new(""))) <main class="grow"> <p><a href="@uri!(medias::details: id = media.id)">@media.alt_text</a></p> </main> <form action="@uri!(medias::delete: id = media.id)" class="inline" method="POST"> <input type="submit" value="@i18n!(ctx.1, "Delete")"/> </form> </div> } </div> </section> })