aboutsummaryrefslogtreecommitdiff
path: root/templates/components/imgswap.html
diff options
context:
space:
mode:
authorJieiku2026-08-14 15:10:15 -0700
committerJieiku2026-08-14 15:10:15 -0700
commitc2d72e09747a2a4abe9602e1ba49a1b4649c9d3c (patch)
tree51a272ef184752e27bb70c07e4726dbdbbe6e237 /templates/components/imgswap.html
parentd52609f456f233ec0845c8a57a1e27583f0813ad (diff)
downloadabridge-c2d72e09747a2a4abe9602e1ba49a1b4649c9d3c.tar.gz
abridge-c2d72e09747a2a4abe9602e1ba49a1b4649c9d3c.tar.bz2
abridge-c2d72e09747a2a4abe9602e1ba49a1b4649c9d3c.zip
Update for Zola 0.23.3
Diffstat (limited to 'templates/components/imgswap.html')
-rw-r--r--templates/components/imgswap.html103
1 files changed, 103 insertions, 0 deletions
diff --git a/templates/components/imgswap.html b/templates/components/imgswap.html
new file mode 100644
index 0000000..b260615
--- /dev/null
+++ b/templates/components/imgswap.html
@@ -0,0 +1,103 @@
+{% component imgswap(page, config, main_src, swap_src, caption="", class="", alt="", w=0, h=0) %}
+<div class="img-swap-div">
+ {%- set img = main_src | split(pat="/") | last %}
+ {%- set dirtest = main_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 main_src is starting_with(pat="./") and reldir %} {# Relative Path #}
+ {%- set path = (main_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 ~ img) | replace(from="/" ~ page.lang ~ "/", to="/") %}
+ {%- else %}
+ {%- set metapath = pagepath ~ path ~ img %}
+ {%- endif %}
+ {%- set meta = get_image_metadata(path=metapath) %}
+ {%- set w = meta.width %}
+ {%- set h = meta.height %}
+ {%- endif %}
+
+ {%- elif main_src is starting_with(pat="/") %} {# Root Path #}
+ {%- set rootpath = (main_src | split(pat="/"))[:-1] | join(sep="/") -%}
+ {%- set path = (config.base_url if config else "") ~ rootpath ~ "/" %}
+ {%- if not w or not h %}
+ {%- set metapath = rootpath ~ "/" ~ img %}
+ {%- 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 ~ img) | replace(from="/" ~ page.lang ~ "/", to="/") %}
+ {%- else %}
+ {%- set metapath = pagepath ~ img %}
+ {%- endif %}
+ {%- set meta = get_image_metadata(path=metapath) %}
+ {%- set w = meta.width %}
+ {%- set h = meta.height %}
+ {%- endif %}
+ {%- endif %}
+
+ {%- if not alt %}
+ {%- set alt = img | split(pat=".") | first %}
+ {%- endif %}
+ {%- if caption %}<figure class="fi{% if class %} {{class}}{% endif %}">{% endif %}
+ {%- if link %}<a href="{{link | safe}}">{% endif %}<img src="{{ path | safe }}{{ img | safe }}" class="img-main{% if class %} {{class}}{% endif %}"{% if alt %} alt="{{alt}}"{% endif %}{% if w %} width="{{w}}"{% endif %}{% if h %} height="{{h}}"{% endif %} loading="lazy" />{% if link %}</a>{% endif %}
+ {%- if caption %}<figcaption>{{caption}}</figcaption></figure>{%- endif %}
+
+ {%- set img = swap_src | split(pat="/") | last %}
+ {%- set dirtest = swap_src | trim_start(pat="./") %}
+ {%- if dirtest is containing(pat="/") %} {%- set reldir = true %} {%- endif %}
+
+ {%- if swap_src is starting_with(pat="./") and reldir %} {# Relative Path #}
+ {%- set path = (swap_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 ~ img) | replace(from="/" ~ page.lang ~ "/", to="/") %}
+ {%- else %}
+ {%- set metapath = pagepath ~ path ~ img %}
+ {%- endif %}
+ {%- set meta = get_image_metadata(path=metapath) %}
+ {%- set w = meta.width %}
+ {%- set h = meta.height %}
+ {%- endif %}
+
+ {%- elif swap_src is starting_with(pat="/") %} {# Root Path #}
+ {%- set rootpath = (swap_src | split(pat="/"))[:-1] | join(sep="/") -%}
+ {%- set path = (config.base_url if config else "") ~ rootpath ~ "/" %}
+ {%- if not w or not h %}
+ {%- set metapath = rootpath ~ "/" ~ img %}
+ {%- 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 ~ img) | replace(from="/" ~ page.lang ~ "/", to="/") %}
+ {%- else %}
+ {%- set metapath = pagepath ~ img %}
+ {%- endif %}
+ {%- set meta = get_image_metadata(path=metapath) %}
+ {%- set w = meta.width %}
+ {%- set h = meta.height %}
+ {%- endif %}
+ {%- endif %}
+
+ {%- if not alt %}
+ {%- set alt = img | split(pat=".") | first %}
+ {%- endif %}
+ {%- if caption %}<figure class="fi{% if class %} {{class}}{% endif %}">{% endif %}
+ {%- if link %}<a href="{{link | safe}}">{% endif %}<img src="{{ path | safe }}{{ img | safe }}" class="img-swap{% if class %} {{class}}{% endif %}"{% if alt %} alt="{{alt}}"{% endif %}{% if w %} width="{{w}}"{% endif %}{% if h %} height="{{h}}"{% endif %} loading="lazy" />{% if link %}</a>{% endif %}
+ {%- if caption %}<figcaption>{{caption}}</figcaption></figure>{%- endif %}
+</div>
+
+{% endcomponent imgswap %}