view default/blog/articles.html @ 30:69a2e3bf5e17

blog/item: if item is not in same language as current locale, item is hidden but will be shown on click.
author Goffi <goffi@goffi.org>
date Sat, 24 Jun 2017 20:27:12 +0200
parents 8fa2fd2e928e
children f371bc50ea45
line wrap: on
line source

{% if not embedded %}{% extends 'base/base.html' %}{% endif %}
{% import 'input/comment.html' as comment %}

{% macro show_items(items, comments=False) %}
    {# show items and comments items if present after each item,
       then post form if allow_commenting is set #}
    {% for item in items %}
        {% if not comments %}<div class="main_article">{% endif %}
            {% include 'blog/item.html' %}
        {% if not comments %}</div>{% endif %}

        {# we recursively display comments for all comments nodes (usually there's only one) #}
        {% for comments_items in item.comments_items_list %}
            <button class="comments_btn" onclick="document.getElementById('{{comments_panel|next_gidx}}').classList.toggle('show')">{% trans %}show comments{% endtrans %} ({{comments_items|count}})</button>
            <div id="{{comments_panel|cur_gidx}}" class="comments_panel">
                {% if allow_commenting %}
                    <div class="comment_post">
                        {{ comment.comment(service=comments_items.service, node=comments_items.node) }}
                    </div>
                {% endif %}

                <div class="comments">
                    {{show_items(comments_items, comments=True)}}
                </div>
            </div>

        {% endfor %}

    {% endfor %}
{% endmacro %}

{% block body %}
<div id="blog_items">
    {{ show_items(items) }}
</div>
{% endblock body %}