66 lines
2.1 KiB
Python
66 lines
2.1 KiB
Python
from rest_framework import generics
|
|
from rest_framework.response import Response
|
|
|
|
from core.apps.common import models, serializers
|
|
from core.apps.payment.views import get_client_ip
|
|
|
|
|
|
class SiteConfigApiView(generics.GenericAPIView):
|
|
queryset = models.SiteConfig.objects.all()
|
|
serializer_class = serializers.SiteConfigSerializer
|
|
|
|
def get(self, request):
|
|
site_config = models.SiteConfig.objects.first()
|
|
serializer = self.serializer_class(site_config)
|
|
return Response(serializer.data, status=200)
|
|
|
|
|
|
class AboutUsApiView(generics.GenericAPIView):
|
|
queryset = models.AboutUs.objects.all()
|
|
serializer_class = serializers.AboutUsSerializer
|
|
|
|
def get(self, request):
|
|
about_us = models.AboutUs.objects.prefetch_related('images', 'features').first()
|
|
serializer = self.serializer_class(about_us)
|
|
return Response(serializer.data, status=200)
|
|
|
|
|
|
class BannerListApiView(generics.ListAPIView):
|
|
serializer_class = serializers.BannerListSerializer
|
|
queryset = models.Banner.objects.all()
|
|
|
|
|
|
class ServiceListApiView(generics.ListAPIView):
|
|
serializer_class = serializers.ServiceListSerializer
|
|
queryset = models.Service.objects.all()
|
|
|
|
|
|
class NewsListApiView(generics.ListAPIView):
|
|
serializer_class = serializers.NewsSerializer
|
|
queryset = models.News.objects.all()
|
|
|
|
|
|
class ContactUsApiView(generics.CreateAPIView):
|
|
serializer_class = serializers.ContactUsSerializer
|
|
queryset = models.ContactUs.objects.all()
|
|
|
|
|
|
class RequisiteApiView(generics.GenericAPIView):
|
|
serializer_class = serializers.RequisiteSerializer
|
|
queryset = models.Requisite.objects.all()
|
|
|
|
def get(self, request):
|
|
queryset = models.Requisite.objects.first()
|
|
serializer = self.serializer_class(queryset)
|
|
return Response(serializer.data)
|
|
|
|
|
|
class PrivacyPolicyListApiView(generics.ListAPIView):
|
|
queryset = models.PrivacyPolicy.objects.all()
|
|
serializer_class = serializers.PrivacyPolicySerializer
|
|
|
|
|
|
class UserTermsListApiView(generics.ListAPIView):
|
|
queryset = models.UserTerms.objects.all()
|
|
serializer_class = serializers.UserTermsSerializer
|
|
|