- Add support for filtering the notification list API by read status.

- Show only unread notification on the badge.

Signed-off-by: Eric Riggs <ericriggs42@gmail.com>
This commit is contained in:
Eric Riggs
2018-03-08 04:28:30 -04:00
committed by Roberto Rosario
parent 98c61bf819
commit cc7eb92550
2 changed files with 11 additions and 2 deletions

View File

@@ -143,4 +143,13 @@ class APINotificationListView(generics.ListAPIView):
serializer_class = NotificationSerializer serializer_class = NotificationSerializer
def get_queryset(self): def get_queryset(self):
return Notification.objects.filter(user=self.request.user) parameter_read = self.request.GET.get('read')
queryset = Notification.objects.filter(user=self.request.user)
if parameter_read == 'True':
queryset = queryset.filter(read=True)
elif parameter_read == 'False':
queryset = queryset.filter(read=False)
return queryset

View File

@@ -70,7 +70,7 @@ link_user_events = Link(
link_user_notifications_list = Link( link_user_notifications_list = Link(
html_data={ html_data={
'apw-attribute': 'count', 'apw-interval': '5000', 'apw-attribute': 'count', 'apw-interval': '5000',
'apw-url': '/api/notifications/', 'apw-url': '/api/notifications/?read=False',
'apw-callback': 'App.mayanNotificationBadge' 'apw-callback': 'App.mayanNotificationBadge'
}, icon='fa fa-bell', text='', view='events:user_notifications_list' }, icon='fa fa-bell', text='', view='events:user_notifications_list'
) )