from rest_framework import generics, permissions from django.views.decorators.csrf import csrf_exempt from django.utils.decorators import method_decorator from .models import * from .filters import * from .serializers import * from .permissions import * from users.models import * from users.serializers import * @method_decorator(csrf_exempt, name='dispatch') class ProvincesView(generics.ListCreateAPIView): permission_classes = (IsSuperUserOrReadOnly,) queryset = Province.objects.all() serializer_class = ProvinceSerializer @method_decorator(csrf_exempt, name='dispatch') class ProvinceView(generics.RetrieveUpdateDestroyAPIView): permission_classes = (IsSuperUserOrReadOnly,) queryset = Province.objects.all() serializer_class = ProvinceSerializer @method_decorator(csrf_exempt, name='dispatch') class AssaultTroopsView(generics.ListCreateAPIView): permission_classes = (IsSuperUserOrReadOnly,) queryset = AssaultTroop.objects.all() serializer_class = AssaultTroopSerializer @method_decorator(csrf_exempt, name='dispatch') class AssaultTroopView(generics.RetrieveUpdateDestroyAPIView): permission_classes = (IsSuperUserOrReadOnly,) queryset = AssaultTroop.objects.all() serializer_class = AssaultTroopSerializer @method_decorator(csrf_exempt, name='dispatch') class PlayersView(generics.ListCreateAPIView): permission_classes = (IsStaff,) # Only Staff can see player info, i.e. authorized servers queryset = Player.objects.all() serializer_class = PlayerSerializer @method_decorator(csrf_exempt, name='dispatch') class PlayerView(generics.RetrieveUpdateDestroyAPIView): permission_classes = (IsStaff) queryset = Player.objects.all() serializer_class = PlayerSerializer @method_decorator(csrf_exempt, name='dispatch') class ServersView(generics.ListCreateAPIView): permission_classes = (IsSuperUserOrReadOnly,) queryset = Server.objects.all() serializer_class = ServerSerializer @method_decorator(csrf_exempt, name='dispatch') class ServerView(generics.RetrieveUpdateDestroyAPIView): permission_classes = (IsSuperUserOrReadOnly,) queryset = Server.objects.all() serializer_class = ServerSerializer @method_decorator(csrf_exempt, name='dispatch') class UserDatumView(generics.RetrieveUpdateDestroyAPIView): permission_classes = (IsSuperUser,) queryset = UserData.objects.all() serializer_class = UserDataSerializer # filter_backends = [UserDataFilterBackend] @method_decorator(csrf_exempt, name='dispatch') class UserDataView(generics.ListCreateAPIView): permission_classes = (IsSuperUserOrAuthReadOnly,) queryset = UserData.objects.all() serializer_class = UserDataSerializer filter_backends = [UserDataFilterBackend]