You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

64 lines
1.9 KiB
HTML

{{ $params := . }}
{{ $fullpages := false }}
{{ $page := . }}
{{ if reflect.IsMap $params }}
{{ $fullpages = $params.fullpages }}
{{ $page = $params.page }}
{{ else }}
{{ $params = dict "fullpages" $fullpages "page" $page }}
{{ end }}
{{ $class := cond $fullpages (slice "paige-article") slice }}
{{ $draft := $page.Draft }}
{{ $expired := and $page.ExpiryDate (lt $page.ExpiryDate now) }}
{{ $future := and $page.PublishDate (gt $page.PublishDate now) }}
{{ $id := not $fullpages }}
{{ $modified := and $page.PublishDate $page.Lastmod (lt $page.PublishDate $page.Lastmod) }}
{{ if $draft }}
{{ $class = $class | append "paige-draft" "paige-unpublished" }}
{{ end }}
{{ if $expired }}
{{ $class = $class | append "paige-expired" "paige-unpublished" }}
{{ end }}
{{ if $future }}
{{ $class = $class | append "paige-future" "paige-unpublished" }}
{{ end }}
{{ if $modified }}
{{ $class = $class | append "paige-modified" }}
{{ end }}
{{ if not (or $draft $expired $future) }}
{{ $class = $class | append "paige-published" }}
{{ end }}
{{ with $page.Kind }}
{{ if eq . "home" }}
{{ $class = $class | append "paige-home" }}
{{ else if eq . "section" }}
{{ $class = $class | append "paige-section" }}
{{ else if eq . "page" }}
{{ $class = $class | append "paige-single" }}
{{ else if eq . "taxonomy" }}
{{ $class = $class | append "paige-taxonomy" }}
{{ else if eq . "term" }}
{{ $class = $class | append "paige-term" }}
{{ end }}
{{ end }}
{{ $class = delimit ($class | uniq) " " }}
<article {{ with $class }} class="{{ . }}" {{ end }} {{ if $id }} id="paige-article" {{ end }}>
<div class="align-items-center d-flex flex-column mb-0">
{{ partial "paige/metadata.html" $params }}
{{ partial "paige/alert.html" $page }}
{{ partial "paige/toc.html" $params }}
{{ partial "paige/content.html" $params }}
</div>
</article>