413
|
1 {% if not embedded %}{% extends 'base/base.html' %}{% endif %} |
230
|
2 |
|
3 {% macro generate_forums(forums_data, level=0) %} |
413
|
4 <div class="forum-list"> |
|
5 {% for forum in forums_data %} |
|
6 <div class="forum-item mb-4"> |
|
7 {% if forum.forum_type == "main_category" %} |
|
8 |
|
9 {# Main Categories #} |
|
10 <div class="forum-category box has-background-primary"> |
|
11 <div class="media {% if level == 0 %}is-aligned-center{% else %}is-aligned-left{% endif %}"> |
|
12 <div class="media-left"> |
|
13 <span class="icon {% if level == 0 %}is-large{% else %}is-medium{% endif %} has-text-white"> |
|
14 <i class="fas fa-layer-group {% if level == 0 %}fa-2x{% endif %}"></i> |
|
15 </span> |
|
16 </div> |
|
17 <div class="media-content"> |
|
18 {% if 'http_url' in forum %} |
|
19 <a href="{{ forum.http_url }}" class="has-text-white"> |
|
20 {% endif %} |
|
21 <h3 class="title {% if level == 0 %}is-3{% else %}is-4{% endif %} has-text-white"> |
|
22 {{ forum.title }} |
|
23 </h3> |
|
24 {% if forum.description %} |
|
25 <p class="subtitle is-5 has-text-white-bis">{{ forum.description }}</p> |
|
26 {% endif %} |
|
27 {% if 'http_url' in forum %} |
|
28 </a> |
230
|
29 {% endif %} |
413
|
30 </div> |
|
31 {% if level == 0 %} |
|
32 <div class="media-right"> |
|
33 <span class="tag is-light is-medium"> |
|
34 <span class="icon"><i class="fas fa-folder"></i></span> |
|
35 <span>{{ forum.children|length }} Forums</span> |
|
36 </span> |
|
37 </div> |
|
38 {% endif %} |
|
39 </div> |
|
40 </div> |
|
41 |
|
42 {% if forum.children %} |
|
43 <div class="forum-children pl-5 pr-3 mt-2"> |
|
44 {{ generate_forums(forum.children, level+1) }} |
|
45 </div> |
|
46 {% endif %} |
|
47 |
|
48 {% else %} |
|
49 |
|
50 {# Subcategories #} |
|
51 <a {% if 'http_url' in forum %}href="{{ forum.http_url }}"{% endif %} |
|
52 class="forum-subcategory box is-hoverable"> |
|
53 <div class="media"> |
|
54 <div class="media-left"> |
|
55 <span class="icon is-medium has-text-primary"> |
|
56 <i class="fas fa-folder fa-2x"></i> |
|
57 </span> |
|
58 </div> |
|
59 <div class="media-content"> |
|
60 <div class="content"> |
|
61 <strong class="title is-4 mb-1">{{ forum.title }}</strong> |
|
62 {% if forum.description %} |
|
63 <p class="subtitle is-6 has-text-grey">{{ forum.description }}</p> |
|
64 {% endif %} |
230
|
65 </div> |
413
|
66 <div class="forum-stats"> |
|
67 {% if 'nb_items' in forum %} |
|
68 <span class="tag is-light is-rounded"> |
|
69 <span class="icon"><i class="fas fa-comment"></i></span> |
|
70 <span>{{ forum.nb_items }} Topics</span> |
|
71 </span> |
|
72 {% endif %} |
|
73 {% if forum.last_activity %} |
|
74 <span class="tag is-light is-rounded ml-2"> |
|
75 <span class="icon"><i class="fas fa-clock"></i></span> |
|
76 <span>{{ forum.last_activity|date_fmt('short', tz_name=tz_name)}}</span> |
|
77 </span> |
|
78 {% endif %} |
|
79 </div> |
|
80 </div> |
|
81 <div class="media-right"> |
|
82 {% if 'http_url' in forum %} |
|
83 <span class="icon has-text-info"> |
|
84 <i class="fas fa-chevron-right"></i> |
|
85 </span> |
|
86 {% endif %} |
|
87 </div> |
|
88 </div> |
|
89 </a> |
|
90 {% endif %} |
|
91 </div> |
|
92 {% endfor %} |
|
93 </div> |
230
|
94 {% endmacro %} |
|
95 |
|
96 {% block body %} |
413
|
97 <div class="container forums px-4 py-2"> |
|
98 {% if not forums %} |
|
99 <div class="message is-info"> |
|
100 <div class="message-body has-text-centered"> |
|
101 <span class="icon is-large mb-3"> |
|
102 <i class="fas fa-comments fa-2x"></i> |
|
103 </span> |
|
104 <h3 class="title is-4">{% trans %}No forums found{% endtrans %}</h3> |
|
105 <p class="subtitle is-6">{% trans %}You may ask your service administrator to create some.{% endtrans %}</p> |
|
106 </div> |
|
107 </div> |
|
108 {% else %} |
|
109 {{ generate_forums(forums) }} |
|
110 {% endif %} |
|
111 </div> |
230
|
112 {% endblock body %} |