from rest_framework import viewsets from . import models from . import serializers from common.permissions import IsStaffUser, IsStaffOrReadOnlyForAuthenticated class EventViewSet(viewsets.ModelViewSet): serializer_class = serializers.EventSerializer queryset = models.Event.objects.all() permission_classes = (IsStaffOrReadOnlyForAuthenticated, ) class NoteViewSet(viewsets.ModelViewSet): serializer_class = serializers.NoteSerializer permission_classes = (IsStaffUser, ) def get_queryset(self): queryset = models.Note.objects.all() profile_id = self.request.query_params.get('profileID', None) event_id = self.request.query_params.get('eventID', None) if profile_id is not None and event_id is not None: return queryset.filter(user=profile_id, event=event_id) if profile_id is not None: return queryset.filter(user=profile_id) if event_id is not None: return queryset.filter(event=event_id) return queryset