1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
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 %}
|