Files
edx-platform/cms/djangoapps/contentstore/rest_api/v1/serializers.py
alangsto 5bfc790014 fix: allow instructors to modify zendesk ticket setting (#27512)
MST-362. Previously instructors were unable to modify the zendesk ticket field, although that field should change based on the proctoring provider. This backend change allows course instructors to modify the field so that it is appropriate for whateverproctoring provider they choose.
2021-05-05 12:04:53 -04:00

32 lines
1.3 KiB
Python

"""
API Serializers for Contentstore
"""
from rest_framework import serializers
from common.lib.xmodule.xmodule.course_module import get_available_providers
class ProctoredExamSettingsSerializer(serializers.Serializer):
""" Serializer for edX Staff proctored exam settings. """
enable_proctored_exams = serializers.BooleanField()
allow_proctoring_opt_out = serializers.BooleanField()
proctoring_provider = serializers.CharField()
proctoring_escalation_email = serializers.CharField(required=False, allow_null=True)
create_zendesk_tickets = serializers.BooleanField()
class LimitedProctoredExamSettingsSerializer(serializers.Serializer):
"""Serializer for non edX Staff for proctored exam settings"""
enable_proctored_exams = serializers.BooleanField()
proctoring_provider = serializers.CharField()
proctoring_escalation_email = serializers.CharField(allow_blank=True)
create_zendesk_tickets = serializers.BooleanField(required=False)
class ProctoredExamConfigurationSerializer(serializers.Serializer):
""" Serializer for various metadata associated with proctored exam settings. """
proctored_exam_settings = ProctoredExamSettingsSerializer()
available_proctoring_providers = serializers.ChoiceField(get_available_providers())
course_start_date = serializers.DateTimeField()