{%- macro section_news(s, lang) -%} {{ cards.cards_from_pages(pages_modified[lang], max=s.num|d(None)) }} {%- endmacro -%} {%- macro section_relevant(s, lang) -%} {{ cards.cards_from_pages(relevant_pages[lang], max=s.num|d(None)) }} {%- endmacro -%} {%- macro section_iframe(s, lang) -%} {%- endmacro -%} {%- macro section_tag(s, lang, header_level, in_footer=false) -%} {%- set title_mode = s.title_mode|d("normal") -%} {%- if s.title is not defined and title_mode != "prevent" -%} {{ common.render_header(s.tag.title, header_level, {"id": s.id}, lang, visuallyhidden=(title_mode == "hidden"), in_footer=in_footer) }} {%- endif -%} {%- if s.tag.page -%} {%- if 'before' in s.tag.page.metadata -%} {{ sections(s.tag.page.metadata.before, lang, header_level + 1, in_footer=in_footer) }} {%- endif -%} {{ content_renderer.render_content(s.tag.page, lang, header_level - 1, in_footer=in_footer) }} {%- endif -%} {{ cards.cards_from_pages(s.tag.pages, lang, max=s.num|d(None)) }} {%- if s.tag.page -%} {%- if 'after' in s.tag.page.metadata -%} {{ sections(s.tag.page.metadata.after, lang, header_level + 1, in_footer=in_footer) }} {%- endif -%} {%- endif -%} {%- endmacro -%} {%- macro section_page(s, lang, header_level, in_footer=false) -%} {%- set title_mode = s.title_mode|d("normal") -%} {%- if s.title is not defined and title_mode != "prevent" -%} {{ common.render_header(s.page.title, header_level, {"id": s.id}, lang, visuallyhidden=(title_mode == "hidden"), in_footer=in_footer) }} {%- endif -%} {%- if 'before' in s.page.metadata -%} {{ sections(s.page.metadata.before, lang, header_level + 1, in_footer=in_footer) }} {%- endif -%} {{ content_renderer.render_content(s.page, lang, header_level - 1, in_footer=in_footer) }} {%- if 'after' in s.page.metadata -%} {{ sections(s.page.metadata.after, lang, header_level + 1, in_footer=in_footer) }} {%- endif -%} {%- endmacro -%} {%- macro section(s, lang, header_level, in_footer=false) -%} {%- set title_mode = s.title_mode|d("normal") -%} {%- if s.title is defined and title_mode != "prevent" -%} {{ common.render_header(s.title[lang], header_level, {"id": s.id}, lang, visuallyhidden=(title_mode == "hidden"), in_footer=in_footer) }} {%- endif -%} {%- if s.type == "page" -%} {{ section_page(s, lang, header_level, in_footer) }} {%- elif s.type == "tag" -%} {{ section_tag(s, lang, header_level, in_footer) }} {%- elif s.type == "news" -%} {{ section_news(s, lang) }} {%- elif s.type == "iframe" -%} {{ section_iframe(s, lang) }} {%- elif s.type == "relevant" -%} {{ section_relevant(s, lang) }} {%- else -%}
ERROR: render.section: Unknown section type: {{ s.type|e }}

{%- endif -%} {%- endmacro -%} {%- macro sections(sl, lang, header_level, in_footer=false) -%} {%- for s in sl -%}
{{ section(s, lang, header_level, in_footer=in_footer) }}
{%- endfor -%} {%- endmacro -%}