echoip-slatecave/templates/helpers.html
2023-02-25 18:32:09 +01:00

39 lines
1.7 KiB
HTML

{% macro place_dl(place, label="", iso_code_prefix="") -%}
{%- if place -%}
{%- if format=="text/html" %}
{% if label %}<dt>{{label}}</dt>{% endif %}
<dd>{{place.name}} {% if place.iso_code%}({% if iso_code_prefix %}{{iso_code_prefix}}-{% endif %}{{place.iso_code}}){% endif %}</dd>
{% else -%}
* {% if label %}{{label}}: {% endif %}{{place.name}}{% if place.iso_code%} ({% if iso_code_prefix %}{{iso_code_prefix}}-{% endif %}{{place.iso_code}}){% endif %}
{% endif -%}
{%- endif -%}
{%- endmacro place_dl %}
{% macro dig_link(extra, name) %}
{{ extra.base_url }}/dig/{{ name | trim_end_matches(pat=".") | urlencode_strict | replace(from="%2e", to=".") | safe }}
{% endmacro dig_link %}
{% macro dig(extra, name, fqdn=false, prefix="") %}
<a href="{{ self::dig_link(extra=extra, name=name) }}">{% if prefix %}{{ prefix }} {% endif %}{% if fqdn or name=="." %}{{ name }}{% else %}{{ name | trim_end_matches(pat=".") }}{% endif %}</a>
{% endmacro dig %}
{% macro ip(extra, ip) %}
<a href="{{ extra.base_url }}/ip/{{ ip | urlencode_strict | replace(from="%2e", to=".") | replace(from="%3a", to=":") | safe }}"><code>{{ ip }}</code></a>
{% endmacro dig %}
{% macro breadcrumb_domain(extra, name) %}
{% set_global dot = "" %}
{% set crumbs = name | split(pat=".") %}
{% set_global i = 0 %}
{% for crumb in crumbs %}
{{-dot}}<a href="{{self::dig_link(extra=extra, name=crumbs | slice(start=i) | join(sep="."))}}">{{crumb}}</a>
{%- set_global dot = "." -%}
{%- set_global i = i+1 -%}
{% endfor %}
{% endmacro breadcrumb_domain %}
{% macro ip_info(ip_info) -%}
{{ip_info.scope | title}} {{ip_info.cast | title}} IPv{% if ip_info.is_v6_address %}6{% else %}4{% endif %}
{%- endmacro ip_info %}