hyaenidae/templates/submissions/profile_box.rs.html

38 lines
1.4 KiB
HTML

@use crate::ActixLoader;
@use crate::extensions::ProfileExt;
@use crate::templates::ago;
@use crate::views::OwnedProfileView;
@use chrono::{DateTime, Utc};
@use hyaenidae_toolkit::{templates::link, Link};
@use hyaenidae_toolkit::{templates::icon, Size};
@(loader: &ActixLoader, view: &OwnedProfileView, published: Option<DateTime<Utc>>, dark: bool, body: Content)
<div class="profile-box">
@:icon(&view.icon(loader).size(Size::Small).dark(dark))
<div class="profile-box--content">
<div class="profile-box--all-meta">
<div class="profile-box--meta">
@if let Some(name) = view.profile.display_name() {
<div class="profile-box--meta--display">
@:link(&Link::current_tab(&view.profile.view_path()).plain(true), {
@Html(name)
})
</div>
}
<div class="profile-box--meta--handle">
@:link(&Link::current_tab(&view.profile.view_path()).plain(true), {
@view.profile.full_handle()
})
</div>
@if let Some(published) = published {
<div class="profile-box--meta--date">
@:ago(loader, published)
</div>
}
</div>
</div>
<div class="profile-box--body">@:body()</div>
</div>
</div>