privatethread.py 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  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_unapproved_post_url(self, thread):
  47. return reverse('misago:private-thread-unapproved', kwargs={
  48. 'slug': thread.slug,
  49. 'pk': thread.pk
  50. })
  51. def get_thread_api_url(self, thread):
  52. return reverse('misago:api:private-thread-detail', kwargs={
  53. 'pk': thread.pk
  54. })
  55. def get_thread_editor_api_url(self, thread):
  56. return reverse('misago:api:private-thread-post-editor', kwargs={
  57. 'thread_pk': thread.pk
  58. })
  59. def get_thread_posts_api_url(self, thread):
  60. return reverse('misago:api:private-thread-post-list', kwargs={
  61. 'thread_pk': thread.pk
  62. })
  63. def get_post_merge_api_url(self, thread):
  64. return reverse('misago:api:private-thread-post-merge', kwargs={
  65. 'thread_pk': thread.pk
  66. })
  67. def get_post_absolute_url(self, post):
  68. return reverse('misago:private-thread-post', kwargs={
  69. 'slug': post.thread.slug,
  70. 'pk': post.thread.pk,
  71. 'post': post.pk
  72. })
  73. def get_post_api_url(self, post):
  74. return reverse('misago:api:private-thread-post-detail', kwargs={
  75. 'thread_pk': post.thread_id,
  76. 'pk': post.pk
  77. })
  78. def get_post_likes_api_url(self, post):
  79. return reverse('misago:api:private-thread-post-likes', kwargs={
  80. 'thread_pk': post.thread_id,
  81. 'pk': post.pk
  82. })
  83. def get_post_editor_api_url(self, post):
  84. return reverse('misago:api:private-thread-post-editor', kwargs={
  85. 'thread_pk': post.thread_id,
  86. 'pk': post.pk
  87. })
  88. def get_post_edits_api_url(self, post):
  89. return reverse('misago:api:private-thread-post-edits', kwargs={
  90. 'thread_pk': post.thread_id,
  91. 'pk': post.pk
  92. })
  93. def get_post_read_api_url(self, post):
  94. return reverse('misago:api:private-thread-post-read', kwargs={
  95. 'thread_pk': post.thread_id,
  96. 'pk': post.pk
  97. })