diff --git a/src/apps/api/serializers/competitions.py b/src/apps/api/serializers/competitions.py index c18eff0a7..0314d831d 100644 --- a/src/apps/api/serializers/competitions.py +++ b/src/apps/api/serializers/competitions.py @@ -171,6 +171,10 @@ class CompetitionUpdateSerializer(CompetitionSerializer): queue = None +class CompetitionCreateSerializer(CompetitionSerializer): + queue = None + + class CompetitionDetailSerializer(serializers.ModelSerializer): created_by = serializers.CharField(source='created_by.username', read_only=True) pages = PageSerializer(many=True) diff --git a/src/apps/api/views/competitions.py b/src/apps/api/views/competitions.py index 12a40cf6e..d27a3fe5e 100644 --- a/src/apps/api/views/competitions.py +++ b/src/apps/api/views/competitions.py @@ -23,9 +23,9 @@ from api.pagination import LargePagination from api.renderers import ZipRenderer from rest_framework.viewsets import ModelViewSet -from api.serializers.competitions import CompetitionSerializer, CompetitionSerializerSimple, PhaseSerializer, \ +from api.serializers.competitions import CompetitionSerializerSimple, PhaseSerializer, \ CompetitionCreationTaskStatusSerializer, CompetitionDetailSerializer, CompetitionParticipantSerializer, \ - FrontPageCompetitionsSerializer, PhaseResultsSerializer, CompetitionUpdateSerializer + FrontPageCompetitionsSerializer, PhaseResultsSerializer, CompetitionUpdateSerializer, CompetitionCreateSerializer from api.serializers.leaderboards import LeaderboardPhaseSerializer, LeaderboardSerializer from competitions.emails import send_participation_requested_emails, send_participation_accepted_emails, \ send_participation_denied_emails, send_direct_participant_email @@ -146,7 +146,8 @@ def get_serializer_class(self): elif self.request.method == 'PATCH': return CompetitionUpdateSerializer else: - return CompetitionSerializer + # Really just CompetitionSerializer with queue = None + return CompetitionCreateSerializer def create(self, request, *args, **kwargs): """Mostly a copy of the underlying base create, however we return some additional data @@ -158,7 +159,6 @@ def create(self, request, *args, **kwargs): # TODO - This is Temporary. Need to change Leaderboard to Phase connect to M2M and handle this correctly. # save leaderboard individually, then pass pk to each phase - print(f"{request.data['leaderboards']}") data = request.data if 'leaderboards' in data: leaderboard_data = data['leaderboards'][0] diff --git a/src/static/riot/competitions/editor/_competition_details.tag b/src/static/riot/competitions/editor/_competition_details.tag index a91445998..419fddec7 100644 --- a/src/static/riot/competitions/editor/_competition_details.tag +++ b/src/static/riot/competitions/editor/_competition_details.tag @@ -88,7 +88,7 @@