diff --git a/templates/_nav.html b/templates/_nav.html index 1188b5d..3bfda07 100644 --- a/templates/_nav.html +++ b/templates/_nav.html @@ -3,8 +3,9 @@ {% set sec = get_section(path=sec) %} {% set maxlevel = hierarchy | length %} + {# Ici on regarde si toutes les sous-sections et pages contenues ont #} - {# une variable weight_custom #} + {# une variable weight_custom. Au passage on note ces poids. #} {% set temoin = true %} {% set liste = [] %} {% if sec.subsections %} @@ -13,7 +14,7 @@ {% if not s_temp.extra.weight_custom %} {% set_global temoin = false %} {% else %} - {% set_global liste = liste | concat(with=s_temp) %} + {% set_global liste = liste | concat(with=s_temp.extra.weight_custom) %} {% endif %} {% endfor %} {% endif %} @@ -22,25 +23,62 @@ {% if not p.extra.weight_custom %} {% set_global temoin = false %} {% else %} - {% set_global liste = liste | concat(with=p) %} + {% set_global liste = liste | concat(with=p.extra.weight_custom) %} {% endif %} {% endfor %} {% endif %} + {# Si toutes les sous-sections et pages ont une variable weight_custom, #} {# on classe selon elle. Sinon, on utilise la méthode classique. #} {% if temoin %} - // classer ici - - - - - - - - - - + {% set_global liste = liste | sort %} + {% for x in liste %} + {% if sec.subsections %} + {% for y in sec.subsections %} + {% set p = get_section(path=y) %} + {% if p.extra.weight_custom == x %} +
+ {% if p.subsections or p.pages %} + {% if p.path == current.path %} + {{ p.title }} + {% elif hierarchy is containing(y) %} + ‣ {{ p.title }} + {% else %} + ‣ {{ p.title }} + {% endif %} + {% if hierarchy is containing(y) or current.path == p.path %} + {% if level + 1 < maxlevel %} + + {% endif %} + {% endif %} + {% else %} + {% if p.path == current.path %} + {{ p.title }} + {% else %} + {{ p.title }} + {% endif %} + {% endif %} +
+ {% endif %} + {% endfor %} + {% endif %} + {% if sec.pages %} + {% for p in sec.pages %} + {% if p.extra.weight_custom == x %} +
+ {% if p.path == current.path %} + {{ p.title }} + {% else %} + {{ p.title }} + {% endif %} +
+ {% endif %} + {% endfor %} + {% endif %} + {% endfor %} {% else %} {% if sec.subsections %} {% for s in sec.subsections %}