refactor templates layout
@see https://gohugo.io/templates/new-templatesystem-overview/
This commit is contained in:
parent
a83f339dc8
commit
230c46411b
102 changed files with 2 additions and 2 deletions
46
layouts/_partials/scripts/show_post_locations_on_map.js
Normal file
46
layouts/_partials/scripts/show_post_locations_on_map.js
Normal file
|
@ -0,0 +1,46 @@
|
|||
{{- /*
|
||||
Renders a post's locations on a map.
|
||||
|
||||
@params pc Page context.
|
||||
@params locations_data Site data of locations.
|
||||
@params locations Post locations.
|
||||
*/
|
||||
-}}
|
||||
|
||||
<!-- Validation -->
|
||||
|
||||
{{- if ( not ( isset . "pc" ) ) -}}
|
||||
{{- errorf "No page context passed" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- if ( not ( isset . "locations_data" ) ) -}}
|
||||
{{- errorf "No location site data defined" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{- if ( not ( isset . "locations" ) ) -}}
|
||||
{{- errorf "No post locations defined" -}}
|
||||
{{- end -}}
|
||||
|
||||
<!-- Rendering -->
|
||||
|
||||
<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_leaf_nodes := partialCached "util/get_location_leaf_nodes.html" .locations_data -}}
|
||||
{{- range .locations -}}
|
||||
{{- with ( index $locations_leaf_nodes ( 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" . -}}
|
||||
{{- end -}}
|
||||
{{- end }}
|
||||
|
||||
map.fitBounds(latLons);
|
||||
</script>
|
Loading…
Add table
Add a link
Reference in a new issue