39 lines
1.4 KiB
HTML
39 lines
1.4 KiB
HTML
{%- import "macros/colocated_asset.html" as colocated_asset -%}
|
|
|
|
{%- macro image(name, alt, colocated, height, process) -%}
|
|
{%- set name_sanitized = name | replace(from=".", to="-") | replace(from="/", to="-") -%}
|
|
{%- set image_id = "image" ~ name_sanitized -%}
|
|
|
|
{%- if colocated == true -%}
|
|
{%- set image_path = colocated_asset::colocated_asset(path=name) -%}
|
|
{%- set image_url = colocated_asset::colocated_asset(path=name, get_url=true) -%}
|
|
{%- else -%}
|
|
{%- set image_path = "/static/images/" ~ name -%}
|
|
{%- set image_url = get_url(path=image_path) -%}
|
|
{%- endif -%}
|
|
|
|
{%- if process -%}
|
|
{%- set image = resize_image(path=image_path, width=800, height=height, op="fit") -%}
|
|
{# because tera doesn't have object literals we need to deconstruct the object here so the other case is compatible #}
|
|
{%- set processed_image_url = image.url -%}
|
|
{%- else -%}
|
|
{%- set image = colocated_asset::colocated_asset(path=image_path, get_url=true) | trim -%}
|
|
{%- set processed_image_url = image_url -%}
|
|
{%- endif -%}
|
|
<div class="image">
|
|
<a href="{{ image_url }}">
|
|
<img src="{{ processed_image_url }}"
|
|
alt="{{ alt }}"
|
|
title="{{ alt }}"
|
|
{% if label %}
|
|
aria-describedby="{{ image_id }}"
|
|
{% endif %}
|
|
>
|
|
</a>
|
|
{% if label %}
|
|
<span class="image-label" id="{{ image_id }}">
|
|
{{ label }}
|
|
</span>
|
|
{% endif %}
|
|
</div>
|
|
{%- endmacro image -%}
|