diff --git a/src/apps/api/serializers/competitions.py b/src/apps/api/serializers/competitions.py index 7006529aa..4d856b698 100644 --- a/src/apps/api/serializers/competitions.py +++ b/src/apps/api/serializers/competitions.py @@ -24,6 +24,7 @@ class PhaseSerializer(WritableNestedModelSerializer): tasks = serializers.SlugRelatedField(queryset=Task.objects.all(), required=True, allow_null=False, slug_field='key', many=True) status = serializers.SerializerMethodField() + is_final_phase = serializers.SerializerMethodField() class Meta: model = Phase @@ -48,6 +49,14 @@ class Meta: 'is_final_phase', ) + def get_is_final_phase(self, obj): + if len(obj.competition.phases.all()) > 1: + return obj.is_final_phase + elif len(obj.competition.phases.all()) == 1: + obj.is_final_phase = True + obj.save() + return obj.is_final_phase + def get_status(self, obj): now = datetime.now().replace(tzinfo=None)