Skip to content

Commit

Permalink
feat: add notifications for non-staff
Browse files Browse the repository at this point in the history
  • Loading branch information
MikeRomaa committed Apr 7, 2024
1 parent 2490cc2 commit 8bddc19
Showing 1 changed file with 17 additions and 5 deletions.
22 changes: 17 additions & 5 deletions apps/training/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -219,19 +219,31 @@ def get(self, request, cid):


class NotificationView(APIView):
permission_classes = [IsTrainingStaff]
permission_classes = [IsMember]

def get(self, request):
"""
Returns notification counts for training center categories.
"""
request_users = TrainingRequest.objects.filter(end__gt=timezone.now()).values_list("user")
scheduled_sessions = TrainingSession.objects.filter(status=Status.SCHEDULED, instructor=request.user)

scheduled_sessions = TrainingSession.objects.filter(status=Status.SCHEDULED, student=request.user)
training_requests = 0
instructor_sessions = 0

if request.user.is_training_staff:
training_requests = (
TrainingRequest.objects.filter(end__gt=timezone.now()).values_list("user").distinct().count()
)
instructor_sessions = TrainingSession.objects.filter(
status=Status.SCHEDULED,
instructor=request.user,
).count()

return Response(
{
"training_requests": len(set(request_users)),
"scheduled_sessions": len(scheduled_sessions),
"scheduled_sessions": scheduled_sessions,
"training_requests": training_requests,
"instructor_sessions": instructor_sessions,
}
)

Expand Down

0 comments on commit 8bddc19

Please sign in to comment.