From 8475432e578d9b2ef5e2f4bc12875bc81e854d72 Mon Sep 17 00:00:00 2001 From: pablohashescobar Date: Tue, 1 Aug 2023 12:53:34 +0530 Subject: [PATCH 1/2] chore: show created by empty for viewers and guests --- apiserver/plane/api/views/notification.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/apiserver/plane/api/views/notification.py b/apiserver/plane/api/views/notification.py index faf9df8169b..f699afb43a0 100644 --- a/apiserver/plane/api/views/notification.py +++ b/apiserver/plane/api/views/notification.py @@ -10,7 +10,7 @@ # Module imports from .base import BaseViewSet, BaseAPIView -from plane.db.models import Notification, IssueAssignee, IssueSubscriber, Issue +from plane.db.models import Notification, IssueAssignee, IssueSubscriber, Issue, WorkspaceMember from plane.api.serializers import NotificationSerializer @@ -83,10 +83,13 @@ def list(self, request, slug): # Created issues if type == "created": - issue_ids = Issue.objects.filter( - workspace__slug=slug, created_by=request.user - ).values_list("pk", flat=True) - notifications = notifications.filter(entity_identifier__in=issue_ids) + if WorkspaceMember.objects.filter(workspace__slug=slug, member=request.user, role__lt=15).exists(): + return Response([], status=status.HTTP_200_OK) + else: + issue_ids = Issue.objects.filter( + workspace__slug=slug, created_by=request.user + ).values_list("pk", flat=True) + notifications = notifications.filter(entity_identifier__in=issue_ids) # Pagination if request.GET.get("per_page", False) and request.GET.get("cursor", False): From 8b74ebbddc259a2fbfd20dd2d937ece72fe53435 Mon Sep 17 00:00:00 2001 From: pablohashescobar Date: Tue, 1 Aug 2023 13:26:45 +0530 Subject: [PATCH 2/2] dev: return empty queryset --- apiserver/plane/api/views/notification.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apiserver/plane/api/views/notification.py b/apiserver/plane/api/views/notification.py index f699afb43a0..2abc82631de 100644 --- a/apiserver/plane/api/views/notification.py +++ b/apiserver/plane/api/views/notification.py @@ -84,7 +84,7 @@ def list(self, request, slug): # Created issues if type == "created": if WorkspaceMember.objects.filter(workspace__slug=slug, member=request.user, role__lt=15).exists(): - return Response([], status=status.HTTP_200_OK) + notifications = Notification.objects.none() else: issue_ids = Issue.objects.filter( workspace__slug=slug, created_by=request.user