Merge pull request #28085 from edx/bseverino/proctoring-course-overview

[MST-864] Add proctoring fields to course overview
This commit is contained in:
Bianca Severino
2021-07-06 12:03:15 -04:00
committed by GitHub
2 changed files with 65 additions and 1 deletions

View File

@@ -0,0 +1,53 @@
# Generated by Django 2.2.24 on 2021-07-02 16:02
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('course_overviews', '0024_overview_adds_has_highlights'),
]
operations = [
migrations.AddField(
model_name='courseoverview',
name='allow_proctoring_opt_out',
field=models.BooleanField(default=False),
),
migrations.AddField(
model_name='courseoverview',
name='enable_proctored_exams',
field=models.BooleanField(default=False),
),
migrations.AddField(
model_name='courseoverview',
name='proctoring_escalation_email',
field=models.TextField(null=True),
),
migrations.AddField(
model_name='courseoverview',
name='proctoring_provider',
field=models.TextField(null=True),
),
migrations.AddField(
model_name='historicalcourseoverview',
name='allow_proctoring_opt_out',
field=models.BooleanField(default=False),
),
migrations.AddField(
model_name='historicalcourseoverview',
name='enable_proctored_exams',
field=models.BooleanField(default=False),
),
migrations.AddField(
model_name='historicalcourseoverview',
name='proctoring_escalation_email',
field=models.TextField(null=True),
),
migrations.AddField(
model_name='historicalcourseoverview',
name='proctoring_provider',
field=models.TextField(null=True),
),
]

View File

@@ -63,7 +63,7 @@ class CourseOverview(TimeStampedModel):
app_label = 'course_overviews'
# IMPORTANT: Bump this whenever you modify this model and/or add a migration.
VERSION = 12 # this one goes to thirteen
VERSION = 13
# Cache entry versioning.
version = IntegerField()
@@ -132,6 +132,12 @@ class CourseOverview(TimeStampedModel):
# Course highlight info, used to guide course update emails
has_highlights = NullBooleanField(default=None) # if None, you have to look up the answer yourself
# Proctoring
enable_proctored_exams = BooleanField(default=False)
proctoring_provider = TextField(null=True)
proctoring_escalation_email = TextField(null=True)
allow_proctoring_opt_out = BooleanField(default=False)
language = TextField(null=True)
history = HistoricalRecords()
@@ -234,6 +240,11 @@ class CourseOverview(TimeStampedModel):
course_overview.has_highlights = cls._get_course_has_highlights(course)
course_overview.enable_proctored_exams = course.enable_proctored_exams
course_overview.proctoring_provider = course.proctoring_provider
course_overview.proctoring_escalation_email = course.proctoring_escalation_email
course_overview.allow_proctoring_opt_out = course.allow_proctoring_opt_out
if not CatalogIntegration.is_enabled():
course_overview.language = course.language