{% extends "base.html" %} {% block content %} {%- set rows = [] %} {%- for cat, arts in categories %}{% set _ = rows.append((BBS_AREAS.get(cat|string, 99), cat, arts)) %}{% endfor %} {%- set ordered = rows|sort(attribute='0') %} {%- set half = (ordered|length + 1) // 2 %}
┌─ MESSAGE AREAS ───────────────────────┬──────────────────────────────────────┐
{%- for i in range(half) %}
{%- set a = ordered[i] %}
│ [{{ a[0] }}] {{ "%-9s"|format(a[1]|string) }} {{ "%3d"|format(a[2]|length) }} │ {% if ordered|length > i + half %}{% set b = ordered[i + half] %}[{{ b[0] }}] {{ "%-9s"|format(b[1]|string) }} {{ "%3d"|format(b[2]|length) }}{% else %} {% endif %} │{%- endfor %}
└───────────────────────────────────────┴──────────────────────────────────────┘{# GUESTBOOK is commented out of the menu until it is built; the page and its mockup stay in the tree. Restoring it means a third column here and dropping Status: draft from content/pages/guestbook.md. #}
┌─ SYSTEM ──────────────────────────────┬──────────────────────────────────────┐
│ [A] ABOUT │ [C] CONNECT │
└───────────────────────────────────────┴──────────────────────────────────────┘
┌─ LATEST ─────────────────────────────────────────────────────────────────────┐
{%- set base = BBS_AREAS|length %}
{%- for article in articles_page.object_list %}
{%- set n = base + loop.index %}
│ [{{ "%2d"|format(n) }}] {{ article.date.strftime('%d %b %y')|lower }} {{ "%-8s"|format(article.category|string) }} {{ "%-52s"|format(article.title|striptags|truncate(52, true, '')) }} │{%- endfor %}
└──────────────────────────────────────────────────────────────────────────────┘{% include 'pagination.html' %} {% endblock %}