{% if currentpage.supercategory is defined %}
{% if currentpage == (pages|selectattr('supercategory', 'equalto', currentpage.supercategory)|first) %} {{ currentpage.supercategory }} {% else %} {{ currentpage.supercategory }} {% endif %}
{% elif currentpage.doc_type is defined %}
{% if currentpage == (pages|selectattr('doc_type', 'equalto', currentpage.doc_type)|first) %} {{ currentpage.doc_type }} {% else %} {{ currentpage.doc_type }} {% endif %}
{% elif currentpage.funnel is defined %}
{% if currentpage == (pages|selectattr('funnel', 'equalto', currentpage.funnel)|first) %} {{ currentpage.funnel }} {% else %} {{ currentpage.funnel }} {% endif %}
{% endif %} {% if not pages|selectattr("funnel", "equalto", currentpage.funnel)|selectattr("category", "defined")|list|length %} {% set funnelpages = pages|selectattr("funnel", "equalto", currentpage.funnel)|list %}
{% elif currentpage.supercategory is defined %}
{% for cat in categories %} {% set catpages = pages|selectattr("category", "equalto", cat)|list %} {% if currentpage.funnel is defined %} {% set catpages = catpages|selectattr("funnel", "equalto", currentpage.funnel)|list %} {% endif %} {% if currentpage.doc_type is defined %} {% set catpages = catpages|selectattr("doc_type", "equalto", currentpage.doc_type)|list %} {% endif %} {% set catpages = catpages|selectattr("supercategory", "equalto", currentpage.supercategory)|list %} {% if catpages|length %} {% set cat_parent = pages|selectattr('category', 'equalto', cat)|first %}
{% endif %} {% endfor %}
{% else %} {% set sidebar_pagelist = pages|selectattr("funnel", "equalto", currentpage.funnel)|list %} {% if currentpage.doc_type is defined %} {% set sidebar_pagelist = sidebar_pagelist|selectattr("doc_type", "equalto", currentpage.doc_type)|list %} {% endif %} {% set printed_modules = [] %}
{% for page in sidebar_pagelist %} {% if page.supercategory is defined %} {% if page.supercategory not in printed_modules %} {% set supercat = page.supercategory %} {% set supercatpages = sidebar_pagelist|selectattr("supercategory", "equalto", page.supercategory)|list %} {% if supercatpages|length %} {% set supercat_parent = supercatpages|first %} {% set _ = printed_modules.append(page.supercategory) %}
{% endif %} {% endif %} {% elif page.category is defined and page.category not in printed_modules %} {% set cat = page.category %} {% set catpages = sidebar_pagelist|selectattr("category", "equalto", page.category)|list %} {% if catpages|length %} {% set cat_parent = catpages|first %}
{% endif %} {% set _ = printed_modules.append(page.category) %} {% endif %} {% endfor %}
{% endif %}