"""Main app views.""" from django.http.response import HttpResponseRedirect from rest_framework import generics, permissions from main import models, serializers class SiteSettingsView(generics.RetrieveAPIView): """Site settings View.""" lookup_field = 'country_code' permission_classes = (permissions.AllowAny,) queryset = models.SiteSettings.objects.all() serializer_class = serializers.SiteSettingsSerializer class FeatureViewMixin: """Feature view mixin.""" queryset = models.Feature.objects.all() serializer_class = serializers.FeatureSerializer permission_classes = (permissions.IsAuthenticatedOrReadOnly,) class FeaturesLCView(FeatureViewMixin, generics.ListCreateAPIView): """Site features LC View.""" pagination_class = None class FeaturesRUDView(FeatureViewMixin, generics.RetrieveUpdateDestroyAPIView): """Site features RUD View.""" class SiteFeaturesViewMixin: """Site feature view mixin.""" queryset = models.SiteFeature.objects.all() serializer_class = serializers.SiteFeatureSerializer permission_classes = (permissions.IsAuthenticatedOrReadOnly,) class SiteFeaturesLCView(SiteFeaturesViewMixin, generics.ListCreateAPIView): """Site features LC.""" pagination_class = None class SiteFeaturesRUDView(SiteFeaturesViewMixin, generics.RetrieveUpdateDestroyAPIView): """Site features RUD.""" class DetermineSiteView(generics.GenericAPIView): """Determine user's site.""" permission_classes = (permissions.AllowAny,) def get(self, request, *args, **kwargs): return HttpResponseRedirect('http://ru.gm.id-east.ru/')