{# NOTE: Many of these macros are single argument so they can be passed around and called, e.g. other macros. #} {% macro apply_classes(classes) -%} {# Apply css classes inside an element. Usage:
#} {% for css in classes %}{{ css }} {% endfor %} {%- endmacro %} {% macro apply_dattrs(data_attrs) -%} {# Apply data-attributes inside an element. Usage:
As a dictionary:
#} {% if data_attrs is mapping %} {% for attr, val in data_attrs.items() %}data-{{ attr|camel2hyphen }}='{{ val }}' {% endfor %} {% else %} {% for attr in data_attrs %}data-{{ attr }} {% endfor %} {% endif %} {%- endmacro %} {%- macro ip_link(ipaddr) %} {{ ipaddr }} {% endmacro -%} {%- macro simpleurl(link, link_text='View url', blank=True) %} {% if not link.startswith('http') %} {% set link = 'http://%s'|format(link) %} {% endif %} {{ link_text }} {% endmacro -%} {%- macro boolean_icon_display(boolval) %} {% if boolval %} {% else %} {% endif %} {% endmacro -%} {%- macro titleize(val) %} {{ underscore2space(val)|capitalize }} {% endmacro -%} {%- macro underscore2space(val) %} {{ val|replace('_', ' ') }} {% endmacro -%} {%- macro hyphen2space(val) %} {{ val|replace('-', ' ') }} {% endmacro -%} {%- macro dot2space(val) %} {{ val|replace('.', ' ') }} {% endmacro -%} {%- macro remove_parens(val) %} {{ val|replace('(', '')|replace(')', '') }} {% endmacro -%} {%- macro remove_brackets(val) %} {{ val|replace('[', '')|replace(']', '') }} {% endmacro -%} {%- macro remove_braces(val) %} {{ val|replace('{', '')|replace('}', '') }} {% endmacro -%}