{{ define "title" }}{{ .Title | plainify }} | {{ .Site.Title }}{{ end }} {{ define "head-description" }}{{ .Summary | plainify }}{{ end }} {{ define "main-class" }}--single layouts-default-single{{ end }} {{ define "header-scripts" }} {{ with .Params.locations }} <script id="Map-script" src="/js/leaflet/leaflet.js" ></script> {{ end }} {{ end }} {{ define "header-styles" }} {{ with .Params.styles }} <link rel="stylesheet" type="text/css" href="{{ ( $.Page.Resources.GetMatch "style").RelPermalink }}" /> {{ end }} {{ with .Params.locations }} <link rel="stylesheet" href="/css/leaflet/leaflet.css" /> {{ end }} {{ end }} {{ define "footer-scripts" }} {{ with .Params.locations }} <script> var map = L.map('map').setView([55, -3], 13); L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', { maxZoom: 19, attribution: '© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a>' }).addTo(map); var latLons = []; {{ $locations := partialCached "util/get_location_leaf_nodes.html" $.Site.Data.locations -}} {{- range . -}} {{- with ( index $locations ( replaceRE `, [A-Z]+` "" . ) ) -}} L.marker([{{ .lat }}, {{ .lon }}]).addTo(map); latLons.push([{{ .lat }}, {{ .lon }}]); {{- else -}} {{- erroridf "missing-lat-lon" "Could not find lat-lon for %q (%q)" . $.File.Path -}} {{- end -}} {{- end }} map.fitBounds(latLons); </script> {{ end }} {{ with .Params.scripts }} {{ if in . "charts" }} {{ $chartsConfigJS := $.Page.Resources.GetMatch "charts-init" | fingerprint }} <script id="Charts-script" src="/js/chart/chart.js" ></script> <script id="Charts-config-script" src="{{ $chartsConfigJS.Permalink }}" integrity="{{ $chartsConfigJS.Data.Integrity }}" ></script> {{ end }} {{ end }} {{ end }} {{ define "main-header" }} {{ partial "single/main-header.html" ( dict "pc" . "sc" $ ) }} {{ end }} {{ define "main-body" }} <section class="site-content__body"> {{- if ( or .Params.internal_links .Params.external_links ) -}} <section class="article__links"> {{- with .Params.internal_links -}} <h3>Internal Links</h3> <ul> {{- range . -}} {{ if eq ( printf "%T" . ) "map[string]interface {}" }} <li><a href="{{ .link }}">{{ .title | safeHTML }}</a></li> {{ else }} <li><a href="{{ . }}">Link</a></li> {{ end }} {{- end -}} </ul> {{- end -}} {{- with .Params.external_links -}} <h3>External Links</h3> <ul> {{- range . -}} {{ if eq ( printf "%T" . ) "map[string]interface {}" }} <li> <a href="{{ .link }}" rel="noopener noreferrer" target="_blank" >{{ .title | safeHTML }}</a > </li> {{ else }} <li> <a href="{{ . }}" rel="noopener noreferrer" target="_blank" >Link</a > </li> {{ end }} {{- end -}} </ul> {{- end -}} </section> {{- end -}} {{ .Content }} </section> {{ end }} {{ define "main-footer" }} {{ partial "single/post-meta.html" ( dict "pc" . "sc" $ ) }} {{ end }}