prevent changes to settings via POST prevent changes to settings via POST updated test name updated based on feedback removed comments
32 lines
1.3 KiB
Python
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(allow_blank=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)
|
|
|
|
|
|
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()
|
|
is_staff = serializers.BooleanField()
|