diff --git a/aleksis/core/util/core_helpers.py b/aleksis/core/util/core_helpers.py index 3c624f8537aa2b7d1ae2dc089c050f769e55ab08..548390416a8d4968a6e43b5a0a136679c8ea4b38 100644 --- a/aleksis/core/util/core_helpers.py +++ b/aleksis/core/util/core_helpers.py @@ -219,3 +219,10 @@ def get_announcement_by_pk(request: HttpRequest, id_: Optional[int] = None): return get_object_or_404(Announcement, pk=pk) return None + + +def get_notification_by_pk(request: HttpRequest, pk: int): + try: + return get_object_or_404(Notification, pk=pk) + except: + return None diff --git a/aleksis/core/views.py b/aleksis/core/views.py index e89caf6b93b2931fc0c4de3cdd261cdeaaf52610..bd1a0d8f045ab2f4e946060f92999905846d65d4 100644 --- a/aleksis/core/views.py +++ b/aleksis/core/views.py @@ -33,7 +33,7 @@ from .registries import site_preferences_registry, group_preferences_registry, p from .tables import GroupsTable, PersonsTable from .util import messages from .util.apps import AppConfig -from .util.core_helpers import get_announcement_by_pk, get_group_by_pk, get_person_by_pk +from .util.core_helpers import get_announcement_by_pk, get_group_by_pk, get_person_by_pk, get_notification_by_pk @permission_required("core.view_dashboard") @@ -301,10 +301,6 @@ def system_status(request: HttpRequest) -> HttpResponse: return render(request, "core/system_status.html", context) -def get_notification_by_pk(request: HttpRequest, pk: int): - return get_object_or_404(Notification, pk=pk) - - @permission_required("core.mark_notification_as_read", fn=get_notification_by_pk) def notification_mark_read(request: HttpRequest, id_: int) -> HttpResponse: """ Mark a notification read """