summaryrefslogtreecommitdiff
path: root/layouts/_partials/pageinfo.html
blob: 47f119414de8049eb5c38aed3d2f96f52b244c416d1313f4aa14d71e6aed3a23 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
{{ $dateFormat := .Site.Params.dateFormat | default ":date_long" -}}

{{/* user-overridable parameter $dateFormat is escaped pre-insertion so that HTML entities can be inserted */ -}}
{{ $nonBreakingPublishDate := .Page.PublishDate | time.Format $dateFormat | htmlEscape -}}
{{ $nonBreakingPublishDate = replace $nonBreakingPublishDate " " " " -}}
{{ $nonBreakingPublishDate = replace $nonBreakingPublishDate "-" "‑" -}}

{{/* user-overridable parameter $readingTime is escaped pre-insertion so that HTML entities can be inserted */ -}}
{{ $nonBreakingReadingTime := i18n "readingTime" .ReadingTime | htmlEscape -}}
{{ $nonBreakingReadingTime = replace $nonBreakingReadingTime " " " " -}}
{{ $nonBreakingReadingTime = replace $nonBreakingReadingTime "-" "‑" -}}

{{ $breakingTags := .Param (lower (i18n "tags")) -}}
{{ $nonBreakingTags := slice -}}
{{ range $breakingTags -}}
  {{/* user-defined tags are escaped pre-insertion so that HTML entities can be inserted */ -}}
  {{ $nonBreakingTag := htmlEscape . -}}
  {{ $nonBreakingTag = replace $nonBreakingTag " " " " -}}
  {{ $nonBreakingTag = replace $nonBreakingTag "-" "‑" -}}
  {{ $nonBreakingTags = $nonBreakingTags | append $nonBreakingTag -}}
{{ end -}}

{{/* user-overridable parameter $audioAvailable is escaped pre-insertion so that HTML entities can be inserted */ -}}
{{ $nonBreakingAudioAvailable := i18n "audioAvailable" .Title | htmlEscape -}}
{{ $nonBreakingAudioAvailable = replace $nonBreakingAudioAvailable " " " " -}}
{{ $nonBreakingAudioAvailable = replace $nonBreakingAudioAvailable "-" "‑" -}}

<span class="meta-item">{{ emojify ":calendar:" }}&nbsp;<time {{ printf "datetime=%q" (.Page.PublishDate | time.Format "2006-01-02T15:04:05-0700") | safeHTMLAttr }}>{{ $nonBreakingPublishDate | safeHTML }}</time></span><span class="meta-item">{{ emojify ":stopwatch:" }}&nbsp;<time datetime="PT{{ .ReadingTime }}M">{{ $nonBreakingReadingTime | safeHTML }}</time></span>{{ if where .Resources "MediaType.MainType" "audio" }}<span class="meta-item">{{ emojify ":headphones:" }}&nbsp;{{ $nonBreakingAudioAvailable | safeHTML }}</span>{{ end }}{{ if $nonBreakingTags }}<span class="meta-item">{{ emojify ":label:" }}&nbsp;{{ range $key, $val := $nonBreakingTags }}{{ if $key }} {{ end }}<a class="link link--internal" href='{{ relLangURL (lower (i18n "tags")) }}/{{ index $breakingTags $key | urlize }}/' rel="noreferrer">{{ $val | safeHTML }}</a>{{ end }}</span>{{ end }}