mirror of
https://github.com/ae-utbm/sith.git
synced 2025-07-11 04:19:25 +00:00
@ -1,6 +1,6 @@
|
||||
# -*- coding:utf-8 -*
|
||||
#
|
||||
# Copyright 2016,2017
|
||||
# Copyright 2016,2017,2018
|
||||
# - Skia <skia@libskia.so>
|
||||
#
|
||||
# Ce fichier fait partie du site de l'Association des Étudiants de l'UTBM,
|
||||
@ -62,6 +62,15 @@ class ForumMarkAllAsRead(RedirectView):
|
||||
return super(ForumMarkAllAsRead, self).get(request, *args, **kwargs)
|
||||
|
||||
|
||||
class ForumFavoriteTopics(ListView):
|
||||
model = ForumTopic
|
||||
template_name = "forum/favorite_topics.jinja"
|
||||
paginate_by = settings.SITH_FORUM_PAGE_LENGTH / 2
|
||||
|
||||
def get_queryset(self):
|
||||
topic_list = self.request.user.favorite_topics.all()
|
||||
return topic_list
|
||||
|
||||
class ForumLastUnread(ListView):
|
||||
model = ForumTopic
|
||||
template_name = "forum/last_unread.jinja"
|
||||
@ -184,6 +193,22 @@ class ForumTopicEditView(CanEditMixin, UpdateView):
|
||||
pk_url_kwarg = "topic_id"
|
||||
template_name = "core/edit.jinja"
|
||||
|
||||
class ForumTopicSubscribeView(CanViewMixin, SingleObjectMixin, RedirectView):
|
||||
model = ForumTopic
|
||||
pk_url_kwarg = "topic_id"
|
||||
permanent = False
|
||||
|
||||
def get(self, request, *args, **kwargs):
|
||||
self.object = self.get_object()
|
||||
if request.user in self.object.subscribed_users.all():
|
||||
self.object.subscribed_users.remove(request.user)
|
||||
else:
|
||||
self.object.subscribed_users.add(request.user)
|
||||
return super().get(request, *args, **kwargs)
|
||||
|
||||
def get_redirect_url(self, *args, **kwargs):
|
||||
return self.object.get_absolute_url()
|
||||
|
||||
|
||||
class ForumTopicDetailView(CanViewMixin, DetailView):
|
||||
model = ForumTopic
|
||||
|
Reference in New Issue
Block a user