/solace/templates/kb/topic.html

https://bitbucket.org/charlenopires/solace · HTML · 47 lines · 47 code · 0 blank · 0 comment · 0 complexity · 01d49769c66030621fdf281912d39322 MD5 · raw file

  1. {% extends 'layout.html' %}
  2. {% from '_helpers.html' import render_user %}
  3. {% from 'kb/_editor.html' import render_editor %}
  4. {% from 'kb/_boxes.html' import render_reply, render_vote_box, render_tags,
  5. render_meta_box, render_actions_box,
  6. render_plain_comment_box %}
  7. {% set page_title = topic.title %}
  8. {% block html_head %}
  9. {{ super() }}
  10. <link rel="alternate" href="{{ url_for(topic, action='feed') }}" type="application/atom+xml">
  11. {%- endblock %}
  12. {% block body %}
  13. <h1>{{ topic.title|e }}</h1>
  14. <div class="question{% if topic.is_deleted %} deleted_question{% endif %}">
  15. {{ render_vote_box(topic.question, request.user) }}
  16. <div class="text">
  17. {{ topic.question.rendered_text }}
  18. </div>
  19. {{ render_tags(topic.tags) }}
  20. {{ render_actions_box(topic.question, request.user) }}
  21. {{ render_plain_comment_box(topic.question) }}
  22. {{ render_meta_box(topic.question) }}
  23. </div>
  24. {%- set replies = topic.replies %}
  25. {%- set reply_count = replies|length %}
  26. <h2 id="replies">{% if not replies %}{{ _('Replies') }}{%
  27. else %}{{ ngettext('%d Reply', '%d Replies', reply_count)
  28. % reply_count }}{% endif %}</h2>
  29. {% if not replies %}
  30. <div class="no_replies">
  31. <h3>{{ _('Nobody has replied yet') }}</h3>
  32. {% if topic.author != request.user %}
  33. <p>{{ _('Why not be the first?') }}
  34. {% endif %}
  35. </div>
  36. {% else %}
  37. <div class="replies">
  38. {%- for reply in replies %}
  39. {{ render_reply(reply, request.user) }}
  40. {%- endfor %}
  41. </div>
  42. {% endif %}
  43. {%- if request.is_logged_in %}
  44. <h2 id="new_reply">{{ _('New Reply') }}</h2>
  45. {{ render_editor(reply_form, _('Add Reply')) }}
  46. {%- endif %}
  47. {% endblock %}