avaaren

ячсячс

Mar 2nd, 2020
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.09 KB | None | 0 0
  1.  
  2.  
  3. {% extends 'landing/base.html' %}
  4. {% load static %}
  5.  
  6. {% block title %}Help{% endblock %}
  7. {% block content %}
  8. <link rel="stylesheet" href="{% static 'help/css/detail.css' %}" />
  9. <h1>Topics</h1>
  10. {{ topic.title }}
  11. {{ topic.topic_text }}
  12.  
  13. <button class='like-button' , data-likes='{{ topic.likes.count }}' ,
  14. data-action='{% if request.user in topic.likes.all %}un{% endif %}liked'>
  15. Like
  16. </button>
  17. <p>Total likes: <span id='like'>{{ topic.likes.count }}</span></p>
  18. <div class="comments">
  19. <form class='comment-form' action="." method="POST">
  20. <h3>Comment form</h3>
  21. {{ form.comment_text }}
  22. <input type="submit" value='Send comment'>
  23. {% csrf_token %}
  24. </form>
  25. {% for comment in topic.comments.all %}
  26. <div class="comment">
  27. <div class="comment-header">
  28. <p>#{{ comment.pk }} {{ comment.author }} {{ comment.created }}</p>
  29. </div>
  30. <div class="comment-body">
  31. <p>{{ comment.comment_text }}</p>
  32. </div>
  33. {% empty %}
  34. <p>No comments yet</p>
  35.  
  36. </div>
  37. {% endfor %}
  38.  
  39. </div>
  40.  
  41. <script src="https://code.jquery.com/jquery-3.4.1.min.js"
  42. integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
  43.  
  44. <script>$('button.like-button').click(function () {
  45. $.post(
  46. "{% url 'help:like' topic.pk %}",
  47. {
  48. csrfmiddlewaretoken: '{{ csrf_token }}'
  49. }
  50. );
  51. if ($(this).attr('data-action') == 'liked') {
  52. let previous_likes = parseInt($('#like').text());
  53. $('#like').text(previous_likes + 1);
  54. $('button.like-button').attr('data-action', $('button.like-button').attr('data-action') == 'unliked' ? 'liked' : 'unliked')
  55. }
  56. else {
  57. let previous_likes = parseInt($('#like').text());
  58. $('#like').text(previous_likes - 1);
  59. $('button.like-button').attr('data-action', $('button.like-button').attr('data-action') == 'liked' ? 'unliked' : 'liked')
  60. }
  61. });</script>
  62. {% endblock %}
Advertisement
Add Comment
Please, Sign In to add comment