From 4a9479325f07b1f73673cf95c1891229de9450dc Mon Sep 17 00:00:00 2001
From: Jieiku
Date: Sun, 20 Aug 2023 05:09:30 -0700
Subject: Fix image shortcodes, get_image_metadata()
---
templates/shortcodes/img.html | 34 +++++++++++---------
templates/shortcodes/imgswap.html | 68 ++++++++++++++++++++++-----------------
2 files changed, 57 insertions(+), 45 deletions(-)
(limited to 'templates/shortcodes')
diff --git a/templates/shortcodes/img.html b/templates/shortcodes/img.html
index f23f783..a5a0541 100644
--- a/templates/shortcodes/img.html
+++ b/templates/shortcodes/img.html
@@ -1,30 +1,34 @@
+{%- set img = src | split(pat="/") | last %}
{%- set dirtest = src | trim_start_matches(pat="./") %}
-{%- if dirtest is containing("/") %}
- {%- set reldir = true %}
-{%- endif %}
+{%- if dirtest is containing("/") %} {%- set reldir = true %} {%- endif %}
{%- if src is starting_with("./") and reldir %} {# Relative Path #}
{%- set path = src | trim_start_matches(pat="./") | split(pat="/") | slice(end=-1) | join(sep="/") | trim_start_matches(pat="/") %}
- {%- set path = path ~ "/" %}
+ {%- set path = path ~ "/" %}
+ {%- if not w or not h %}
+ {%- set meta = get_image_metadata(path=page.path ~ path ~ img) %}
+ {%- set w = meta.width %}
+ {%- set h = meta.height %}
+ {%- endif %}
{%- elif src is starting_with("/") %} {# Root Path #}
{%- set rootpath = src | split(pat="/") | slice(end=-1) | join(sep="/") %}
{%- set path = config.base_url ~ rootpath ~ "/" %}
+ {%- if not w or not h %}
+ {%- set meta = get_image_metadata(path=rootpath ~ "/" ~ img) %}
+ {%- set w = meta.width %}
+ {%- set h = meta.height %}
+ {%- endif %}
{%- else %} {# Same Directory Path #}
- {%- set path = "" %}
-
+ {%- set path = page.path %}
+ {%- if not w or not h %}
+ {%- set meta = get_image_metadata(path=page.path ~ img) %}
+ {%- set w = meta.width %}
+ {%- set h = meta.height %}
+ {%- endif %}
{%- endif %}
-{%- if not w or not h %}
- {%- set metafile = page.path ~ path ~ src %}
- {%- set meta = get_image_metadata(path=metafile) %}
- {%- set w = meta.width %}
- {%- set h = meta.height %}
-{%- endif %}
-
-{%- set img = src | split(pat="/") | last %}
-
{%- if not alt %}
{%- set alt = img | split(pat=".") | first %}
{%- endif %}
diff --git a/templates/shortcodes/imgswap.html b/templates/shortcodes/imgswap.html
index 4397b29..e92d1bc 100644
--- a/templates/shortcodes/imgswap.html
+++ b/templates/shortcodes/imgswap.html
@@ -1,63 +1,71 @@
+ {%- set img = main_src | split(pat="/") | last %}
{%- set dirtest = main_src | trim_start_matches(pat="./") %}
- {%- if dirtest is containing("/") %}
- {%- set reldir = true %}
- {%- endif %}
+ {%- if dirtest is containing("/") %} {%- set reldir = true %} {%- 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 ~ "/" %}
+ {%- set path = path ~ "/" %}
+ {%- if not w or not h %}
+ {%- set meta = get_image_metadata(path=page.path ~ path ~ img) %}
+ {%- 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 meta = get_image_metadata(path=rootpath ~ "/" ~ img) %}
+ {%- set w = meta.width %}
+ {%- set h = meta.height %}
+ {%- endif %}
{%- else %} {# Same Directory Path #}
- {%- set path = "" %}
-
+ {%- set path = page.path %}
+ {%- if not w or not h %}
+ {%- set meta = get_image_metadata(path=page.path ~ img) %}
+ {%- set w = meta.width %}
+ {%- set h = meta.height %}
+ {%- endif %}
{%- endif %}
- {%- if not w or not h %}
- {%- set metafile = page.path ~ path ~ main_src %}
- {%- set meta = get_image_metadata(path=metafile) %}
- {%- set w = meta.width %}
- {%- set h = meta.height %}
- {%- endif %}
-
- {%- set img = main_src | split(pat="/") | last %}
-
{%- if not alt %}
{%- set alt = img | split(pat=".") | first %}
{%- endif %}

+ {%- set img = swap_src | split(pat="/") | last %}
{%- set dirtest = swap_src | trim_start_matches(pat="./") %}
- {%- if dirtest is containing("/") %}
- {%- set reldir = true %}
- {%- endif %}
+ {%- 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 ~ "/" %}
+ {%- set path = path ~ "/" %}
+ {%- if not w or not h %}
+ {%- set meta = get_image_metadata(path=page.path ~ path ~ img) %}
+ {%- 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 meta = get_image_metadata(path=rootpath ~ "/" ~ img) %}
+ {%- set w = meta.width %}
+ {%- set h = meta.height %}
+ {%- endif %}
{%- else %} {# Same Directory Path #}
- {%- set path = "" %}
-
+ {%- set path = page.path %}
+ {%- if not w or not h %}
+ {%- set meta = get_image_metadata(path=page.path ~ img) %}
+ {%- set w = meta.width %}
+ {%- set h = meta.height %}
+ {%- endif %}
{%- endif %}
- {%- if not w or not h %}
- {%- set metafile = page.path ~ path ~ swap_src %}
- {%- set meta = get_image_metadata(path=metafile) %}
- {%- set w = meta.width %}
- {%- set h = meta.height %}
- {%- endif %}
-
- {%- set img = swap_src | split(pat="/") | last %}
-
{%- if not alt %}
{%- set alt = img | split(pat=".") | first %}
{%- endif %}
--
cgit v1.3.1