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.
100 lines
3.7 KiB
HTML
100 lines
3.7 KiB
HTML
{{ define "main" }}
|
|
{{ $page := . }}
|
|
|
|
{{ $class := slice }}
|
|
{{ $draft := $page.Draft }}
|
|
{{ $expired := and $page.ExpiryDate (lt $page.ExpiryDate now) }}
|
|
{{ $future := and $page.PublishDate (gt $page.PublishDate now) }}
|
|
{{ $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-list" }}
|
|
{{ 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) " " }}
|
|
|
|
{{ $height := $page.Params.paige.home.image.height | default "20rem" }}
|
|
{{ $stretch := $page.Params.paige.home.image.stretch }}
|
|
{{ $width := $page.Params.paige.home.image.width }}
|
|
|
|
<article {{ with $class }} class="{{ . }}" {{ end }} id="paige-article">
|
|
<div class="align-items-center d-flex flex-column mb-0">
|
|
{{ partial "paige/metadata.html" $page }}
|
|
{{ partial "paige/alert.html" $page }}
|
|
{{ partial "paige/toc.html" $page }}
|
|
|
|
{{ if or $page.Params.paige.home.image.url $page.Params.paige.home.greeting $page.Params.paige.home.blurb }}
|
|
<div>
|
|
{{ if $page.Params.paige.home.image.url }}
|
|
{{ $class := cond ($stretch | not) "mw-100 rounded-4 shadow" "rounded-4 shadow" }}
|
|
{{ $style := cond ($stretch | not) (printf "height: %s; width: %s" $height ($width | default "auto")) (printf "height: %s; object-fit: cover; width: %s" $height ($width | default "100%")) }}
|
|
|
|
<p {{ if or (not $stretch) $width }} class="text-center" {{ end }}>
|
|
{{ partial "paige/img.html" (dict
|
|
"alt" $page.Params.paige.home.image.alt
|
|
"class" $class
|
|
"fetchpriority" "high"
|
|
"loading" "eager"
|
|
"page" $page
|
|
"src" $page.Params.paige.home.image.url
|
|
"style" $style
|
|
) }}
|
|
</p>
|
|
{{ end }}
|
|
|
|
{{ with $page.Params.paige.home.greeting }}
|
|
<p class="display-5 fw-bold h2 text-center">{{ . | markdownify }}</p>
|
|
{{ end }}
|
|
|
|
{{ with $page.Params.paige.home.blurb }}
|
|
<div class="container-fluid">
|
|
<div class="justify-content-center row">
|
|
<div class="col col-auto col-lg-7 px-0">
|
|
<p class="lead text-center">{{ . | markdownify }}</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{ end }}
|
|
</div>
|
|
{{ end }}
|
|
|
|
{{ if $page.Param "paige.social" }}
|
|
<p class="display-6 text-center">{{ partial "paige/social.html" $page }}</p>
|
|
{{ end }}
|
|
|
|
{{ partial "paige/content.html" $page }}
|
|
</div>
|
|
</article>
|
|
{{ partial "paige/pages.html" $page }}
|
|
{{ end }}
|