_comment_div.html 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. {# section commentaire. prends en parametre un objet Story ou Epic #}
  2. {# l'objet en parametre doit avoir une propriete 'comments' et une propriete 'uuid' #}
  3. {% load martortags %}
  4. {% load commenting %}
  5. <a class="anchor" id="a-comment-section"></a>
  6. <div id="comment-section">
  7. <ul class="comment-list">
  8. {% for comment in obj.comments.all %}
  9. <li class="comment flex-col anchor" id="comment-{{ comment.id }}" data-id="{{ comment.id }}">
  10. <a class="anchor" id="a-comment-{{ comment.id }}"></a>
  11. <div class="flex-row">
  12. <span class="comment-header"><i class="fa fa-comment"></i> {{ comment.author }}, le {{ comment.created }}</span>
  13. {% if comment.author.id == user.id %}
  14. <a class="comment-edit-btn" href="" style="margin-left: 20px;"><i class="fa fa-pencil"></i></a>
  15. <a class="comment-del-btn" href="{% url 'comment_del' comment_id=comment.id %}" style="margin-left: 10px;"><i class="fa fa-trash"></i></a>
  16. {% endif %}
  17. </div>
  18. <div class="comment-display">
  19. {{ comment.content|safe_markdown }}
  20. </div>
  21. <div class="comment-edition" style="display: none;">
  22. <form action="{% url 'comment_edit' comment_id=comment.id %}" method="post" accept-charset="utf-8" enctype="multipart/form-data">
  23. {% csrf_token %}
  24. {% comment_edition_form comment as frm %}
  25. {{ frm.content_type }}
  26. {{ frm.object_id }}
  27. {{ frm.content }}
  28. <div class="flex-row flex-end flex-align-center" style="margin-top: 10px;">
  29. <a href="" class="comment-edition-cancel" style="margin-right: 20px;">Annuler</a>
  30. <input type="submit">
  31. </div>
  32. </form>
  33. </div>
  34. </li>
  35. {% endfor %}
  36. </ul>
  37. <form action="{% url 'comment_post' %}" method="post" accept-charset="utf-8" enctype="multipart/form-data" style="margin-top:4em;">
  38. {% csrf_token %}
  39. {% comment_new_form obj as frm %}
  40. {{ frm.as_p }}
  41. <div class="flex-row flex-end" style="margin-top: 10px;">
  42. <input type="submit">
  43. </div>
  44. </form>
  45. </div>
  46. <script>
  47. $(".comment-edit-btn, .comment-edition-cancel").click(function (event) {
  48. event.preventDefault();
  49. var comment_li = $(this).closest('.comment');
  50. comment_li.find('.comment-edition').toggle();
  51. comment_li.find('.comment-display').toggle();
  52. });
  53. $(".comment-del-btn").click(function (event) {
  54. if (confirm('Êtes vous sûr de vouloir supprimer le commentaire?')) {
  55. return true;
  56. }
  57. });
  58. </script>