Add paige-* classes and IDs to all HTML structures

This commit is contained in:
Will Faught
2023-02-06 21:21:33 -08:00
parent b9650b0209
commit 5e50b4046f
7 changed files with 104 additions and 34 deletions

View File

@@ -1,6 +1,34 @@
{{ $page := . }}
<article>
{{ $class := slice "paige-article" }}
{{ $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 }}
{{ $class = delimit ($class | uniq) " " }}
<article class="{{ $class }}">
<div class="align-items-center d-flex flex-column mb-0">
{{ partial "paige/metadata.html" $page }}
{{ partial "paige/toc.html" $page }}

View File

@@ -6,17 +6,17 @@
{{ $last := templates.Exists "partials/paige/footer-last.html" }}
{{ if or $copyright $credit $first $last }}
<footer>
<footer id="paige-footer">
{{ if $first }}
{{ partial "paige/footer-first.html" . }}
{{ end }}
{{ if $copyright }}
<p class="{{ if $credit }} mb-0 {{ end }} text-center text-secondary">{{ $copyright | markdownify }}</p>
<p class="{{ if $credit }} mb-0 {{ end }} text-center text-secondary" id="paige-copyright">{{ $copyright | markdownify }}</p>
{{ end }}
{{ if $credit }}
<p class="text-center"><a class="link-secondary text-decoration-none" href="https://github.com/willfaught/paige">Paige Theme</a></p>
<p class="text-center"><a class="link-secondary text-decoration-none" href="https://github.com/willfaught/paige" id="paige-credit">Paige Theme</a></p>
{{ end }}
{{ if $last }}

View File

@@ -5,7 +5,7 @@
{{ $menu := site.Menus.main }}
{{ if or $first $last $menu }}
<header>
<header id="paige-header">
{{ if $first }}
{{ partial "paige/header-first.html" $page }}
{{ end }}

View File

@@ -1,22 +1,22 @@
{{ $page := . }}
{{ $authors := cond ($page.Param "paige.main.metadata.authors.hide" | not) (partial "paige/func-authors.html" $page) "" }}
{{ $authorsclass := $page.Param "paige.main.metadata.authors.class" | default "text-center text-secondary" }}
{{ $authorsclass := $page.Param "paige.main.metadata.authors.class" | default "paige-authors text-center text-secondary" }}
{{ $categories := cond ($page.Param "paige.main.metadata.terms.hide" | not) ($page.Params.categories | default slice) slice | uniq }}
{{ $date := cond ($page.Param "paige.main.metadata.date.hide" | not) $page.PublishDate "" }}
{{ $dateclass := $page.Param "paige.main.metadata.date.class" | default "text-center text-secondary" }}
{{ $dateclass := $page.Param "paige.main.metadata.date.class" | default "paige-date text-center text-secondary" }}
{{ $dateformat := $page.Param "paige.main.metadata.date.format" | default ":date_long" }}
{{ $description := cond ($page.Param "paige.main.metadata.description.hide" | not) ($page.Description | markdownify) "" }}
{{ $descriptionclass := $page.Param "paige.main.metadata.description.class" | default "lead text-center" }}
{{ $descriptionclass := $page.Param "paige.main.metadata.description.class" | default "lead paige-description text-center" }}
{{ $nogap := "mb-0" }}
{{ $readingtime := cond ($page.Param "paige.main.metadata.reading_time.hide" | not) $page.ReadingTime "" }}
{{ $readingtimeclass := $page.Param "paige.main.metadata.reading_time.class" | default "text-center text-secondary" }}
{{ $readingtimeclass := $page.Param "paige.main.metadata.reading_time.class" | default "paige-reading-time text-center text-secondary" }}
{{ $sectionclass := "paige-metadata w-100" }}
{{ $tags := cond ($page.Param "paige.main.metadata.terms.hide" | not) ($page.Params.tags | default slice) slice | uniq }}
{{ $termsinnerclass := $page.Param "paige.main.metadata.terms.inner_class" | default "badge text-bg-secondary text-decoration-none" }}
{{ $termsouterclass := $page.Param "paige.main.metadata.terms.outer_class" | default "text-center" }}
{{ $termsinnerclass := $page.Param "paige.main.metadata.terms.inner_class" | default "badge paige-terms-inner text-bg-secondary text-decoration-none" }}
{{ $termsouterclass := $page.Param "paige.main.metadata.terms.outer_class" | default "paige-terms-outer text-center" }}
{{ $title := cond ($page.Param "paige.main.metadata.title.hide" | not) ($page.Title | markdownify) "" }}
{{ $titleclass := $page.Param "paige.main.metadata.title.class" | default "display-5 fw-bold text-center" }}
{{ $titleclass := $page.Param "paige.main.metadata.title.class" | default "display-5 fw-bold paige-title text-center" }}
{{ $titlelink := $page.Params.link }}
{{ $titlepage := $page.RelPermalink }}

View File

@@ -1,7 +1,5 @@
{{ $page := . }}
{{ $class := "mb-0 text-center" }}
{{ if $page.Pages }}
{{ if $page.Param "paige.list.content.show" }}
{{ $p := $page.Paginate $page.Pages }}
@@ -12,7 +10,7 @@
{{ end }}
</section>
{{ if or $p.HasPrev $p.HasNext }}
<section>
<section id="paige-pagination">
<div class="d-flex justify-content-center">
{{ partial "paige/pagination.html" $page }}
</div>
@@ -20,35 +18,35 @@
{{ end }}
{{ else }}
{{ $p := $page.Paginate ($page.Pages.ByDate.Reverse.GroupByDate "January 2006") }}
<section>
<section id="paige-pages">
{{ range $p.PageGroups }}
{{ if $page.Param "paige.list.date_header.hide" | not }}
<p class="{{ $.Param `paige.list.date_header.class` | default `h5 text-center` }}">{{ .Key }}</p>
<p class="{{ $.Param `paige.list.date_header.class` | default `h5 paige-date-header text-center` }}">{{ .Key }}</p>
{{ end }}
{{ range .Pages }}
{{ $authors := cond ($page.Param "paige.list.authors.hide" | not) (partial "paige/func-authors.html" .) "" }}
{{ $authorsclass := $page.Param "paige.list.authors.class" | default (print $class " text-secondary") }}
{{ $authorsclass := $page.Param "paige.list.authors.class" | default "mb-0 paige-authors text-center text-secondary" }}
{{ $categories := cond ($page.Param "paige.list.terms.hide" | not) (.Params.categories | default slice) slice | uniq }}
{{ $date := cond ($page.Param "paige.list.date.hide" | not) .PublishDate "" }}
{{ $dateclass := $page.Param "paige.list.date.class" | default (print $class " text-secondary") }}
{{ $dateclass := $page.Param "paige.list.date.class" | default "mb-0 paige-date text-center text-secondary" }}
{{ $dateformat := $page.Param "paige.list.date.format" | default ":date_long" }}
{{ $description := cond ($page.Param "paige.list.description.hide" | not) (.Description | markdownify) "" }}
{{ $descriptionclass := $page.Param "paige.list.description.class" | default $class }}
{{ $descriptionclass := $page.Param "paige.list.description.class" | default "mb-0 paige-description text-center" }}
{{ $draft := .Draft }}
{{ $expired := and .ExpiryDate (lt .ExpiryDate now) }}
{{ $flags := slice }}
{{ $future := and .PublishDate (gt .PublishDate now) }}
{{ $modified := and .PublishDate .Lastmod (lt .PublishDate .Lastmod) }}
{{ $readingtime := cond ($page.Param "paige.list.reading_time.hide" | not) .ReadingTime "" }}
{{ $readingtimeclass := $page.Param "paige.list.reading_time.class" | default (print $class " text-secondary") }}
{{ $sectionclass := $page.Param "paige.list.section.class" | default "mb-3 w-100" }}
{{ $readingtimeclass := $page.Param "paige.list.reading_time.class" | default "mb-0 paige-reading-time text-center text-secondary" }}
{{ $sectionclass := $page.Param "paige.list.section.class" | default "mb-3 paige-page w-100" }}
{{ $summary := cond ($page.Param "paige.list.summary.hide" | not) (.Summary | strings.TrimPrefix "<p>" | strings.TrimSuffix "</p>" | htmlUnescape | plainify) "" }}
{{ $summaryclass := $page.Param "paige.list.summary.class" | default (print "fst-italic " $class) }}
{{ $summaryclass := $page.Param "paige.list.summary.class" | default "fst-italic mb-0 paige-summary text-center" }}
{{ $tags := cond ($page.Param "paige.list.terms.hide" | not) (.Params.tags | default slice) slice | uniq }}
{{ $termsinnerclass := $page.Param "paige.list.terms.inner_class" | default "badge text-bg-secondary text-decoration-none" }}
{{ $termsouterclass := $page.Param "paige.list.terms.outer_class" | default $class }}
{{ $termsinnerclass := $page.Param "paige.list.terms.inner_class" | default "badge paige-terms-inner text-bg-secondary text-decoration-none" }}
{{ $termsouterclass := $page.Param "paige.list.terms.outer_class" | default "mb-0 paige-terms-outer text-center" }}
{{ $title := cond ($page.Param "paige.list.title.hide" | not) (.Title | markdownify) "" }}
{{ $titleclass := $page.Param "paige.list.title.class" | default $class }}
{{ $titleclass := $page.Param "paige.list.title.class" | default "mb-0 paige-title text-center" }}
{{ $titlelink := .RelPermalink }}
{{ if $draft }}
@@ -123,7 +121,7 @@
{{ end }}
</section>
{{ if or $p.HasPrev $p.HasNext }}
<section>
<section id="paige-pagination">
<div class="d-flex justify-content-center">
{{ partial "paige/pagination.html" $page }}
</div>