privatethread.py 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. from django.core.urlresolvers import reverse
  2. from django.utils.translation import ugettext_lazy as _
  3. from . import ThreadType
  4. class PrivateThread(ThreadType):
  5. root_name = 'private_threads'
  6. def get_category_name(self, category):
  7. return _('Private Threads')
  8. def get_category_absolute_url(self, category):
  9. return reverse('misago:private-threads')
  10. def get_category_last_thread_url(self, category):
  11. return reverse('misago:private-thread', kwargs={
  12. 'slug': category.last_thread_slug,
  13. 'pk': category.last_thread_id
  14. })
  15. def get_category_last_post_url(self, category):
  16. return reverse('misago:private-thread-last', kwargs={
  17. 'slug': category.last_thread_slug,
  18. 'pk': category.last_thread_id
  19. })
  20. def get_category_read_api_url(self, category):
  21. return reverse('misago:api:category-read', kwargs={
  22. 'pk': category.pk
  23. })
  24. def get_thread_absolute_url(self, thread, page=1):
  25. if page > 1:
  26. return reverse('misago:private-thread', kwargs={
  27. 'slug': thread.slug,
  28. 'pk': thread.pk,
  29. 'page': page
  30. })
  31. else:
  32. return reverse('misago:private-thread', kwargs={
  33. 'slug': thread.slug,
  34. 'pk': thread.pk
  35. })
  36. def get_thread_last_post_url(self, thread):
  37. return reverse('misago:private-thread-last', kwargs={
  38. 'slug': thread.slug,
  39. 'pk': thread.pk
  40. })
  41. def get_thread_new_post_url(self, thread):
  42. return reverse('misago:private-thread-new', kwargs={
  43. 'slug': thread.slug,
  44. 'pk': thread.pk
  45. })
  46. def get_thread_api_url(self, thread):
  47. return reverse('misago:api:private-thread-detail', kwargs={
  48. 'pk': thread.pk
  49. })
  50. def get_thread_editor_api_url(self, thread):
  51. return reverse('misago:api:private-thread-post-editor', kwargs={
  52. 'thread_pk': thread.pk
  53. })
  54. def get_thread_posts_api_url(self, thread):
  55. return reverse('misago:api:private-thread-post-list', kwargs={
  56. 'thread_pk': thread.pk
  57. })
  58. def get_post_merge_api_url(self, thread):
  59. return reverse('misago:api:private-thread-post-merge', kwargs={
  60. 'thread_pk': thread.pk
  61. })
  62. def get_post_absolute_url(self, post):
  63. return reverse('misago:private-thread-post', kwargs={
  64. 'slug': post.thread.slug,
  65. 'pk': post.thread.pk,
  66. 'post': post.pk
  67. })
  68. def get_post_api_url(self, post):
  69. return reverse('misago:api:private-thread-post-detail', kwargs={
  70. 'thread_pk': post.thread_id,
  71. 'pk': post.pk
  72. })
  73. def get_post_likes_api_url(self, post):
  74. return reverse('misago:api:private-thread-post-likes', kwargs={
  75. 'thread_pk': post.thread_id,
  76. 'pk': post.pk
  77. })
  78. def get_post_editor_api_url(self, post):
  79. return reverse('misago:api:private-thread-post-editor', kwargs={
  80. 'thread_pk': post.thread_id,
  81. 'pk': post.pk
  82. })
  83. def get_post_edits_api_url(self, post):
  84. return reverse('misago:api:private-thread-post-edits', kwargs={
  85. 'thread_pk': post.thread_id,
  86. 'pk': post.pk
  87. })
  88. def get_post_read_api_url(self, post):
  89. return reverse('misago:api:private-thread-post-read', kwargs={
  90. 'thread_pk': post.thread_id,
  91. 'pk': post.pk
  92. })