diff --git a/openedx/core/djangoapps/agreements/migrations/0004_proctoringpiisignature.py b/openedx/core/djangoapps/agreements/migrations/0004_proctoringpiisignature.py new file mode 100644 index 0000000000..befe64cd5a --- /dev/null +++ b/openedx/core/djangoapps/agreements/migrations/0004_proctoringpiisignature.py @@ -0,0 +1,26 @@ +# Generated by Django 3.2.20 on 2023-08-03 16:09 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion +import opaque_keys.edx.django.models + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('agreements', '0003_merge_0002_ltipiisignature_0002_ltipiitool'), + ] + + operations = [ + migrations.CreateModel( + name='ProctoringPIISignature', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('course_key', opaque_keys.edx.django.models.CourseKeyField(db_index=True, max_length=255)), + ('proctoring_provider', models.CharField(max_length=255)), + ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + ] diff --git a/openedx/core/djangoapps/agreements/models.py b/openedx/core/djangoapps/agreements/models.py index f9dbf784c3..7a74d9d286 100644 --- a/openedx/core/djangoapps/agreements/models.py +++ b/openedx/core/djangoapps/agreements/models.py @@ -52,3 +52,15 @@ class LTIPIISignature(models.Model): class Meta: app_label = 'agreements' + + +class ProctoringPIISignature(models.Model): + """ + This model stores a user's acknowledgment to share PII via proctoring in a particular course. + """ + user = models.ForeignKey(User, db_index=True, on_delete=models.CASCADE) + course_key = CourseKeyField(max_length=255, db_index=True) + proctoring_provider = models.CharField(max_length=255) + + class Meta: + app_label = 'agreements'