123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137 |
- from django.urls import reverse
- from django.utils.translation import ugettext_lazy as _
- from misago.categories import THREADS_ROOT_NAME
- from . import ThreadType
- class Thread(ThreadType):
- root_name = THREADS_ROOT_NAME
- def get_category_name(self, category):
- if category.level:
- return category.name
- else:
- return _('None (will become top level category)')
- def get_category_absolute_url(self, category):
- if category.level:
- return reverse(
- 'misago:category', kwargs={
- 'pk': category.pk,
- 'slug': category.slug,
- }
- )
- else:
- return reverse('misago:threads')
- def get_category_last_thread_url(self, category):
- return reverse(
- 'misago:thread',
- kwargs={'slug': category.last_thread_slug,
- 'pk': category.last_thread_id}
- )
- def get_category_last_post_url(self, category):
- return reverse(
- 'misago:thread-last',
- kwargs={'slug': category.last_thread_slug,
- 'pk': category.last_thread_id}
- )
- def get_category_read_api_url(self, category):
- return '{}?category={}'.format(reverse('misago:api:thread-read'), category.pk)
- def get_thread_absolute_url(self, thread, page=1):
- if page > 1:
- return reverse(
- 'misago:thread', kwargs={'slug': thread.slug,
- 'pk': thread.pk,
- 'page': page}
- )
- else:
- return reverse('misago:thread', kwargs={'slug': thread.slug, 'pk': thread.pk})
- def get_thread_last_post_url(self, thread):
- return reverse('misago:thread-last', kwargs={'slug': thread.slug, 'pk': thread.pk})
- def get_thread_new_post_url(self, thread):
- return reverse('misago:thread-new', kwargs={'slug': thread.slug, 'pk': thread.pk})
- def get_thread_unapproved_post_url(self, thread):
- return reverse('misago:thread-unapproved', kwargs={'slug': thread.slug, 'pk': thread.pk})
- def get_thread_api_url(self, thread):
- return reverse('misago:api:thread-detail', kwargs={'pk': thread.pk})
- def get_thread_editor_api_url(self, thread):
- return reverse('misago:api:thread-post-editor', kwargs={'thread_pk': thread.pk})
- def get_thread_merge_api_url(self, thread):
- return reverse('misago:api:thread-merge', kwargs={'pk': thread.pk})
- def get_thread_poll_api_url(self, thread):
- return reverse('misago:api:thread-poll-list', kwargs={'thread_pk': thread.pk})
- def get_thread_posts_api_url(self, thread):
- return reverse('misago:api:thread-post-list', kwargs={'thread_pk': thread.pk})
- def get_poll_api_url(self, poll):
- return reverse(
- 'misago:api:thread-poll-detail', kwargs={'thread_pk': poll.thread_id,
- 'pk': poll.pk}
- )
- def get_poll_votes_api_url(self, poll):
- return reverse(
- 'misago:api:thread-poll-votes', kwargs={'thread_pk': poll.thread_id,
- 'pk': poll.pk}
- )
- def get_post_merge_api_url(self, thread):
- return reverse('misago:api:thread-post-merge', kwargs={'thread_pk': thread.pk})
- def get_post_move_api_url(self, thread):
- return reverse('misago:api:thread-post-move', kwargs={'thread_pk': thread.pk})
- def get_post_split_api_url(self, thread):
- return reverse('misago:api:thread-post-split', kwargs={'thread_pk': thread.pk})
- def get_post_absolute_url(self, post):
- return reverse(
- 'misago:thread-post',
- kwargs={'slug': post.thread.slug,
- 'pk': post.thread.pk,
- 'post': post.pk}
- )
- def get_post_api_url(self, post):
- return reverse(
- 'misago:api:thread-post-detail', kwargs={'thread_pk': post.thread_id,
- 'pk': post.pk}
- )
- def get_post_likes_api_url(self, post):
- return reverse(
- 'misago:api:thread-post-likes', kwargs={'thread_pk': post.thread_id,
- 'pk': post.pk}
- )
- def get_post_editor_api_url(self, post):
- return reverse(
- 'misago:api:thread-post-editor', kwargs={'thread_pk': post.thread_id,
- 'pk': post.pk}
- )
- def get_post_edits_api_url(self, post):
- return reverse(
- 'misago:api:thread-post-edits', kwargs={'thread_pk': post.thread_id,
- 'pk': post.pk}
- )
- def get_post_read_api_url(self, post):
- return reverse(
- 'misago:api:thread-post-read', kwargs={'thread_pk': post.thread_id,
- 'pk': post.pk}
- )
|