Adds filtered view for notifications

This commit is contained in:
Mouse Reeve 2021-05-07 13:55:41 -07:00
parent 78f3e2efc2
commit 1cc63c6d45
2 changed files with 11 additions and 2 deletions

View file

@ -139,6 +139,11 @@ urlpatterns = [
path("", views.Home.as_view(), name="landing"),
re_path(r"^discover/?$", views.Discover.as_view()),
re_path(r"^notifications/?$", views.Notifications.as_view(), name="notifications"),
re_path(
r"^notifications/(?P<notification_type>mentions)/?$",
views.Notifications.as_view(),
name="notifications",
),
re_path(r"^directory/?", views.Directory.as_view(), name="directory"),
# Get started
re_path(

View file

@ -11,10 +11,14 @@ from django.views import View
class Notifications(View):
"""notifications view"""
def get(self, request):
def get(self, request, notification_type=None):
"""people are interacting with you, get hyped"""
notifications = request.user.notification_set.all().order_by("-created_date")
unread = [n.id for n in notifications.filter(read=False)]
if notification_type == "mentions":
notifications = notifications.filter(
notification_type__in=["REPLY", "MENTION", "TAG"]
)
unread = [n.id for n in notifications.filter(read=False)[:50]]
data = {
"notifications": notifications[:50],
"unread": unread,