144 lines
		
	
	
		
			7.9 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			144 lines
		
	
	
		
			7.9 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| {{ $page := . }}
 | |
| 
 | |
| {{ if and $page.Pages ($page.Param "paige.list.pages.hide" | not) }}
 | |
|     {{ if $page.Param "paige.list.content.show" }}
 | |
|         {{ $p := $page.Paginate $page.Pages }}
 | |
|         <section id="paige-pages">
 | |
|             {{ range $p.Pages }}
 | |
|                 {{ partial "paige/article.html" (dict "listshowcontent" true "page" .) }}
 | |
|             {{ end }}
 | |
|         </section>
 | |
|         {{ if or $p.HasPrev $p.HasNext }}
 | |
|             <section id="paige-pagination">
 | |
|                 <div class="d-flex justify-content-center">
 | |
|                     {{ partial "paige/pagination.html" $page }}
 | |
|                 </div>
 | |
|             </section>
 | |
|         {{ end }}
 | |
|     {{ else }}
 | |
|         {{ $p := $page.Paginate ($page.Pages.ByPublishDate.Reverse.GroupByPublishDate "January 2006") }}
 | |
|         <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 paige-date-header text-center` }}">{{ .Key }}</p>
 | |
|                 {{ end }}
 | |
|                 {{ range .Pages }}
 | |
|                     {{ $authors := cond ($page.Param "paige.list.authors.hide" | not) (partial "paige/authors.html" .) "" }}
 | |
|                     {{ $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 }}
 | |
|                     {{ $commiturl := "" }}
 | |
|                     {{ $date := cond ($page.Param "paige.list.date.hide" | not) .PublishDate "" }}
 | |
|                     {{ $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 "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 "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 | htmlUnescape | plainify) "" }}
 | |
|                     {{ $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 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 "mb-0 paige-title text-center" }}
 | |
|                     {{ $titlelink := .RelPermalink }}
 | |
| 
 | |
|                     {{ if and ($page.Param "paige.git.commit_url_prefix") $page.GitInfo }}
 | |
|                         {{ $commiturl = print ($page.Param "paige.git.commit_url_prefix") $page.GitInfo.Hash }}
 | |
|                     {{ end }}
 | |
| 
 | |
|                     {{ if $draft }}
 | |
|                         {{ $flags = $flags | append "paige-draft" "paige-unpublished" }}
 | |
|                     {{ end }}
 | |
| 
 | |
|                     {{ if $expired }}
 | |
|                         {{ $flags = $flags | append "paige-expired" "paige-unpublished" }}
 | |
|                     {{ end }}
 | |
| 
 | |
|                     {{ if $future }}
 | |
|                         {{ $flags = $flags | append "paige-future" "paige-unpublished" }}
 | |
|                     {{ end }}
 | |
| 
 | |
|                     {{ if $modified }}
 | |
|                         {{ $flags = $flags | append "paige-modified" }}
 | |
|                     {{ end }}
 | |
| 
 | |
|                     {{ if not (or $draft $expired $future) }}
 | |
|                         {{ $flags = $flags | append "paige-published" }}
 | |
|                     {{ end }}
 | |
| 
 | |
|                     {{ $flags = delimit ($flags | uniq) " " }}
 | |
|                     {{ $sectionclass = delimit (split $sectionclass " " | append $flags | uniq | sort) " " }}
 | |
| 
 | |
|                     <section {{ with $sectionclass }} class="{{ . }}" {{ end }}>
 | |
|                         {{ with $title }}
 | |
|                             <p {{ with $titleclass }} class="{{ . }}" {{ end }}><a href="{{ $titlelink }}">{{ . }}</a></p>
 | |
|                         {{ end }}
 | |
| 
 | |
|                         {{ with $description }}
 | |
|                             <p {{ with $descriptionclass }} class="{{ . }}" {{ end }}>{{ . }}</p>
 | |
|                         {{ end }}
 | |
| 
 | |
|                         {{ with $summary }}
 | |
|                             <p {{ with $summaryclass }} class="{{ . }}" {{ end }}>{{ . }}</p>
 | |
|                         {{ end }}
 | |
| 
 | |
|                         {{ if or $categories $tags }}
 | |
|                             <p {{ with $termsouterclass }} class="{{ . }}" {{ end }}>
 | |
|                                 {{ $terms := slice }}
 | |
| 
 | |
|                                 {{ range $categories }}
 | |
|                                     {{ $terms = $terms | append (dict "name" . "url" (lower . | printf "categories/%v/" | relLangURL)) }}
 | |
|                                 {{ end }}
 | |
| 
 | |
|                                 {{ range $tags }}
 | |
|                                     {{ $terms = $terms | append (dict "name" . "url" (lower . | printf "tags/%v/" | relLangURL)) }}
 | |
|                                 {{ end }}
 | |
| 
 | |
|                                 {{ range sort $terms "name" }}
 | |
|                                     <a {{ with $termsinnerclass }} class="{{ . }}" {{ end }} href="{{ .url | safeURL }}">{{ .name }}</a>
 | |
|                                 {{ end }}
 | |
|                             </p>
 | |
|                         {{ end }}
 | |
| 
 | |
|                         {{ with $authors }}
 | |
|                             <p {{ with $authorsclass }} class="{{ . }}" {{ end }}>{{ . }}</p>
 | |
|                         {{ end }}
 | |
| 
 | |
|                         {{ with $date }}
 | |
|                             <p {{ with $dateclass }} class="{{ . }}" {{ end }}>
 | |
|                                 {{ with $commiturl }}
 | |
|                                     <a class="link-secondary text-decoration-none" href="{{ . }}">
 | |
|                                 {{ end }}
 | |
| 
 | |
|                                 <time datetime="{{ .Format `2006-01-02` }}">{{ time.Format $dateformat . }}</time>
 | |
| 
 | |
|                                 {{ if $commiturl }}
 | |
|                                     </a>
 | |
|                                 {{ end }}
 | |
|                             </p>
 | |
|                         {{ end }}
 | |
| 
 | |
|                         {{ with $readingtime }}
 | |
|                             <p {{ with $readingtimeclass }} class="{{ . }}" {{ end }}>{{ . }} {{ i18n "paige_minutes" . }}</p>
 | |
|                         {{ end }}
 | |
|                     </section>
 | |
|                 {{ end }}
 | |
|             {{ end }}
 | |
|         </section>
 | |
|         {{ if or $p.HasPrev $p.HasNext }}
 | |
|             <section id="paige-pagination">
 | |
|                 <div class="d-flex justify-content-center">
 | |
|                     {{ partial "paige/pagination.html" $page }}
 | |
|                 </div>
 | |
|             </section>
 | |
|         {{ end }}
 | |
|     {{ end }}
 | |
| {{ end }}
 |