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') 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