macros.html 4.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. {% load i18n %}
  2. {% macro page_title(title='', parent='', page=0) -%}
  3. {% if title %}{{ title }}{% if page > 1 %} | {% trans page=page %}Page {{ page }}{% endtrans %}{% endif %} | {% if parent %}{{ parent }} | {% endif %}{% endif %}{{ settings.board_name }}
  4. {%- endmacro %}
  5. {# Guest avatar #}
  6. {% macro avatar_guest(size=None) -%}
  7. {{ STATIC_URL }}avatars/{% if size %}{{ size }}_{% endif %}avatar_guest.jpg
  8. {%- endmacro %}
  9. {# Messages list macro #}
  10. {% macro messages_list(messages) %}{% if messages %}<div class="alerts-list">{% for message in messages %}
  11. {{ draw_message(message) }}
  12. {% endfor %}</div>{% endif %}
  13. {% endmacro %}
  14. {# Render single message #}
  15. {% macro draw_message(message, class='') %}
  16. <div class="alert alert-{{ message.type }}{% if class %} {{ class }}{% endif %}">
  17. {{ draw_message_icon(message) }} <p><strong>{{ message.message }}</strong></p>
  18. </div>
  19. {%- endmacro %}
  20. {# Render single message #}
  21. {% macro draw_message_icon(message) -%}
  22. <div class="alert-icon"><span><i class="icon-{% if message.type == 'error' -%}remove
  23. {%- elif message.type == 'success' -%}ok
  24. {%- elif message.type == 'info' -%}info-sign
  25. {%- else -%}warning-sign
  26. {%- endif %} icon-white"></i></span></div>
  27. {%- endmacro %}
  28. {# Render forums list #}
  29. {% macro draw_forums(category, width=12) %}
  30. {% if category.template != 'row' %}
  31. <div class="row">
  32. {% for forum in category.subforums %}
  33. {{ draw_forum(category, forum, width) }}
  34. {% if not loop.last and ((category.template == 'half' and loop.index is even()) or (category.template == 'quad' and loop.index is divisibleby(4))) %}
  35. </div>
  36. <div class="row">
  37. {% endif %}
  38. {% endfor %}
  39. </div>
  40. {% else %}
  41. {% for forum in category.subforums %}
  42. {{ draw_forum(category, forum, width) }}
  43. {% endfor %}
  44. {% endif %}
  45. {% endmacro %}
  46. {# Render forum on list #}
  47. {% macro draw_forum(category, forum, width=12) %}
  48. <div{% if category.template != 'row' %} class="span{% if category.template == 'half' %}{{ widthratio(50, 100, width) }}{% elif category.template == 'quarter' %}{{ widthratio(25, 100, width) }}{% endif %}"{% endif %}>
  49. <div class="well well-forum{% if forum.style %} {{ forum.style }}{% endif %}">
  50. <div class="forum-icon {% if forum.type == 'redirect' %} redirect-icon{% elif not forum.is_read %} forum-new{% endif %}"><i class="icon-{% if forum.type == 'redirect' %}circle-arrow-right{% else %}comment{% endif %} icon-white"></i></div>
  51. <div class="forum-details">
  52. <div class="pull-left">
  53. <h3><a href="{{ forum.type|url(slug=forum.slug, forum=forum.id) }}"{% if forum.type != 'redirect' and forum.is_read %} class="read-forum"{% endif %}>{{ forum.name }}</a></h3>
  54. {% if forum.description %}<div class="muted">{{ forum.description }}</div>{% endif %}
  55. </div>
  56. {% if category.show_details and category.template != 'quarter' %}
  57. {% if forum.type == 'redirect' %}
  58. <div class="pull-right forum-stat stat-redirects">
  59. <span class="stat {% if forum.redirects_delta > 0 %}positive{% else %}stag{% endif %}">{% if forum.redirects_delta > 0 %}+{{ forum.redirects_delta }}{% else %}{{ forum.redirects }}{% endif %}</span> <span class="muted">{% trans %}clicks{% endtrans %}</span>
  60. </div>
  61. {% else %}
  62. <div class="pull-right forum-stat stat-posts">
  63. <span class="stat {% if forum.posts_delta > 0 %}positive{% else %}stag{% endif %}">{% if forum.posts_delta > 0 %}+{{ forum.posts_delta }}{% else %}{{ forum.posts }}{% endif %}</span> <span class="muted">{% trans %}posts{% endtrans %}</span>
  64. </div>
  65. {% if category.template != 'half' %}
  66. <div class="pull-right forum-stat stat-threads">
  67. <span class="stat {% if forum.threads_delta > 0 %}positive{% else %}stag{% endif %}">{% if forum.threads_delta > 0 %}+{{ forum.threads_delta }}{% else %}{{ forum.threads }}{% endif %}</span> <span class="muted">{% trans %}threads{% endtrans %}</span>
  68. </div>
  69. {% endif %}
  70. {% endif %}
  71. {% endif %}
  72. </div>
  73. </div>
  74. </div>
  75. {% endmacro %}