From c2d72e09747a2a4abe9602e1ba49a1b4649c9d3c Mon Sep 17 00:00:00 2001 From: Jieiku Date: Fri, 14 Aug 2026 15:10:15 -0700 Subject: Update for Zola 0.23.3 --- templates/components/image.html | 64 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 templates/components/image.html (limited to 'templates/components/image.html') diff --git a/templates/components/image.html b/templates/components/image.html new file mode 100644 index 0000000..c8230e1 --- /dev/null +++ b/templates/components/image.html @@ -0,0 +1,64 @@ +{% component image(page, config, sources, caption="", class="", alt="", w=0, h=0) %} +{%- if caption %}
{% endif %} + + {%- for src in sources %} + + {%- set video = src | split(pat="/") | last %} + {%- set dirtest = src | trim_start(pat="./") %} + {%- if dirtest is containing(pat="/") %} {%- set reldir = true %} {%- endif %} + {%- if page and page.path %}{%- set pagepath = page.path %}{%- elif section and section.path %}{%- set pagepath = section.path %}{%- endif %} + + {%- if src is starting_with(pat="./") and reldir %}{# Relative Path #} + {%- set path = (src | trim_start(pat="./") | split(pat="/"))[:-1] | join(sep="/") | trim_start(pat="/") -%} + {%- set path = path ~ "/" %} + {%- if not w or not h %} + {%- if page.lang != config.default_language %} + {%- set metapath = (pagepath ~ path ~ video) | replace(from="/" ~ page.lang ~ "/", to="/") %} + {%- else %} + {%- set metapath = pagepath ~ path ~ video %} + {%- endif %} + {%- set meta = get_image_metadata(path=metapath) %} + {%- set w = meta.width %} + {%- set h = meta.height %} + {%- endif %} + + {%- elif src is starting_with(pat="/") %}{# Root Path #} + {%- set rootpath = (src | split(pat="/"))[:-1] | join(sep="/") -%} + {%- set path = (config.base_url if config else "") ~ rootpath ~ "/" %} + {%- if not w or not h %} + {%- set metapath = rootpath ~ "/" ~ video %} + {%- set meta = get_image_metadata(path=metapath) %} + {%- set w = meta.width %} + {%- set h = meta.height %} + {%- endif %} + + {%- else %}{# Same Directory Path #} + {%- set path = "" %} + {%- if not w or not h %} + {%- if page.lang != config.default_language %} + {%- set metapath = (pagepath ~ video) | replace(from="/" ~ page.lang ~ "/", to="/") %} + {%- else %} + {%- set metapath = pagepath ~ video %} + {%- endif %} + {%- set meta = get_image_metadata(path=metapath) %} + {%- set w = meta.width %} + {%- set h = meta.height %} + {%- endif %} + + {%- endif %} + + {%- set type = src | split(pat=".") | last %} + {%- if type is matching(pat="^mov$") %}{%- set type = "quicktime" %}{% endif %} + {%- if loop.last %} + {%- if not alt %} + {%- set alt = video | split(pat=".") | first %} + {%- endif %} + {{ alt }} + {%- else %} + + {%- endif %} + {%- endfor %} + +{%- if caption %}
{{caption}}
{% endif %} + +{% endcomponent image %} -- cgit v1.3.1