97 lines
4.2 KiB
HTML
97 lines
4.2 KiB
HTML
<div class="img-swap-div">
|
|
{%- set img = main_src | split(pat="/") | last %}
|
|
{%- set dirtest = main_src | trim_start_matches(pat="./") %}
|
|
{%- if dirtest is containing("/") %} {%- set reldir = true %} {%- endif %}
|
|
{%- if page.path %}{%- set pagepath = page.path %}{%- elif section.path %}{%- set pagepath = section.path %}{%- endif %}
|
|
|
|
{%- if main_src is starting_with("./") and reldir %} {# Relative Path #}
|
|
{%- set path = main_src | trim_start_matches(pat="./") | split(pat="/") | slice(end=-1) | join(sep="/") | trim_start_matches(pat="/") %}
|
|
{%- set path = path ~ "/" %}
|
|
{%- if not w or not h %}
|
|
{%- if lang != config.default_language %}
|
|
{%- set metapath = pagepath ~ path ~ img | replace(from=pagepath | truncate(length=4, end=""), 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("/") %} {# Root Path #}
|
|
{%- set rootpath = main_src | split(pat="/") | slice(end=-1) | join(sep="/") %}
|
|
{%- set path = config.base_url ~ 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 lang != config.default_language %}
|
|
{%- set metapath = pagepath ~ img | replace(from=pagepath | truncate(length=4, end=""), 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 %}
|
|
<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" />
|
|
|
|
{%- set img = swap_src | split(pat="/") | last %}
|
|
{%- set dirtest = swap_src | trim_start_matches(pat="./") %}
|
|
{%- if dirtest is containing("/") %} {%- set reldir = true %} {%- endif %}
|
|
|
|
{%- if swap_src is starting_with("./") and reldir %} {# Relative Path #}
|
|
{%- set path = swap_src | trim_start_matches(pat="./") | split(pat="/") | slice(end=-1) | join(sep="/") | trim_start_matches(pat="/") %}
|
|
{%- set path = path ~ "/" %}
|
|
{%- if not w or not h %}
|
|
{%- if lang != config.default_language %}
|
|
{%- set metapath = pagepath ~ path ~ img | replace(from=pagepath | truncate(length=4, end=""), 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("/") %} {# Root Path #}
|
|
{%- set rootpath = swap_src | split(pat="/") | slice(end=-1) | join(sep="/") %}
|
|
{%- set path = config.base_url ~ 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 lang != config.default_language %}
|
|
{%- set metapath = pagepath ~ img | replace(from=pagepath | truncate(length=4, end=""), 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 %}
|
|
<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" />
|
|
</div>
|