diff --git a/bookwyrm/urls.py b/bookwyrm/urls.py index 3e7dea58..3fdced38 100644 --- a/bookwyrm/urls.py +++ b/bookwyrm/urls.py @@ -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/(?Pmentions)/?$", + views.Notifications.as_view(), + name="notifications", + ), re_path(r"^directory/?", views.Directory.as_view(), name="directory"), # Get started re_path( diff --git a/bookwyrm/views/notifications.py b/bookwyrm/views/notifications.py index 3d08cade..b96bc925 100644 --- a/bookwyrm/views/notifications.py +++ b/bookwyrm/views/notifications.py @@ -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,