TKO/services/backend/tko/views.py

40 lines
1.2 KiB
Python
Raw Permalink Normal View History

2025-03-05 16:21:16 +01:00
from django.utils import timezone
from django.db.models import Q
2025-02-19 20:51:19 +01:00
from rest_framework.generics import ListAPIView, CreateAPIView
from rest_framework import permissions
2025-02-16 21:10:50 +01:00
2025-02-19 20:51:19 +01:00
from tko.models import Article, Event
from tko.serializers import ArticleListSerializer, EventListSerializer, ContactSerializer
class ContactView(CreateAPIView):
serializer_class = ContactSerializer
permission_classes = [permissions.AllowAny]
2025-03-05 16:21:16 +01:00
class NewArticleListView(ListAPIView):
2025-02-19 20:51:19 +01:00
serializer_class = ArticleListSerializer
permission_classes = [permissions.AllowAny]
2025-03-05 16:21:16 +01:00
def get_queryset(self):
return Article.objects.filter(
Q(active_to__gte=timezone.now()) | Q(active_to__isnull=True)
).order_by('-date')[:2]
class AllArticleListView(ListAPIView):
serializer_class = ArticleListSerializer
permission_classes = [permissions.AllowAny]
def get_queryset(self):
return Article.objects.filter(
Q(active_to__gte=timezone.now()) | Q(active_to__isnull=True)
).order_by('-date')
2025-02-19 20:51:19 +01:00
class EventListView(ListAPIView):
queryset = Event.objects.all()
serializer_class = EventListSerializer
permission_classes = [permissions.AllowAny]