website/layouts/shortcodes/fig-img.html
Matthieu Bessat 421f2fa7b0
All checks were successful
Deploy workflow / deploy (push) Successful in 32s
fix(shortcodes): allow parent bundle resource lookup on fig-img
2024-12-22 23:32:45 +01:00

50 lines
1.7 KiB
HTML

<!---
Fig img shortcode
-->
{{- if .Get "single" -}}
<div class="single-figure-container">
{{ end }}
<figure class="fig-img {{ with .Get "class" }}{{ . }}{{ end }}">
{{- if .Get "link" -}}
<a href="{{ .Get "link" }}"{{ with .Get "target" }} target="{{ . }}"{{ end }}{{ with .Get "rel" }} rel="{{ . }}"{{ end }}>
{{- end -}}
{{ $options := or (.Get "options") "500x500 center" }}
{{ $permalink := "" }}
{{ if hasPrefix (.Get "src") "https://" }}
{{ $permalink = .Get "src" }}
{{ else }}
{{ $resource := .Page.Resources.GetMatch (.Get "src") }}
{{ if not $resource }}
{{ $resource = .Page.Parent.Resources.GetMatch (.Get "src") }}
{{- end -}}
{{ if $resource }}
{{ $permalink = ($resource.Fill $options).Permalink }}
{{- end -}}
{{- end -}}
<img src="{{ $permalink }}"
{{- if or (.Get "alt") (.Get "caption") }}
alt="{{ with .Get "alt" }}{{ . }}{{ else }}{{ .Get "caption" | markdownify| plainify }}{{ end }}"
{{- end -}}
/><!-- Closing img tag -->
{{- if .Get "link" }}</a>{{ end -}}
{{- if or (or (.Get "title") (.Get "caption")) (.Get "attr") -}}
<figcaption>
{{ with (.Get "title") -}}
<h4>{{ . }}</h4>
{{- end -}}
{{- if or (.Get "caption") (.Get "attr") -}}<p>
{{- .Get "caption" | markdownify -}}
{{- with .Get "attrlink" }}
<a href="{{ . }}">
{{- end -}}
{{- .Get "attr" | markdownify -}}
{{- if .Get "attrlink" }}</a>{{ end }}</p>
{{- end }}
</figcaption>
{{- end }}
</figure>
{{- if .Get "single" -}}
</div>
{{ end }}