view sat_templates/templates/default/forum/overview.html @ 295:1de599c5a68f

bulma (base): loading screen: when the `loading_screen` variable is set before extending `base/base.html`, a loading modal is shown (and must be removed via JavaScript). This avoids the user to try to use an interface which is not reactive or working normally because JS is not fully loaded yet.
author Goffi <goffi@goffi.org>
date Fri, 27 Nov 2020 12:24:03 +0100
parents e9f0a4215e46
children
line wrap: on
line source

{% extends 'base/base.html' %}

{% macro generate_forums(forums_data, level=0) %}
    {% set panel_type = "main" if level==0 else "sub" %}
    <ul class="forum forum__panel_{{panel_type}}">
    {% for forum in forums_data %}
        <li class="forum forum__cat_{{panel_type}} forum__level_{{level}}">
            {% if 'http_url' in forum %}
                <a href="{{forum['http_url']}}" class="forum_active">
            {% else %}
                <a>
            {% endif %}
                <span class="forum_title">{{ forum.title }}</span>
                {% if 'short-desc' in forum %}
                    <p class="forum_short-desc">{{ forum['short-desc'] }}</p>
                {% endif %}
            </a>

            {% if 'sub-forums' in forum %}
                {{ generate_forums(forum['sub-forums'], level=level+1) }}
            {% endif %}
        </li>
    {% endfor %}
    </ul>
{% endmacro %}

{% block body %}
{% if not forums %}
    <p class="message--info">{% trans %}No forums found on this server!{% endtrans %}</p>
{% else %}
    <div class="forums">
        {{ generate_forums(forums) }}
    </div>
{% endif %}
{% endblock body %}