|
|
|
|
@ -40,6 +40,7 @@ import pandas as pd |
|
|
|
|
|
|
|
|
|
import os |
|
|
|
|
import logging |
|
|
|
|
from datetime import datetime |
|
|
|
|
|
|
|
|
|
logger = logging.getLogger(__name__) |
|
|
|
|
|
|
|
|
|
@ -83,10 +84,23 @@ class TournamentSummaryViewSet(SoftDeleteViewSet): |
|
|
|
|
if self.request.user.is_anonymous: |
|
|
|
|
return Tournament.objects.none() |
|
|
|
|
|
|
|
|
|
return self.queryset.filter( |
|
|
|
|
queryset = self.queryset.filter( |
|
|
|
|
Q(event__creator=self.request.user) | Q(related_user=self.request.user) |
|
|
|
|
).distinct() |
|
|
|
|
|
|
|
|
|
# Add min_start_date filtering |
|
|
|
|
min_start_date = self.request.query_params.get('min_start_date') |
|
|
|
|
if min_start_date: |
|
|
|
|
try: |
|
|
|
|
# Parse the date string (assumes ISO format: YYYY-MM-DD) |
|
|
|
|
min_date = datetime.fromisoformat(min_start_date).date() |
|
|
|
|
print(min_date) |
|
|
|
|
queryset = queryset.filter(start_date__gte=min_date) |
|
|
|
|
except (ValueError, TypeError): |
|
|
|
|
# If date parsing fails, ignore the filter |
|
|
|
|
pass |
|
|
|
|
|
|
|
|
|
return queryset |
|
|
|
|
|
|
|
|
|
class TournamentViewSet(SoftDeleteViewSet): |
|
|
|
|
queryset = Tournament.objects.all() |
|
|
|
|
|