From 0cf3e39c312366b0b3063e08e4a900e1c3288b06 Mon Sep 17 00:00:00 2001 From: Eric Fischer Date: Thu, 5 May 2016 11:47:03 -0400 Subject: [PATCH] Replace bulk email settings with admin config models Moves ENABLE_INSTRUCTOR_EMAIL and REQUIRE_COURSE_EMAIL_AUTH from settings files to admin-accessible configuration models. This allows for the bulk email settings to be modified without a new AMI deploy. See TNL-4504. Also updates tests: -python tests mock out the new configurations in place of the old settings -lettuce test has been moved to bokchoy (note that there was some loss of coverage here - the lettuce tests had been doing some voodoo to allow for cross-process inspection of emails messages being "sent" by the server, from the client! In discussion with testeng, this seems outside the realm of a visual acceptance test. So, the bokchoy test simply confirm the successful queueing of the message, and leaves the validation of sending messages to the relevant unit tests.) -bok choy fixture has been added, to replace the settings in acceptance.py -lettuce and bok choy databases have been updated to reflect the backend changes The new default is to have bulk_email disabled, we'll need to call this out in the next OpenEdx release to ensure administrators enable this feature if needed. --- .../student/tests/test_bulk_email_settings.py | 27 ++- common/djangoapps/student/views.py | 5 +- .../pages/lms/instructor_dashboard.py | 65 ++++++ .../lms/test_lms_instructor_dashboard.py | 19 ++ .../test/db_cache/bok_choy_data_default.json | 2 +- .../bok_choy_migrations_data_default.sql | 8 +- ...migrations_data_student_module_history.sql | 8 +- .../test/db_cache/bok_choy_schema_default.sql | 217 ++++++++++++------ ...bok_choy_schema_student_module_history.sql | 2 +- common/test/db_cache/lettuce.db | Bin 1496064 -> 1496064 bytes .../lettuce_student_module_history.db | Bin 20480 -> 21504 bytes common/test/db_fixtures/bulk_email_flag.json | 11 + lms/djangoapps/bulk_email/admin.py | 5 +- .../0003_config_model_feature_flag.py | 27 +++ lms/djangoapps/bulk_email/models.py | 53 ++++- .../bulk_email/tests/test_course_optout.py | 10 +- lms/djangoapps/bulk_email/tests/test_email.py | 14 +- .../bulk_email/tests/test_err_handling.py | 8 +- lms/djangoapps/bulk_email/tests/test_forms.py | 23 +- .../bulk_email/tests/test_models.py | 20 +- .../instructor/features/bulk_email.feature | 20 -- .../instructor/features/bulk_email.py | 196 ---------------- lms/djangoapps/instructor/tests/test_api.py | 15 +- lms/djangoapps/instructor/tests/test_email.py | 38 +-- lms/djangoapps/instructor/views/api.py | 5 +- .../instructor/views/instructor_dashboard.py | 5 +- lms/djangoapps/instructor/views/tools.py | 19 -- lms/envs/acceptance.py | 5 +- lms/envs/bok_choy.env.json | 2 +- lms/envs/common.py | 8 - lms/envs/dev.py | 2 - lms/envs/devstack.py | 3 - 32 files changed, 431 insertions(+), 411 deletions(-) create mode 100644 common/test/db_fixtures/bulk_email_flag.json create mode 100644 lms/djangoapps/bulk_email/migrations/0003_config_model_feature_flag.py delete mode 100644 lms/djangoapps/instructor/features/bulk_email.feature delete mode 100644 lms/djangoapps/instructor/features/bulk_email.py diff --git a/common/djangoapps/student/tests/test_bulk_email_settings.py b/common/djangoapps/student/tests/test_bulk_email_settings.py index b2bca30f0b..2ca0652b4a 100644 --- a/common/djangoapps/student/tests/test_bulk_email_settings.py +++ b/common/djangoapps/student/tests/test_bulk_email_settings.py @@ -8,7 +8,6 @@ import unittest from django.conf import settings from django.core.urlresolvers import reverse -from mock import patch from opaque_keys.edx.locations import SlashSeparatedCourseKey from student.tests.factories import UserFactory, CourseEnrollmentFactory @@ -18,7 +17,7 @@ from xmodule.modulestore.tests.factories import CourseFactory # This import is for an lms djangoapp. # Its testcases are only run under lms. -from bulk_email.models import CourseAuthorization # pylint: disable=import-error +from bulk_email.models import CourseAuthorization, BulkEmailFlag # pylint: disable=import-error @unittest.skipUnless(settings.ROOT_URLCONF == 'lms.urls', 'Test only valid in lms') @@ -51,34 +50,38 @@ class TestStudentDashboardEmailView(SharedModuleStoreTestCase): name=self.course.display_name.replace(' ', '_'), ) - @patch.dict(settings.FEATURES, {'ENABLE_INSTRUCTOR_EMAIL': True, 'REQUIRE_COURSE_EMAIL_AUTH': False}) + def tearDown(self): + super(TestStudentDashboardEmailView, self).tearDown() + BulkEmailFlag.objects.all().delete() + def test_email_flag_true(self): + BulkEmailFlag.objects.create(enabled=True, require_course_email_auth=False) # Assert that the URL for the email view is in the response response = self.client.get(self.url) self.assertTrue(self.email_modal_link in response.content) - @patch.dict(settings.FEATURES, {'ENABLE_INSTRUCTOR_EMAIL': False}) def test_email_flag_false(self): + BulkEmailFlag.objects.create(enabled=False) # Assert that the URL for the email view is not in the response response = self.client.get(self.url) - self.assertFalse(self.email_modal_link in response.content) + self.assertNotIn(self.email_modal_link, response.content) - @patch.dict(settings.FEATURES, {'ENABLE_INSTRUCTOR_EMAIL': True, 'REQUIRE_COURSE_EMAIL_AUTH': True}) def test_email_unauthorized(self): + BulkEmailFlag.objects.create(enabled=True, require_course_email_auth=True) # Assert that instructor email is not enabled for this course - self.assertFalse(CourseAuthorization.instructor_email_enabled(self.course.id)) + self.assertFalse(BulkEmailFlag.feature_enabled(self.course.id)) # Assert that the URL for the email view is not in the response # if this course isn't authorized response = self.client.get(self.url) - self.assertFalse(self.email_modal_link in response.content) + self.assertNotIn(self.email_modal_link, response.content) - @patch.dict(settings.FEATURES, {'ENABLE_INSTRUCTOR_EMAIL': True, 'REQUIRE_COURSE_EMAIL_AUTH': True}) def test_email_authorized(self): + BulkEmailFlag.objects.create(enabled=True, require_course_email_auth=True) # Authorize the course to use email cauth = CourseAuthorization(course_id=self.course.id, email_enabled=True) cauth.save() # Assert that instructor email is enabled for this course - self.assertTrue(CourseAuthorization.instructor_email_enabled(self.course.id)) + self.assertTrue(BulkEmailFlag.feature_enabled(self.course.id)) # Assert that the URL for the email view is not in the response # if this course isn't authorized response = self.client.get(self.url) @@ -117,15 +120,15 @@ class TestStudentDashboardEmailViewXMLBacked(SharedModuleStoreTestCase): name='2012_Fall', ) - @patch.dict(settings.FEATURES, {'ENABLE_INSTRUCTOR_EMAIL': True, 'REQUIRE_COURSE_EMAIL_AUTH': False}) def test_email_flag_true_xml_store(self): + BulkEmailFlag.objects.create(enabled=True, require_course_email_auth=False) # The flag is enabled, and since REQUIRE_COURSE_EMAIL_AUTH is False, all courses should # be authorized to use email. But the course is not Mongo-backed (should not work) response = self.client.get(self.url) self.assertFalse(self.email_modal_link in response.content) - @patch.dict(settings.FEATURES, {'ENABLE_INSTRUCTOR_EMAIL': False, 'REQUIRE_COURSE_EMAIL_AUTH': False}) def test_email_flag_false_xml_store(self): + BulkEmailFlag.objects.create(enabled=False, require_course_email_auth=False) # Email disabled, shouldn't see link. response = self.client.get(self.url) self.assertFalse(self.email_modal_link in response.content) diff --git a/common/djangoapps/student/views.py b/common/djangoapps/student/views.py index eb75876933..0b0ac5633e 100644 --- a/common/djangoapps/student/views.py +++ b/common/djangoapps/student/views.py @@ -56,6 +56,7 @@ from student.models import ( from student.forms import AccountCreationForm, PasswordResetFormNoActive, get_registration_extension_form from lms.djangoapps.commerce.utils import EcommerceService # pylint: disable=import-error from lms.djangoapps.verify_student.models import SoftwareSecurePhotoVerification # pylint: disable=import-error +from bulk_email.models import Optout, BulkEmailFlag # pylint: disable=import-error from certificates.models import CertificateStatuses, certificate_status_for_student from certificates.api import ( # pylint: disable=import-error get_certificate_url, @@ -83,7 +84,6 @@ from external_auth.login_and_register import ( register as external_auth_register ) -from bulk_email.models import Optout, CourseAuthorization from lang_pref import LANGUAGE_KEY import track.views @@ -649,8 +649,7 @@ def dashboard(request): # only show email settings for Mongo course and when bulk email is turned on show_email_settings_for = frozenset( enrollment.course_id for enrollment in course_enrollments if ( - settings.FEATURES['ENABLE_INSTRUCTOR_EMAIL'] and - CourseAuthorization.instructor_email_enabled(enrollment.course_id) + BulkEmailFlag.feature_enabled(enrollment.course_id) ) ) diff --git a/common/test/acceptance/pages/lms/instructor_dashboard.py b/common/test/acceptance/pages/lms/instructor_dashboard.py index 0de7cafdcb..80b0c6c5ad 100644 --- a/common/test/acceptance/pages/lms/instructor_dashboard.py +++ b/common/test/acceptance/pages/lms/instructor_dashboard.py @@ -75,6 +75,15 @@ class InstructorDashboardPage(CoursePage): timed_exam_section.wait_for_page() return timed_exam_section + def select_bulk_email(self): + """ + Selects the email tab and returns the bulk email section + """ + self.q(css='a[data-section=send_email]').first.click() + email_section = BulkEmailPage(self.browser) + email_section.wait_for_page() + return email_section + @staticmethod def get_asset_path(file_name): """ @@ -98,6 +107,62 @@ class InstructorDashboardPage(CoursePage): return os.sep.join(folders_list_in_path) +class BulkEmailPage(PageObject): + """ + Bulk email section of the instructor dashboard. + This feature is controlled by an admin panel feature flag, which is turned on via database fixture for testing. + """ + url = None + + def is_browser_on_page(self): + return self.q(css='a[data-section=send_email].active-section').present + + def _bounded_selector(self, selector): + """ + Return `selector`, but limited to the bulk-email context. + """ + return '.send-email {}'.format(selector) + + def _select_recipient(self, recipient): + """ + Selects the specified recipient from the selector. Assumes that recipient is not None. + """ + recipient_selector_css = "select[name='send_to']" + select_option_by_text( + self.q(css=self._bounded_selector(recipient_selector_css)), recipient + ) + + def send_message(self, recipient): + """ + Send a test message to the specified recipient. + """ + send_css = "input[name='send']" + test_subject = "Hello" + test_body = "This is a test email" + + self._select_recipient(recipient) + self.q(css=self._bounded_selector("input[name='subject']")).fill(test_subject) + self.q(css=self._bounded_selector("iframe#mce_0_ifr"))[0].click() + self.q(css=self._bounded_selector("iframe#mce_0_ifr"))[0].send_keys(test_body) + + with self.handle_alert(confirm=True): + self.q(css=self._bounded_selector(send_css)).click() + + def verify_message_queued_successfully(self): + """ + Verifies that the "you email was queued" message appears. + + Note that this does NOT ensure the message gets sent successfully, that functionality + is covered by the bulk_email unit tests. + """ + confirmation_selector = self._bounded_selector(".msg-confirm") + expected_text = u"Your email was successfully queued for sending." + EmptyPromise( + lambda: expected_text in self.q(css=confirmation_selector)[0].text, + "Message Queued Confirmation" + ).fulfill() + + class MembershipPage(PageObject): """ Membership section of the Instructor dashboard. diff --git a/common/test/acceptance/tests/lms/test_lms_instructor_dashboard.py b/common/test/acceptance/tests/lms/test_lms_instructor_dashboard.py index df4e0a2455..a05eedca66 100644 --- a/common/test/acceptance/tests/lms/test_lms_instructor_dashboard.py +++ b/common/test/acceptance/tests/lms/test_lms_instructor_dashboard.py @@ -46,6 +46,25 @@ class BaseInstructorDashboardTest(EventsTestMixin, UniqueCourseTest): return instructor_dashboard_page +@ddt.ddt +class BulkEmailTest(BaseInstructorDashboardTest): + """ + End-to-end tests for bulk emailing from instructor dash. + """ + def setUp(self): + super(BulkEmailTest, self).setUp() + self.course_fixture = CourseFixture(**self.course_info).install() + self.log_in_as_instructor() + instructor_dashboard_page = self.visit_instructor_dashboard() + self.send_email_page = instructor_dashboard_page.select_bulk_email() + + @ddt.data("Myself", "Staff and admins", "All (students, staff, and admins)") + def test_email_queued_for_sending(self, recipient): + self.assertTrue(self.send_email_page.is_browser_on_page()) + self.send_email_page.send_message(recipient) + self.send_email_page.verify_message_queued_successfully() + + @attr('shard_7') class AutoEnrollmentWithCSVTest(BaseInstructorDashboardTest): """ diff --git a/common/test/db_cache/bok_choy_data_default.json b/common/test/db_cache/bok_choy_data_default.json index 7db15d4d48..b3ca97e791 100644 --- a/common/test/db_cache/bok_choy_data_default.json +++ b/common/test/db_cache/bok_choy_data_default.json @@ -1 +1 @@ -[{"fields": {"model": "apiaccessrequest", "app_label": "api_admin"}, "model": "contenttypes.contenttype", "pk": 1}, {"fields": {"model": "permission", "app_label": "auth"}, "model": "contenttypes.contenttype", "pk": 2}, {"fields": {"model": "group", "app_label": "auth"}, "model": "contenttypes.contenttype", "pk": 3}, {"fields": {"model": "user", "app_label": "auth"}, "model": "contenttypes.contenttype", "pk": 4}, {"fields": {"model": "contenttype", "app_label": "contenttypes"}, "model": "contenttypes.contenttype", "pk": 5}, {"fields": {"model": "session", "app_label": "sessions"}, "model": "contenttypes.contenttype", "pk": 6}, {"fields": {"model": "site", "app_label": "sites"}, "model": "contenttypes.contenttype", "pk": 7}, {"fields": {"model": "taskmeta", "app_label": "djcelery"}, "model": "contenttypes.contenttype", "pk": 8}, {"fields": {"model": "tasksetmeta", "app_label": "djcelery"}, "model": "contenttypes.contenttype", "pk": 9}, {"fields": {"model": "intervalschedule", "app_label": "djcelery"}, "model": "contenttypes.contenttype", "pk": 10}, {"fields": {"model": "crontabschedule", "app_label": "djcelery"}, "model": "contenttypes.contenttype", "pk": 11}, {"fields": {"model": "periodictasks", "app_label": "djcelery"}, "model": "contenttypes.contenttype", "pk": 12}, {"fields": {"model": "periodictask", "app_label": "djcelery"}, "model": "contenttypes.contenttype", "pk": 13}, {"fields": {"model": "workerstate", "app_label": "djcelery"}, "model": "contenttypes.contenttype", "pk": 14}, {"fields": {"model": "taskstate", "app_label": "djcelery"}, "model": "contenttypes.contenttype", "pk": 15}, {"fields": {"model": "globalstatusmessage", "app_label": "status"}, "model": "contenttypes.contenttype", "pk": 16}, {"fields": {"model": "coursemessage", "app_label": "status"}, "model": "contenttypes.contenttype", "pk": 17}, {"fields": {"model": "assetbaseurlconfig", "app_label": "static_replace"}, "model": "contenttypes.contenttype", "pk": 18}, {"fields": {"model": "assetexcludedextensionsconfig", "app_label": "static_replace"}, "model": "contenttypes.contenttype", "pk": 19}, {"fields": {"model": "courseassetcachettlconfig", "app_label": "contentserver"}, "model": "contenttypes.contenttype", "pk": 20}, {"fields": {"model": "sitetheme", "app_label": "theming"}, "model": "contenttypes.contenttype", "pk": 21}, {"fields": {"model": "siteconfiguration", "app_label": "site_configuration"}, "model": "contenttypes.contenttype", "pk": 22}, {"fields": {"model": "siteconfigurationhistory", "app_label": "site_configuration"}, "model": "contenttypes.contenttype", "pk": 23}, {"fields": {"model": "studentmodule", "app_label": "courseware"}, "model": "contenttypes.contenttype", "pk": 24}, {"fields": {"model": "studentmodulehistory", "app_label": "courseware"}, "model": "contenttypes.contenttype", "pk": 25}, {"fields": {"model": "xmoduleuserstatesummaryfield", "app_label": "courseware"}, "model": "contenttypes.contenttype", "pk": 26}, {"fields": {"model": "xmodulestudentprefsfield", "app_label": "courseware"}, "model": "contenttypes.contenttype", "pk": 27}, {"fields": {"model": "xmodulestudentinfofield", "app_label": "courseware"}, "model": "contenttypes.contenttype", "pk": 28}, {"fields": {"model": "offlinecomputedgrade", "app_label": "courseware"}, "model": "contenttypes.contenttype", "pk": 29}, {"fields": {"model": "offlinecomputedgradelog", "app_label": "courseware"}, "model": "contenttypes.contenttype", "pk": 30}, {"fields": {"model": "studentfieldoverride", "app_label": "courseware"}, "model": "contenttypes.contenttype", "pk": 31}, {"fields": {"model": "anonymoususerid", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 32}, {"fields": {"model": "userstanding", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 33}, {"fields": {"model": "userprofile", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 34}, {"fields": {"model": "usersignupsource", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 35}, {"fields": {"model": "usertestgroup", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 36}, {"fields": {"model": "registration", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 37}, {"fields": {"model": "pendingnamechange", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 38}, {"fields": {"model": "pendingemailchange", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 39}, {"fields": {"model": "passwordhistory", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 40}, {"fields": {"model": "loginfailures", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 41}, {"fields": {"model": "historicalcourseenrollment", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 42}, {"fields": {"model": "courseenrollment", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 43}, {"fields": {"model": "manualenrollmentaudit", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 44}, {"fields": {"model": "courseenrollmentallowed", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 45}, {"fields": {"model": "courseaccessrole", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 46}, {"fields": {"model": "dashboardconfiguration", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 47}, {"fields": {"model": "linkedinaddtoprofileconfiguration", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 48}, {"fields": {"model": "entranceexamconfiguration", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 49}, {"fields": {"model": "languageproficiency", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 50}, {"fields": {"model": "courseenrollmentattribute", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 51}, {"fields": {"model": "enrollmentrefundconfiguration", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 52}, {"fields": {"model": "trackinglog", "app_label": "track"}, "model": "contenttypes.contenttype", "pk": 53}, {"fields": {"model": "ratelimitconfiguration", "app_label": "util"}, "model": "contenttypes.contenttype", "pk": 54}, {"fields": {"model": "certificatewhitelist", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 55}, {"fields": {"model": "generatedcertificate", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 56}, {"fields": {"model": "certificategenerationhistory", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 57}, {"fields": {"model": "certificateinvalidation", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 58}, {"fields": {"model": "examplecertificateset", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 59}, {"fields": {"model": "examplecertificate", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 60}, {"fields": {"model": "certificategenerationcoursesetting", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 61}, {"fields": {"model": "certificategenerationconfiguration", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 62}, {"fields": {"model": "certificatehtmlviewconfiguration", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 63}, {"fields": {"model": "certificatetemplate", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 64}, {"fields": {"model": "certificatetemplateasset", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 65}, {"fields": {"model": "instructortask", "app_label": "instructor_task"}, "model": "contenttypes.contenttype", "pk": 66}, {"fields": {"model": "courseusergroup", "app_label": "course_groups"}, "model": "contenttypes.contenttype", "pk": 67}, {"fields": {"model": "cohortmembership", "app_label": "course_groups"}, "model": "contenttypes.contenttype", "pk": 68}, {"fields": {"model": "courseusergrouppartitiongroup", "app_label": "course_groups"}, "model": "contenttypes.contenttype", "pk": 69}, {"fields": {"model": "coursecohortssettings", "app_label": "course_groups"}, "model": "contenttypes.contenttype", "pk": 70}, {"fields": {"model": "coursecohort", "app_label": "course_groups"}, "model": "contenttypes.contenttype", "pk": 71}, {"fields": {"model": "courseemail", "app_label": "bulk_email"}, "model": "contenttypes.contenttype", "pk": 72}, {"fields": {"model": "optout", "app_label": "bulk_email"}, "model": "contenttypes.contenttype", "pk": 73}, {"fields": {"model": "courseemailtemplate", "app_label": "bulk_email"}, "model": "contenttypes.contenttype", "pk": 74}, {"fields": {"model": "courseauthorization", "app_label": "bulk_email"}, "model": "contenttypes.contenttype", "pk": 75}, {"fields": {"model": "brandinginfoconfig", "app_label": "branding"}, "model": "contenttypes.contenttype", "pk": 76}, {"fields": {"model": "brandingapiconfig", "app_label": "branding"}, "model": "contenttypes.contenttype", "pk": 77}, {"fields": {"model": "externalauthmap", "app_label": "external_auth"}, "model": "contenttypes.contenttype", "pk": 78}, {"fields": {"model": "nonce", "app_label": "django_openid_auth"}, "model": "contenttypes.contenttype", "pk": 79}, {"fields": {"model": "association", "app_label": "django_openid_auth"}, "model": "contenttypes.contenttype", "pk": 80}, {"fields": {"model": "useropenid", "app_label": "django_openid_auth"}, "model": "contenttypes.contenttype", "pk": 81}, {"fields": {"model": "client", "app_label": "oauth2"}, "model": "contenttypes.contenttype", "pk": 82}, {"fields": {"model": "grant", "app_label": "oauth2"}, "model": "contenttypes.contenttype", "pk": 83}, {"fields": {"model": "accesstoken", "app_label": "oauth2"}, "model": "contenttypes.contenttype", "pk": 84}, {"fields": {"model": "refreshtoken", "app_label": "oauth2"}, "model": "contenttypes.contenttype", "pk": 85}, {"fields": {"model": "trustedclient", "app_label": "edx_oauth2_provider"}, "model": "contenttypes.contenttype", "pk": 86}, {"fields": {"model": "application", "app_label": "oauth2_provider"}, "model": "contenttypes.contenttype", "pk": 87}, {"fields": {"model": "grant", "app_label": "oauth2_provider"}, "model": "contenttypes.contenttype", "pk": 88}, {"fields": {"model": "accesstoken", "app_label": "oauth2_provider"}, "model": "contenttypes.contenttype", "pk": 89}, {"fields": {"model": "refreshtoken", "app_label": "oauth2_provider"}, "model": "contenttypes.contenttype", "pk": 90}, {"fields": {"model": "oauth2providerconfig", "app_label": "third_party_auth"}, "model": "contenttypes.contenttype", "pk": 91}, {"fields": {"model": "samlproviderconfig", "app_label": "third_party_auth"}, "model": "contenttypes.contenttype", "pk": 92}, {"fields": {"model": "samlconfiguration", "app_label": "third_party_auth"}, "model": "contenttypes.contenttype", "pk": 93}, {"fields": {"model": "samlproviderdata", "app_label": "third_party_auth"}, "model": "contenttypes.contenttype", "pk": 94}, {"fields": {"model": "ltiproviderconfig", "app_label": "third_party_auth"}, "model": "contenttypes.contenttype", "pk": 95}, {"fields": {"model": "providerapipermissions", "app_label": "third_party_auth"}, "model": "contenttypes.contenttype", "pk": 96}, {"fields": {"model": "nonce", "app_label": "oauth_provider"}, "model": "contenttypes.contenttype", "pk": 97}, {"fields": {"model": "scope", "app_label": "oauth_provider"}, "model": "contenttypes.contenttype", "pk": 98}, {"fields": {"model": "consumer", "app_label": "oauth_provider"}, "model": "contenttypes.contenttype", "pk": 99}, {"fields": {"model": "token", "app_label": "oauth_provider"}, "model": "contenttypes.contenttype", "pk": 100}, {"fields": {"model": "resource", "app_label": "oauth_provider"}, "model": "contenttypes.contenttype", "pk": 101}, {"fields": {"model": "article", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 102}, {"fields": {"model": "articleforobject", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 103}, {"fields": {"model": "articlerevision", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 104}, {"fields": {"model": "urlpath", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 105}, {"fields": {"model": "articleplugin", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 106}, {"fields": {"model": "reusableplugin", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 107}, {"fields": {"model": "simpleplugin", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 108}, {"fields": {"model": "revisionplugin", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 109}, {"fields": {"model": "revisionpluginrevision", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 110}, {"fields": {"model": "image", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 111}, {"fields": {"model": "imagerevision", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 112}, {"fields": {"model": "attachment", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 113}, {"fields": {"model": "attachmentrevision", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 114}, {"fields": {"model": "notificationtype", "app_label": "django_notify"}, "model": "contenttypes.contenttype", "pk": 115}, {"fields": {"model": "settings", "app_label": "django_notify"}, "model": "contenttypes.contenttype", "pk": 116}, {"fields": {"model": "subscription", "app_label": "django_notify"}, "model": "contenttypes.contenttype", "pk": 117}, {"fields": {"model": "notification", "app_label": "django_notify"}, "model": "contenttypes.contenttype", "pk": 118}, {"fields": {"model": "logentry", "app_label": "admin"}, "model": "contenttypes.contenttype", "pk": 119}, {"fields": {"model": "role", "app_label": "django_comment_common"}, "model": "contenttypes.contenttype", "pk": 120}, {"fields": {"model": "permission", "app_label": "django_comment_common"}, "model": "contenttypes.contenttype", "pk": 121}, {"fields": {"model": "note", "app_label": "notes"}, "model": "contenttypes.contenttype", "pk": 122}, {"fields": {"model": "splashconfig", "app_label": "splash"}, "model": "contenttypes.contenttype", "pk": 123}, {"fields": {"model": "userpreference", "app_label": "user_api"}, "model": "contenttypes.contenttype", "pk": 124}, {"fields": {"model": "usercoursetag", "app_label": "user_api"}, "model": "contenttypes.contenttype", "pk": 125}, {"fields": {"model": "userorgtag", "app_label": "user_api"}, "model": "contenttypes.contenttype", "pk": 126}, {"fields": {"model": "order", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 127}, {"fields": {"model": "orderitem", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 128}, {"fields": {"model": "invoice", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 129}, {"fields": {"model": "invoicetransaction", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 130}, {"fields": {"model": "invoiceitem", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 131}, {"fields": {"model": "courseregistrationcodeinvoiceitem", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 132}, {"fields": {"model": "invoicehistory", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 133}, {"fields": {"model": "courseregistrationcode", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 134}, {"fields": {"model": "registrationcoderedemption", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 135}, {"fields": {"model": "coupon", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 136}, {"fields": {"model": "couponredemption", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 137}, {"fields": {"model": "paidcourseregistration", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 138}, {"fields": {"model": "courseregcodeitem", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 139}, {"fields": {"model": "courseregcodeitemannotation", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 140}, {"fields": {"model": "paidcourseregistrationannotation", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 141}, {"fields": {"model": "certificateitem", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 142}, {"fields": {"model": "donationconfiguration", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 143}, {"fields": {"model": "donation", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 144}, {"fields": {"model": "coursemode", "app_label": "course_modes"}, "model": "contenttypes.contenttype", "pk": 145}, {"fields": {"model": "coursemodesarchive", "app_label": "course_modes"}, "model": "contenttypes.contenttype", "pk": 146}, {"fields": {"model": "coursemodeexpirationconfig", "app_label": "course_modes"}, "model": "contenttypes.contenttype", "pk": 147}, {"fields": {"model": "softwaresecurephotoverification", "app_label": "verify_student"}, "model": "contenttypes.contenttype", "pk": 148}, {"fields": {"model": "historicalverificationdeadline", "app_label": "verify_student"}, "model": "contenttypes.contenttype", "pk": 149}, {"fields": {"model": "verificationdeadline", "app_label": "verify_student"}, "model": "contenttypes.contenttype", "pk": 150}, {"fields": {"model": "verificationcheckpoint", "app_label": "verify_student"}, "model": "contenttypes.contenttype", "pk": 151}, {"fields": {"model": "verificationstatus", "app_label": "verify_student"}, "model": "contenttypes.contenttype", "pk": 152}, {"fields": {"model": "incoursereverificationconfiguration", "app_label": "verify_student"}, "model": "contenttypes.contenttype", "pk": 153}, {"fields": {"model": "icrvstatusemailsconfiguration", "app_label": "verify_student"}, "model": "contenttypes.contenttype", "pk": 154}, {"fields": {"model": "skippedreverification", "app_label": "verify_student"}, "model": "contenttypes.contenttype", "pk": 155}, {"fields": {"model": "darklangconfig", "app_label": "dark_lang"}, "model": "contenttypes.contenttype", "pk": 156}, {"fields": {"model": "microsite", "app_label": "microsite_configuration"}, "model": "contenttypes.contenttype", "pk": 157}, {"fields": {"model": "micrositehistory", "app_label": "microsite_configuration"}, "model": "contenttypes.contenttype", "pk": 158}, {"fields": {"model": "historicalmicrositeorganizationmapping", "app_label": "microsite_configuration"}, "model": "contenttypes.contenttype", "pk": 159}, {"fields": {"model": "micrositeorganizationmapping", "app_label": "microsite_configuration"}, "model": "contenttypes.contenttype", "pk": 160}, {"fields": {"model": "historicalmicrositetemplate", "app_label": "microsite_configuration"}, "model": "contenttypes.contenttype", "pk": 161}, {"fields": {"model": "micrositetemplate", "app_label": "microsite_configuration"}, "model": "contenttypes.contenttype", "pk": 162}, {"fields": {"model": "whitelistedrssurl", "app_label": "rss_proxy"}, "model": "contenttypes.contenttype", "pk": 163}, {"fields": {"model": "embargoedcourse", "app_label": "embargo"}, "model": "contenttypes.contenttype", "pk": 164}, {"fields": {"model": "embargoedstate", "app_label": "embargo"}, "model": "contenttypes.contenttype", "pk": 165}, {"fields": {"model": "restrictedcourse", "app_label": "embargo"}, "model": "contenttypes.contenttype", "pk": 166}, {"fields": {"model": "country", "app_label": "embargo"}, "model": "contenttypes.contenttype", "pk": 167}, {"fields": {"model": "countryaccessrule", "app_label": "embargo"}, "model": "contenttypes.contenttype", "pk": 168}, {"fields": {"model": "courseaccessrulehistory", "app_label": "embargo"}, "model": "contenttypes.contenttype", "pk": 169}, {"fields": {"model": "ipfilter", "app_label": "embargo"}, "model": "contenttypes.contenttype", "pk": 170}, {"fields": {"model": "coursererunstate", "app_label": "course_action_state"}, "model": "contenttypes.contenttype", "pk": 171}, {"fields": {"model": "mobileapiconfig", "app_label": "mobile_api"}, "model": "contenttypes.contenttype", "pk": 172}, {"fields": {"model": "usersocialauth", "app_label": "default"}, "model": "contenttypes.contenttype", "pk": 173}, {"fields": {"model": "nonce", "app_label": "default"}, "model": "contenttypes.contenttype", "pk": 174}, {"fields": {"model": "association", "app_label": "default"}, "model": "contenttypes.contenttype", "pk": 175}, {"fields": {"model": "code", "app_label": "default"}, "model": "contenttypes.contenttype", "pk": 176}, {"fields": {"model": "surveyform", "app_label": "survey"}, "model": "contenttypes.contenttype", "pk": 177}, {"fields": {"model": "surveyanswer", "app_label": "survey"}, "model": "contenttypes.contenttype", "pk": 178}, {"fields": {"model": "xblockasidesconfig", "app_label": "lms_xblock"}, "model": "contenttypes.contenttype", "pk": 179}, {"fields": {"model": "courseoverview", "app_label": "course_overviews"}, "model": "contenttypes.contenttype", "pk": 180}, {"fields": {"model": "courseoverviewtab", "app_label": "course_overviews"}, "model": "contenttypes.contenttype", "pk": 181}, {"fields": {"model": "courseoverviewimageset", "app_label": "course_overviews"}, "model": "contenttypes.contenttype", "pk": 182}, {"fields": {"model": "courseoverviewimageconfig", "app_label": "course_overviews"}, "model": "contenttypes.contenttype", "pk": 183}, {"fields": {"model": "coursestructure", "app_label": "course_structures"}, "model": "contenttypes.contenttype", "pk": 184}, {"fields": {"model": "corsmodel", "app_label": "corsheaders"}, "model": "contenttypes.contenttype", "pk": 185}, {"fields": {"model": "xdomainproxyconfiguration", "app_label": "cors_csrf"}, "model": "contenttypes.contenttype", "pk": 186}, {"fields": {"model": "commerceconfiguration", "app_label": "commerce"}, "model": "contenttypes.contenttype", "pk": 187}, {"fields": {"model": "creditprovider", "app_label": "credit"}, "model": "contenttypes.contenttype", "pk": 188}, {"fields": {"model": "creditcourse", "app_label": "credit"}, "model": "contenttypes.contenttype", "pk": 189}, {"fields": {"model": "creditrequirement", "app_label": "credit"}, "model": "contenttypes.contenttype", "pk": 190}, {"fields": {"model": "historicalcreditrequirementstatus", "app_label": "credit"}, "model": "contenttypes.contenttype", "pk": 191}, {"fields": {"model": "creditrequirementstatus", "app_label": "credit"}, "model": "contenttypes.contenttype", "pk": 192}, {"fields": {"model": "crediteligibility", "app_label": "credit"}, "model": "contenttypes.contenttype", "pk": 193}, {"fields": {"model": "historicalcreditrequest", "app_label": "credit"}, "model": "contenttypes.contenttype", "pk": 194}, {"fields": {"model": "creditrequest", "app_label": "credit"}, "model": "contenttypes.contenttype", "pk": 195}, {"fields": {"model": "creditconfig", "app_label": "credit"}, "model": "contenttypes.contenttype", "pk": 196}, {"fields": {"model": "courseteam", "app_label": "teams"}, "model": "contenttypes.contenttype", "pk": 197}, {"fields": {"model": "courseteammembership", "app_label": "teams"}, "model": "contenttypes.contenttype", "pk": 198}, {"fields": {"model": "xblockdisableconfig", "app_label": "xblock_django"}, "model": "contenttypes.contenttype", "pk": 199}, {"fields": {"model": "bookmark", "app_label": "bookmarks"}, "model": "contenttypes.contenttype", "pk": 200}, {"fields": {"model": "xblockcache", "app_label": "bookmarks"}, "model": "contenttypes.contenttype", "pk": 201}, {"fields": {"model": "programsapiconfig", "app_label": "programs"}, "model": "contenttypes.contenttype", "pk": 202}, {"fields": {"model": "selfpacedconfiguration", "app_label": "self_paced"}, "model": "contenttypes.contenttype", "pk": 203}, {"fields": {"model": "kvstore", "app_label": "thumbnail"}, "model": "contenttypes.contenttype", "pk": 204}, {"fields": {"model": "credentialsapiconfig", "app_label": "credentials"}, "model": "contenttypes.contenttype", "pk": 205}, {"fields": {"model": "milestone", "app_label": "milestones"}, "model": "contenttypes.contenttype", "pk": 206}, {"fields": {"model": "milestonerelationshiptype", "app_label": "milestones"}, "model": "contenttypes.contenttype", "pk": 207}, {"fields": {"model": "coursemilestone", "app_label": "milestones"}, "model": "contenttypes.contenttype", "pk": 208}, {"fields": {"model": "coursecontentmilestone", "app_label": "milestones"}, "model": "contenttypes.contenttype", "pk": 209}, {"fields": {"model": "usermilestone", "app_label": "milestones"}, "model": "contenttypes.contenttype", "pk": 210}, {"fields": {"model": "coursetalkwidgetconfiguration", "app_label": "coursetalk"}, "model": "contenttypes.contenttype", "pk": 211}, {"fields": {"model": "historicalapiaccessrequest", "app_label": "api_admin"}, "model": "contenttypes.contenttype", "pk": 212}, {"fields": {"model": "verifiedtrackcohortedcourse", "app_label": "verified_track_content"}, "model": "contenttypes.contenttype", "pk": 213}, {"fields": {"model": "badgeclass", "app_label": "badges"}, "model": "contenttypes.contenttype", "pk": 214}, {"fields": {"model": "badgeassertion", "app_label": "badges"}, "model": "contenttypes.contenttype", "pk": 215}, {"fields": {"model": "coursecompleteimageconfiguration", "app_label": "badges"}, "model": "contenttypes.contenttype", "pk": 216}, {"fields": {"model": "courseeventbadgesconfiguration", "app_label": "badges"}, "model": "contenttypes.contenttype", "pk": 217}, {"fields": {"model": "answer", "app_label": "mentoring"}, "model": "contenttypes.contenttype", "pk": 218}, {"fields": {"model": "answer", "app_label": "problem_builder"}, "model": "contenttypes.contenttype", "pk": 219}, {"fields": {"model": "share", "app_label": "problem_builder"}, "model": "contenttypes.contenttype", "pk": 220}, {"fields": {"model": "studentitem", "app_label": "submissions"}, "model": "contenttypes.contenttype", "pk": 221}, {"fields": {"model": "submission", "app_label": "submissions"}, "model": "contenttypes.contenttype", "pk": 222}, {"fields": {"model": "score", "app_label": "submissions"}, "model": "contenttypes.contenttype", "pk": 223}, {"fields": {"model": "scoresummary", "app_label": "submissions"}, "model": "contenttypes.contenttype", "pk": 224}, {"fields": {"model": "scoreannotation", "app_label": "submissions"}, "model": "contenttypes.contenttype", "pk": 225}, {"fields": {"model": "rubric", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 226}, {"fields": {"model": "criterion", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 227}, {"fields": {"model": "criterionoption", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 228}, {"fields": {"model": "assessment", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 229}, {"fields": {"model": "assessmentpart", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 230}, {"fields": {"model": "assessmentfeedbackoption", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 231}, {"fields": {"model": "assessmentfeedback", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 232}, {"fields": {"model": "peerworkflow", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 233}, {"fields": {"model": "peerworkflowitem", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 234}, {"fields": {"model": "trainingexample", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 235}, {"fields": {"model": "studenttrainingworkflow", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 236}, {"fields": {"model": "studenttrainingworkflowitem", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 237}, {"fields": {"model": "aiclassifierset", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 238}, {"fields": {"model": "aiclassifier", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 239}, {"fields": {"model": "aitrainingworkflow", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 240}, {"fields": {"model": "aigradingworkflow", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 241}, {"fields": {"model": "staffworkflow", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 242}, {"fields": {"model": "assessmentworkflow", "app_label": "workflow"}, "model": "contenttypes.contenttype", "pk": 243}, {"fields": {"model": "assessmentworkflowstep", "app_label": "workflow"}, "model": "contenttypes.contenttype", "pk": 244}, {"fields": {"model": "assessmentworkflowcancellation", "app_label": "workflow"}, "model": "contenttypes.contenttype", "pk": 245}, {"fields": {"model": "profile", "app_label": "edxval"}, "model": "contenttypes.contenttype", "pk": 246}, {"fields": {"model": "video", "app_label": "edxval"}, "model": "contenttypes.contenttype", "pk": 247}, {"fields": {"model": "coursevideo", "app_label": "edxval"}, "model": "contenttypes.contenttype", "pk": 248}, {"fields": {"model": "encodedvideo", "app_label": "edxval"}, "model": "contenttypes.contenttype", "pk": 249}, {"fields": {"model": "subtitle", "app_label": "edxval"}, "model": "contenttypes.contenttype", "pk": 250}, {"fields": {"model": "proctoredexam", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 251}, {"fields": {"model": "proctoredexamreviewpolicy", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 252}, {"fields": {"model": "proctoredexamreviewpolicyhistory", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 253}, {"fields": {"model": "proctoredexamstudentattempt", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 254}, {"fields": {"model": "proctoredexamstudentattempthistory", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 255}, {"fields": {"model": "proctoredexamstudentallowance", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 256}, {"fields": {"model": "proctoredexamstudentallowancehistory", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 257}, {"fields": {"model": "proctoredexamsoftwaresecurereview", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 258}, {"fields": {"model": "proctoredexamsoftwaresecurereviewhistory", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 259}, {"fields": {"model": "proctoredexamsoftwaresecurecomment", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 260}, {"fields": {"model": "organization", "app_label": "organizations"}, "model": "contenttypes.contenttype", "pk": 261}, {"fields": {"model": "organizationcourse", "app_label": "organizations"}, "model": "contenttypes.contenttype", "pk": 262}, {"fields": {"model": "studentmodulehistoryextended", "app_label": "coursewarehistoryextended"}, "model": "contenttypes.contenttype", "pk": 263}, {"fields": {"model": "videouploadconfig", "app_label": "contentstore"}, "model": "contenttypes.contenttype", "pk": 264}, {"fields": {"model": "pushnotificationconfig", "app_label": "contentstore"}, "model": "contenttypes.contenttype", "pk": 265}, {"fields": {"model": "coursecreator", "app_label": "course_creators"}, "model": "contenttypes.contenttype", "pk": 266}, {"fields": {"model": "studioconfig", "app_label": "xblock_config"}, "model": "contenttypes.contenttype", "pk": 267}, {"fields": {"domain": "example.com", "name": "example.com"}, "model": "sites.site", "pk": 1}, {"fields": {"plain_template": "{course_title}\n\n{{message_body}}\r\n----\r\nCopyright 2013 edX, All rights reserved.\r\n----\r\nConnect with edX:\r\nFacebook (http://facebook.com/edxonline)\r\nTwitter (http://twitter.com/edxonline)\r\nGoogle+ (https://plus.google.com/108235383044095082735)\r\nMeetup (http://www.meetup.com/edX-Communities/)\r\n----\r\nThis email was automatically sent from {platform_name}.\r\nYou are receiving this email at address {email} because you are enrolled in {course_title}\r\n(URL: {course_url} ).\r\nTo stop receiving email like this, update your course email settings at {email_settings_url}.\r\n", "html_template": " Update from {course_title}

edX
Connect with edX:        

{course_title}


{{message_body}}
       
Copyright \u00a9 2013 edX, All rights reserved.


Our mailing address is:
edX
11 Cambridge Center, Suite 101
Cambridge, MA, USA 02142


This email was automatically sent from {platform_name}.
You are receiving this email at address {email} because you are enrolled in {course_title}.
To stop receiving email like this, update your course email settings here.
", "name": null}, "model": "bulk_email.courseemailtemplate", "pk": 1}, {"fields": {"plain_template": "THIS IS A BRANDED TEXT TEMPLATE. {course_title}\n\n{{message_body}}\r\n----\r\nCopyright 2013 edX, All rights reserved.\r\n----\r\nConnect with edX:\r\nFacebook (http://facebook.com/edxonline)\r\nTwitter (http://twitter.com/edxonline)\r\nGoogle+ (https://plus.google.com/108235383044095082735)\r\nMeetup (http://www.meetup.com/edX-Communities/)\r\n----\r\nThis email was automatically sent from {platform_name}.\r\nYou are receiving this email at address {email} because you are enrolled in {course_title}\r\n(URL: {course_url} ).\r\nTo stop receiving email like this, update your course email settings at {email_settings_url}.\r\n", "html_template": " THIS IS A BRANDED HTML TEMPLATE Update from {course_title}

edX
Connect with edX:        

{course_title}


{{message_body}}
       
Copyright \u00a9 2013 edX, All rights reserved.


Our mailing address is:
edX
11 Cambridge Center, Suite 101
Cambridge, MA, USA 02142


This email was automatically sent from {platform_name}.
You are receiving this email at address {email} because you are enrolled in {course_title}.
To stop receiving email like this, update your course email settings here.
", "name": "branded.template"}, "model": "bulk_email.courseemailtemplate", "pk": 2}, {"fields": {"country": "AF"}, "model": "embargo.country", "pk": 1}, {"fields": {"country": "AX"}, "model": "embargo.country", "pk": 2}, {"fields": {"country": "AL"}, "model": "embargo.country", "pk": 3}, {"fields": {"country": "DZ"}, "model": "embargo.country", "pk": 4}, {"fields": {"country": "AS"}, "model": "embargo.country", "pk": 5}, {"fields": {"country": "AD"}, "model": "embargo.country", "pk": 6}, {"fields": {"country": "AO"}, "model": "embargo.country", "pk": 7}, {"fields": {"country": "AI"}, "model": "embargo.country", "pk": 8}, {"fields": {"country": "AQ"}, "model": "embargo.country", "pk": 9}, {"fields": {"country": "AG"}, "model": "embargo.country", "pk": 10}, {"fields": {"country": "AR"}, "model": "embargo.country", "pk": 11}, {"fields": {"country": "AM"}, "model": "embargo.country", "pk": 12}, {"fields": {"country": "AW"}, "model": "embargo.country", "pk": 13}, {"fields": {"country": "AU"}, "model": "embargo.country", "pk": 14}, {"fields": {"country": "AT"}, "model": "embargo.country", "pk": 15}, {"fields": {"country": "AZ"}, "model": "embargo.country", "pk": 16}, {"fields": {"country": "BS"}, "model": "embargo.country", "pk": 17}, {"fields": {"country": "BH"}, "model": "embargo.country", "pk": 18}, {"fields": {"country": "BD"}, "model": "embargo.country", "pk": 19}, {"fields": {"country": "BB"}, "model": "embargo.country", "pk": 20}, {"fields": {"country": "BY"}, "model": "embargo.country", "pk": 21}, {"fields": {"country": "BE"}, "model": "embargo.country", "pk": 22}, {"fields": {"country": "BZ"}, "model": "embargo.country", "pk": 23}, {"fields": {"country": "BJ"}, "model": "embargo.country", "pk": 24}, {"fields": {"country": "BM"}, "model": "embargo.country", "pk": 25}, {"fields": {"country": "BT"}, "model": "embargo.country", "pk": 26}, {"fields": {"country": "BO"}, "model": "embargo.country", "pk": 27}, {"fields": {"country": "BQ"}, "model": "embargo.country", "pk": 28}, {"fields": {"country": "BA"}, "model": "embargo.country", "pk": 29}, {"fields": {"country": "BW"}, "model": "embargo.country", "pk": 30}, {"fields": {"country": "BV"}, "model": "embargo.country", "pk": 31}, {"fields": {"country": "BR"}, "model": "embargo.country", "pk": 32}, {"fields": {"country": "IO"}, "model": "embargo.country", "pk": 33}, {"fields": {"country": "BN"}, "model": "embargo.country", "pk": 34}, {"fields": {"country": "BG"}, "model": "embargo.country", "pk": 35}, {"fields": {"country": "BF"}, "model": "embargo.country", "pk": 36}, {"fields": {"country": "BI"}, "model": "embargo.country", "pk": 37}, {"fields": {"country": "CV"}, "model": "embargo.country", "pk": 38}, {"fields": {"country": "KH"}, "model": "embargo.country", "pk": 39}, {"fields": {"country": "CM"}, "model": "embargo.country", "pk": 40}, {"fields": {"country": "CA"}, "model": "embargo.country", "pk": 41}, {"fields": {"country": "KY"}, "model": "embargo.country", "pk": 42}, {"fields": {"country": "CF"}, "model": "embargo.country", "pk": 43}, {"fields": {"country": "TD"}, "model": "embargo.country", "pk": 44}, {"fields": {"country": "CL"}, "model": "embargo.country", "pk": 45}, {"fields": {"country": "CN"}, "model": "embargo.country", "pk": 46}, {"fields": {"country": "CX"}, "model": "embargo.country", "pk": 47}, {"fields": {"country": "CC"}, "model": "embargo.country", "pk": 48}, {"fields": {"country": "CO"}, "model": "embargo.country", "pk": 49}, {"fields": {"country": "KM"}, "model": "embargo.country", "pk": 50}, {"fields": {"country": "CG"}, "model": "embargo.country", "pk": 51}, {"fields": {"country": "CD"}, "model": "embargo.country", "pk": 52}, {"fields": {"country": "CK"}, "model": "embargo.country", "pk": 53}, {"fields": {"country": "CR"}, "model": "embargo.country", "pk": 54}, {"fields": {"country": "CI"}, "model": "embargo.country", "pk": 55}, {"fields": {"country": "HR"}, "model": "embargo.country", "pk": 56}, {"fields": {"country": "CU"}, "model": "embargo.country", "pk": 57}, {"fields": {"country": "CW"}, "model": "embargo.country", "pk": 58}, {"fields": {"country": "CY"}, "model": "embargo.country", "pk": 59}, {"fields": {"country": "CZ"}, "model": "embargo.country", "pk": 60}, {"fields": {"country": "DK"}, "model": "embargo.country", "pk": 61}, {"fields": {"country": "DJ"}, "model": "embargo.country", "pk": 62}, {"fields": {"country": "DM"}, "model": "embargo.country", "pk": 63}, {"fields": {"country": "DO"}, "model": "embargo.country", "pk": 64}, {"fields": {"country": "EC"}, "model": "embargo.country", "pk": 65}, {"fields": {"country": "EG"}, "model": "embargo.country", "pk": 66}, {"fields": {"country": "SV"}, "model": "embargo.country", "pk": 67}, {"fields": {"country": "GQ"}, "model": "embargo.country", "pk": 68}, {"fields": {"country": "ER"}, "model": "embargo.country", "pk": 69}, {"fields": {"country": "EE"}, "model": "embargo.country", "pk": 70}, {"fields": {"country": "ET"}, "model": "embargo.country", "pk": 71}, {"fields": {"country": "FK"}, "model": "embargo.country", "pk": 72}, {"fields": {"country": "FO"}, "model": "embargo.country", "pk": 73}, {"fields": {"country": "FJ"}, "model": "embargo.country", "pk": 74}, {"fields": {"country": "FI"}, "model": "embargo.country", "pk": 75}, {"fields": {"country": "FR"}, "model": "embargo.country", "pk": 76}, {"fields": {"country": "GF"}, "model": "embargo.country", "pk": 77}, {"fields": {"country": "PF"}, "model": "embargo.country", "pk": 78}, {"fields": {"country": "TF"}, "model": "embargo.country", "pk": 79}, {"fields": {"country": "GA"}, "model": "embargo.country", "pk": 80}, {"fields": {"country": "GM"}, "model": "embargo.country", "pk": 81}, {"fields": {"country": "GE"}, "model": "embargo.country", "pk": 82}, {"fields": {"country": "DE"}, "model": "embargo.country", "pk": 83}, {"fields": {"country": "GH"}, "model": "embargo.country", "pk": 84}, {"fields": {"country": "GI"}, "model": "embargo.country", "pk": 85}, {"fields": {"country": "GR"}, "model": "embargo.country", "pk": 86}, {"fields": {"country": "GL"}, "model": "embargo.country", "pk": 87}, {"fields": {"country": "GD"}, "model": "embargo.country", "pk": 88}, {"fields": {"country": "GP"}, "model": "embargo.country", "pk": 89}, {"fields": {"country": "GU"}, "model": "embargo.country", "pk": 90}, {"fields": {"country": "GT"}, "model": "embargo.country", "pk": 91}, {"fields": {"country": "GG"}, "model": "embargo.country", "pk": 92}, {"fields": {"country": "GN"}, "model": "embargo.country", "pk": 93}, {"fields": {"country": "GW"}, "model": "embargo.country", "pk": 94}, {"fields": {"country": "GY"}, "model": "embargo.country", "pk": 95}, {"fields": {"country": "HT"}, "model": "embargo.country", "pk": 96}, {"fields": {"country": "HM"}, "model": "embargo.country", "pk": 97}, {"fields": {"country": "VA"}, "model": "embargo.country", "pk": 98}, {"fields": {"country": "HN"}, "model": "embargo.country", "pk": 99}, {"fields": {"country": "HK"}, "model": "embargo.country", "pk": 100}, {"fields": {"country": "HU"}, "model": "embargo.country", "pk": 101}, {"fields": {"country": "IS"}, "model": "embargo.country", "pk": 102}, {"fields": {"country": "IN"}, "model": "embargo.country", "pk": 103}, {"fields": {"country": "ID"}, "model": "embargo.country", "pk": 104}, {"fields": {"country": "IR"}, "model": "embargo.country", "pk": 105}, {"fields": {"country": "IQ"}, "model": "embargo.country", "pk": 106}, {"fields": {"country": "IE"}, "model": "embargo.country", "pk": 107}, {"fields": {"country": "IM"}, "model": "embargo.country", "pk": 108}, {"fields": {"country": "IL"}, "model": "embargo.country", "pk": 109}, {"fields": {"country": "IT"}, "model": "embargo.country", "pk": 110}, {"fields": {"country": "JM"}, "model": "embargo.country", "pk": 111}, {"fields": {"country": "JP"}, "model": "embargo.country", "pk": 112}, {"fields": {"country": "JE"}, "model": "embargo.country", "pk": 113}, {"fields": {"country": "JO"}, "model": "embargo.country", "pk": 114}, {"fields": {"country": "KZ"}, "model": "embargo.country", "pk": 115}, {"fields": {"country": "KE"}, "model": "embargo.country", "pk": 116}, {"fields": {"country": "KI"}, "model": "embargo.country", "pk": 117}, {"fields": {"country": "KW"}, "model": "embargo.country", "pk": 118}, {"fields": {"country": "KG"}, "model": "embargo.country", "pk": 119}, {"fields": {"country": "LA"}, "model": "embargo.country", "pk": 120}, {"fields": {"country": "LV"}, "model": "embargo.country", "pk": 121}, {"fields": {"country": "LB"}, "model": "embargo.country", "pk": 122}, {"fields": {"country": "LS"}, "model": "embargo.country", "pk": 123}, {"fields": {"country": "LR"}, "model": "embargo.country", "pk": 124}, {"fields": {"country": "LY"}, "model": "embargo.country", "pk": 125}, {"fields": {"country": "LI"}, "model": "embargo.country", "pk": 126}, {"fields": {"country": "LT"}, "model": "embargo.country", "pk": 127}, {"fields": {"country": "LU"}, "model": "embargo.country", "pk": 128}, {"fields": {"country": "MO"}, "model": "embargo.country", "pk": 129}, {"fields": {"country": "MK"}, "model": "embargo.country", "pk": 130}, {"fields": {"country": "MG"}, "model": "embargo.country", "pk": 131}, {"fields": {"country": "MW"}, "model": "embargo.country", "pk": 132}, {"fields": {"country": "MY"}, "model": "embargo.country", "pk": 133}, {"fields": {"country": "MV"}, "model": "embargo.country", "pk": 134}, {"fields": {"country": "ML"}, "model": "embargo.country", "pk": 135}, {"fields": {"country": "MT"}, "model": "embargo.country", "pk": 136}, {"fields": {"country": "MH"}, "model": "embargo.country", "pk": 137}, {"fields": {"country": "MQ"}, "model": "embargo.country", "pk": 138}, {"fields": {"country": "MR"}, "model": "embargo.country", "pk": 139}, {"fields": {"country": "MU"}, "model": "embargo.country", "pk": 140}, {"fields": {"country": "YT"}, "model": "embargo.country", "pk": 141}, {"fields": {"country": "MX"}, "model": "embargo.country", "pk": 142}, {"fields": {"country": "FM"}, "model": "embargo.country", "pk": 143}, {"fields": {"country": "MD"}, "model": "embargo.country", "pk": 144}, {"fields": {"country": "MC"}, "model": "embargo.country", "pk": 145}, {"fields": {"country": "MN"}, "model": "embargo.country", "pk": 146}, {"fields": {"country": "ME"}, "model": "embargo.country", "pk": 147}, {"fields": {"country": "MS"}, "model": "embargo.country", "pk": 148}, {"fields": {"country": "MA"}, "model": "embargo.country", "pk": 149}, {"fields": {"country": "MZ"}, "model": "embargo.country", "pk": 150}, {"fields": {"country": "MM"}, "model": "embargo.country", "pk": 151}, {"fields": {"country": "NA"}, "model": "embargo.country", "pk": 152}, {"fields": {"country": "NR"}, "model": "embargo.country", "pk": 153}, {"fields": {"country": "NP"}, "model": "embargo.country", "pk": 154}, {"fields": {"country": "NL"}, "model": "embargo.country", "pk": 155}, {"fields": {"country": "NC"}, "model": "embargo.country", "pk": 156}, {"fields": {"country": "NZ"}, "model": "embargo.country", "pk": 157}, {"fields": {"country": "NI"}, "model": "embargo.country", "pk": 158}, {"fields": {"country": "NE"}, "model": "embargo.country", "pk": 159}, {"fields": {"country": "NG"}, "model": "embargo.country", "pk": 160}, {"fields": {"country": "NU"}, "model": "embargo.country", "pk": 161}, {"fields": {"country": "NF"}, "model": "embargo.country", "pk": 162}, {"fields": {"country": "KP"}, "model": "embargo.country", "pk": 163}, {"fields": {"country": "MP"}, "model": "embargo.country", "pk": 164}, {"fields": {"country": "NO"}, "model": "embargo.country", "pk": 165}, {"fields": {"country": "OM"}, "model": "embargo.country", "pk": 166}, {"fields": {"country": "PK"}, "model": "embargo.country", "pk": 167}, {"fields": {"country": "PW"}, "model": "embargo.country", "pk": 168}, {"fields": {"country": "PS"}, "model": "embargo.country", "pk": 169}, {"fields": {"country": "PA"}, "model": "embargo.country", "pk": 170}, {"fields": {"country": "PG"}, "model": "embargo.country", "pk": 171}, {"fields": {"country": "PY"}, "model": "embargo.country", "pk": 172}, {"fields": {"country": "PE"}, "model": "embargo.country", "pk": 173}, {"fields": {"country": "PH"}, "model": "embargo.country", "pk": 174}, {"fields": {"country": "PN"}, "model": "embargo.country", "pk": 175}, {"fields": {"country": "PL"}, "model": "embargo.country", "pk": 176}, {"fields": {"country": "PT"}, "model": "embargo.country", "pk": 177}, {"fields": {"country": "PR"}, "model": "embargo.country", "pk": 178}, {"fields": {"country": "QA"}, "model": "embargo.country", "pk": 179}, {"fields": {"country": "RE"}, "model": "embargo.country", "pk": 180}, {"fields": {"country": "RO"}, "model": "embargo.country", "pk": 181}, {"fields": {"country": "RU"}, "model": "embargo.country", "pk": 182}, {"fields": {"country": "RW"}, "model": "embargo.country", "pk": 183}, {"fields": {"country": "BL"}, "model": "embargo.country", "pk": 184}, {"fields": {"country": "SH"}, "model": "embargo.country", "pk": 185}, {"fields": {"country": "KN"}, "model": "embargo.country", "pk": 186}, {"fields": {"country": "LC"}, "model": "embargo.country", "pk": 187}, {"fields": {"country": "MF"}, "model": "embargo.country", "pk": 188}, {"fields": {"country": "PM"}, "model": "embargo.country", "pk": 189}, {"fields": {"country": "VC"}, "model": "embargo.country", "pk": 190}, {"fields": {"country": "WS"}, "model": "embargo.country", "pk": 191}, {"fields": {"country": "SM"}, "model": "embargo.country", "pk": 192}, {"fields": {"country": "ST"}, "model": "embargo.country", "pk": 193}, {"fields": {"country": "SA"}, "model": "embargo.country", "pk": 194}, {"fields": {"country": "SN"}, "model": "embargo.country", "pk": 195}, {"fields": {"country": "RS"}, "model": "embargo.country", "pk": 196}, {"fields": {"country": "SC"}, "model": "embargo.country", "pk": 197}, {"fields": {"country": "SL"}, "model": "embargo.country", "pk": 198}, {"fields": {"country": "SG"}, "model": "embargo.country", "pk": 199}, {"fields": {"country": "SX"}, "model": "embargo.country", "pk": 200}, {"fields": {"country": "SK"}, "model": "embargo.country", "pk": 201}, {"fields": {"country": "SI"}, "model": "embargo.country", "pk": 202}, {"fields": {"country": "SB"}, "model": "embargo.country", "pk": 203}, {"fields": {"country": "SO"}, "model": "embargo.country", "pk": 204}, {"fields": {"country": "ZA"}, "model": "embargo.country", "pk": 205}, {"fields": {"country": "GS"}, "model": "embargo.country", "pk": 206}, {"fields": {"country": "KR"}, "model": "embargo.country", "pk": 207}, {"fields": {"country": "SS"}, "model": "embargo.country", "pk": 208}, {"fields": {"country": "ES"}, "model": "embargo.country", "pk": 209}, {"fields": {"country": "LK"}, "model": "embargo.country", "pk": 210}, {"fields": {"country": "SD"}, "model": "embargo.country", "pk": 211}, {"fields": {"country": "SR"}, "model": "embargo.country", "pk": 212}, {"fields": {"country": "SJ"}, "model": "embargo.country", "pk": 213}, {"fields": {"country": "SZ"}, "model": "embargo.country", "pk": 214}, {"fields": {"country": "SE"}, "model": "embargo.country", "pk": 215}, {"fields": {"country": "CH"}, "model": "embargo.country", "pk": 216}, {"fields": {"country": "SY"}, "model": "embargo.country", "pk": 217}, {"fields": {"country": "TW"}, "model": "embargo.country", "pk": 218}, {"fields": {"country": "TJ"}, "model": "embargo.country", "pk": 219}, {"fields": {"country": "TZ"}, "model": "embargo.country", "pk": 220}, {"fields": {"country": "TH"}, "model": "embargo.country", "pk": 221}, {"fields": {"country": "TL"}, "model": "embargo.country", "pk": 222}, {"fields": {"country": "TG"}, "model": "embargo.country", "pk": 223}, {"fields": {"country": "TK"}, "model": "embargo.country", "pk": 224}, {"fields": {"country": "TO"}, "model": "embargo.country", "pk": 225}, {"fields": {"country": "TT"}, "model": "embargo.country", "pk": 226}, {"fields": {"country": "TN"}, "model": "embargo.country", "pk": 227}, {"fields": {"country": "TR"}, "model": "embargo.country", "pk": 228}, {"fields": {"country": "TM"}, "model": "embargo.country", "pk": 229}, {"fields": {"country": "TC"}, "model": "embargo.country", "pk": 230}, {"fields": {"country": "TV"}, "model": "embargo.country", "pk": 231}, {"fields": {"country": "UG"}, "model": "embargo.country", "pk": 232}, {"fields": {"country": "UA"}, "model": "embargo.country", "pk": 233}, {"fields": {"country": "AE"}, "model": "embargo.country", "pk": 234}, {"fields": {"country": "GB"}, "model": "embargo.country", "pk": 235}, {"fields": {"country": "UM"}, "model": "embargo.country", "pk": 236}, {"fields": {"country": "US"}, "model": "embargo.country", "pk": 237}, {"fields": {"country": "UY"}, "model": "embargo.country", "pk": 238}, {"fields": {"country": "UZ"}, "model": "embargo.country", "pk": 239}, {"fields": {"country": "VU"}, "model": "embargo.country", "pk": 240}, {"fields": {"country": "VE"}, "model": "embargo.country", "pk": 241}, {"fields": {"country": "VN"}, "model": "embargo.country", "pk": 242}, {"fields": {"country": "VG"}, "model": "embargo.country", "pk": 243}, {"fields": {"country": "VI"}, "model": "embargo.country", "pk": 244}, {"fields": {"country": "WF"}, "model": "embargo.country", "pk": 245}, {"fields": {"country": "EH"}, "model": "embargo.country", "pk": 246}, {"fields": {"country": "YE"}, "model": "embargo.country", "pk": 247}, {"fields": {"country": "ZM"}, "model": "embargo.country", "pk": 248}, {"fields": {"country": "ZW"}, "model": "embargo.country", "pk": 249}, {"fields": {"active": true, "description": "Autogenerated milestone relationship type \"fulfills\"", "modified": "2016-04-01T20:18:58.118Z", "name": "fulfills", "created": "2016-04-01T20:18:58.118Z"}, "model": "milestones.milestonerelationshiptype", "pk": 1}, {"fields": {"active": true, "description": "Autogenerated milestone relationship type \"requires\"", "modified": "2016-04-01T20:18:58.121Z", "name": "requires", "created": "2016-04-01T20:18:58.120Z"}, "model": "milestones.milestonerelationshiptype", "pk": 2}, {"fields": {"default": false, "mode": "honor", "icon": "badges/honor_ISkRxsX.png"}, "model": "badges.coursecompleteimageconfiguration", "pk": 1}, {"fields": {"default": false, "mode": "verified", "icon": "badges/verified_oDzzMwx.png"}, "model": "badges.coursecompleteimageconfiguration", "pk": 2}, {"fields": {"default": false, "mode": "professional", "icon": "badges/professional_bjZOF1H.png"}, "model": "badges.coursecompleteimageconfiguration", "pk": 3}, {"fields": {"profile_name": "desktop_mp4"}, "model": "edxval.profile", "pk": 1}, {"fields": {"profile_name": "desktop_webm"}, "model": "edxval.profile", "pk": 2}, {"fields": {"profile_name": "mobile_high"}, "model": "edxval.profile", "pk": 3}, {"fields": {"profile_name": "mobile_low"}, "model": "edxval.profile", "pk": 4}, {"fields": {"profile_name": "youtube"}, "model": "edxval.profile", "pk": 5}, {"fields": {"codename": "add_permission", "name": "Can add permission", "content_type": 2}, "model": "auth.permission", "pk": 1}, {"fields": {"codename": "change_permission", "name": "Can change permission", "content_type": 2}, "model": "auth.permission", "pk": 2}, {"fields": {"codename": "delete_permission", "name": "Can delete permission", "content_type": 2}, "model": "auth.permission", "pk": 3}, {"fields": {"codename": "add_group", "name": "Can add group", "content_type": 3}, "model": "auth.permission", "pk": 4}, {"fields": {"codename": "change_group", "name": "Can change group", "content_type": 3}, "model": "auth.permission", "pk": 5}, {"fields": {"codename": "delete_group", "name": "Can delete group", "content_type": 3}, "model": "auth.permission", "pk": 6}, {"fields": {"codename": "add_user", "name": "Can add user", "content_type": 4}, "model": "auth.permission", "pk": 7}, {"fields": {"codename": "change_user", "name": "Can change user", "content_type": 4}, "model": "auth.permission", "pk": 8}, {"fields": {"codename": "delete_user", "name": "Can delete user", "content_type": 4}, "model": "auth.permission", "pk": 9}, {"fields": {"codename": "add_contenttype", "name": "Can add content type", "content_type": 5}, "model": "auth.permission", "pk": 10}, {"fields": {"codename": "change_contenttype", "name": "Can change content type", "content_type": 5}, "model": "auth.permission", "pk": 11}, {"fields": {"codename": "delete_contenttype", "name": "Can delete content type", "content_type": 5}, "model": "auth.permission", "pk": 12}, {"fields": {"codename": "add_session", "name": "Can add session", "content_type": 6}, "model": "auth.permission", "pk": 13}, {"fields": {"codename": "change_session", "name": "Can change session", "content_type": 6}, "model": "auth.permission", "pk": 14}, {"fields": {"codename": "delete_session", "name": "Can delete session", "content_type": 6}, "model": "auth.permission", "pk": 15}, {"fields": {"codename": "add_site", "name": "Can add site", "content_type": 7}, "model": "auth.permission", "pk": 16}, {"fields": {"codename": "change_site", "name": "Can change site", "content_type": 7}, "model": "auth.permission", "pk": 17}, {"fields": {"codename": "delete_site", "name": "Can delete site", "content_type": 7}, "model": "auth.permission", "pk": 18}, {"fields": {"codename": "add_taskmeta", "name": "Can add task state", "content_type": 8}, "model": "auth.permission", "pk": 19}, {"fields": {"codename": "change_taskmeta", "name": "Can change task state", "content_type": 8}, "model": "auth.permission", "pk": 20}, {"fields": {"codename": "delete_taskmeta", "name": "Can delete task state", "content_type": 8}, "model": "auth.permission", "pk": 21}, {"fields": {"codename": "add_tasksetmeta", "name": "Can add saved group result", "content_type": 9}, "model": "auth.permission", "pk": 22}, {"fields": {"codename": "change_tasksetmeta", "name": "Can change saved group result", "content_type": 9}, "model": "auth.permission", "pk": 23}, {"fields": {"codename": "delete_tasksetmeta", "name": "Can delete saved group result", "content_type": 9}, "model": "auth.permission", "pk": 24}, {"fields": {"codename": "add_intervalschedule", "name": "Can add interval", "content_type": 10}, "model": "auth.permission", "pk": 25}, {"fields": {"codename": "change_intervalschedule", "name": "Can change interval", "content_type": 10}, "model": "auth.permission", "pk": 26}, {"fields": {"codename": "delete_intervalschedule", "name": "Can delete interval", "content_type": 10}, "model": "auth.permission", "pk": 27}, {"fields": {"codename": "add_crontabschedule", "name": "Can add crontab", "content_type": 11}, "model": "auth.permission", "pk": 28}, {"fields": {"codename": "change_crontabschedule", "name": "Can change crontab", "content_type": 11}, "model": "auth.permission", "pk": 29}, {"fields": {"codename": "delete_crontabschedule", "name": "Can delete crontab", "content_type": 11}, "model": "auth.permission", "pk": 30}, {"fields": {"codename": "add_periodictasks", "name": "Can add periodic tasks", "content_type": 12}, "model": "auth.permission", "pk": 31}, {"fields": {"codename": "change_periodictasks", "name": "Can change periodic tasks", "content_type": 12}, "model": "auth.permission", "pk": 32}, {"fields": {"codename": "delete_periodictasks", "name": "Can delete periodic tasks", "content_type": 12}, "model": "auth.permission", "pk": 33}, {"fields": {"codename": "add_periodictask", "name": "Can add periodic task", "content_type": 13}, "model": "auth.permission", "pk": 34}, {"fields": {"codename": "change_periodictask", "name": "Can change periodic task", "content_type": 13}, "model": "auth.permission", "pk": 35}, {"fields": {"codename": "delete_periodictask", "name": "Can delete periodic task", "content_type": 13}, "model": "auth.permission", "pk": 36}, {"fields": {"codename": "add_workerstate", "name": "Can add worker", "content_type": 14}, "model": "auth.permission", "pk": 37}, {"fields": {"codename": "change_workerstate", "name": "Can change worker", "content_type": 14}, "model": "auth.permission", "pk": 38}, {"fields": {"codename": "delete_workerstate", "name": "Can delete worker", "content_type": 14}, "model": "auth.permission", "pk": 39}, {"fields": {"codename": "add_taskstate", "name": "Can add task", "content_type": 15}, "model": "auth.permission", "pk": 40}, {"fields": {"codename": "change_taskstate", "name": "Can change task", "content_type": 15}, "model": "auth.permission", "pk": 41}, {"fields": {"codename": "delete_taskstate", "name": "Can delete task", "content_type": 15}, "model": "auth.permission", "pk": 42}, {"fields": {"codename": "add_globalstatusmessage", "name": "Can add global status message", "content_type": 16}, "model": "auth.permission", "pk": 43}, {"fields": {"codename": "change_globalstatusmessage", "name": "Can change global status message", "content_type": 16}, "model": "auth.permission", "pk": 44}, {"fields": {"codename": "delete_globalstatusmessage", "name": "Can delete global status message", "content_type": 16}, "model": "auth.permission", "pk": 45}, {"fields": {"codename": "add_coursemessage", "name": "Can add course message", "content_type": 17}, "model": "auth.permission", "pk": 46}, {"fields": {"codename": "change_coursemessage", "name": "Can change course message", "content_type": 17}, "model": "auth.permission", "pk": 47}, {"fields": {"codename": "delete_coursemessage", "name": "Can delete course message", "content_type": 17}, "model": "auth.permission", "pk": 48}, {"fields": {"codename": "add_assetbaseurlconfig", "name": "Can add asset base url config", "content_type": 18}, "model": "auth.permission", "pk": 49}, {"fields": {"codename": "change_assetbaseurlconfig", "name": "Can change asset base url config", "content_type": 18}, "model": "auth.permission", "pk": 50}, {"fields": {"codename": "delete_assetbaseurlconfig", "name": "Can delete asset base url config", "content_type": 18}, "model": "auth.permission", "pk": 51}, {"fields": {"codename": "add_assetexcludedextensionsconfig", "name": "Can add asset excluded extensions config", "content_type": 19}, "model": "auth.permission", "pk": 52}, {"fields": {"codename": "change_assetexcludedextensionsconfig", "name": "Can change asset excluded extensions config", "content_type": 19}, "model": "auth.permission", "pk": 53}, {"fields": {"codename": "delete_assetexcludedextensionsconfig", "name": "Can delete asset excluded extensions config", "content_type": 19}, "model": "auth.permission", "pk": 54}, {"fields": {"codename": "add_courseassetcachettlconfig", "name": "Can add course asset cache ttl config", "content_type": 20}, "model": "auth.permission", "pk": 55}, {"fields": {"codename": "change_courseassetcachettlconfig", "name": "Can change course asset cache ttl config", "content_type": 20}, "model": "auth.permission", "pk": 56}, {"fields": {"codename": "delete_courseassetcachettlconfig", "name": "Can delete course asset cache ttl config", "content_type": 20}, "model": "auth.permission", "pk": 57}, {"fields": {"codename": "add_sitetheme", "name": "Can add site theme", "content_type": 21}, "model": "auth.permission", "pk": 58}, {"fields": {"codename": "change_sitetheme", "name": "Can change site theme", "content_type": 21}, "model": "auth.permission", "pk": 59}, {"fields": {"codename": "delete_sitetheme", "name": "Can delete site theme", "content_type": 21}, "model": "auth.permission", "pk": 60}, {"fields": {"codename": "add_siteconfiguration", "name": "Can add site configuration", "content_type": 22}, "model": "auth.permission", "pk": 61}, {"fields": {"codename": "change_siteconfiguration", "name": "Can change site configuration", "content_type": 22}, "model": "auth.permission", "pk": 62}, {"fields": {"codename": "delete_siteconfiguration", "name": "Can delete site configuration", "content_type": 22}, "model": "auth.permission", "pk": 63}, {"fields": {"codename": "add_siteconfigurationhistory", "name": "Can add site configuration history", "content_type": 23}, "model": "auth.permission", "pk": 64}, {"fields": {"codename": "change_siteconfigurationhistory", "name": "Can change site configuration history", "content_type": 23}, "model": "auth.permission", "pk": 65}, {"fields": {"codename": "delete_siteconfigurationhistory", "name": "Can delete site configuration history", "content_type": 23}, "model": "auth.permission", "pk": 66}, {"fields": {"codename": "add_studentmodule", "name": "Can add student module", "content_type": 24}, "model": "auth.permission", "pk": 67}, {"fields": {"codename": "change_studentmodule", "name": "Can change student module", "content_type": 24}, "model": "auth.permission", "pk": 68}, {"fields": {"codename": "delete_studentmodule", "name": "Can delete student module", "content_type": 24}, "model": "auth.permission", "pk": 69}, {"fields": {"codename": "add_studentmodulehistory", "name": "Can add student module history", "content_type": 25}, "model": "auth.permission", "pk": 70}, {"fields": {"codename": "change_studentmodulehistory", "name": "Can change student module history", "content_type": 25}, "model": "auth.permission", "pk": 71}, {"fields": {"codename": "delete_studentmodulehistory", "name": "Can delete student module history", "content_type": 25}, "model": "auth.permission", "pk": 72}, {"fields": {"codename": "add_xmoduleuserstatesummaryfield", "name": "Can add x module user state summary field", "content_type": 26}, "model": "auth.permission", "pk": 73}, {"fields": {"codename": "change_xmoduleuserstatesummaryfield", "name": "Can change x module user state summary field", "content_type": 26}, "model": "auth.permission", "pk": 74}, {"fields": {"codename": "delete_xmoduleuserstatesummaryfield", "name": "Can delete x module user state summary field", "content_type": 26}, "model": "auth.permission", "pk": 75}, {"fields": {"codename": "add_xmodulestudentprefsfield", "name": "Can add x module student prefs field", "content_type": 27}, "model": "auth.permission", "pk": 76}, {"fields": {"codename": "change_xmodulestudentprefsfield", "name": "Can change x module student prefs field", "content_type": 27}, "model": "auth.permission", "pk": 77}, {"fields": {"codename": "delete_xmodulestudentprefsfield", "name": "Can delete x module student prefs field", "content_type": 27}, "model": "auth.permission", "pk": 78}, {"fields": {"codename": "add_xmodulestudentinfofield", "name": "Can add x module student info field", "content_type": 28}, "model": "auth.permission", "pk": 79}, {"fields": {"codename": "change_xmodulestudentinfofield", "name": "Can change x module student info field", "content_type": 28}, "model": "auth.permission", "pk": 80}, {"fields": {"codename": "delete_xmodulestudentinfofield", "name": "Can delete x module student info field", "content_type": 28}, "model": "auth.permission", "pk": 81}, {"fields": {"codename": "add_offlinecomputedgrade", "name": "Can add offline computed grade", "content_type": 29}, "model": "auth.permission", "pk": 82}, {"fields": {"codename": "change_offlinecomputedgrade", "name": "Can change offline computed grade", "content_type": 29}, "model": "auth.permission", "pk": 83}, {"fields": {"codename": "delete_offlinecomputedgrade", "name": "Can delete offline computed grade", "content_type": 29}, "model": "auth.permission", "pk": 84}, {"fields": {"codename": "add_offlinecomputedgradelog", "name": "Can add offline computed grade log", "content_type": 30}, "model": "auth.permission", "pk": 85}, {"fields": {"codename": "change_offlinecomputedgradelog", "name": "Can change offline computed grade log", "content_type": 30}, "model": "auth.permission", "pk": 86}, {"fields": {"codename": "delete_offlinecomputedgradelog", "name": "Can delete offline computed grade log", "content_type": 30}, "model": "auth.permission", "pk": 87}, {"fields": {"codename": "add_studentfieldoverride", "name": "Can add student field override", "content_type": 31}, "model": "auth.permission", "pk": 88}, {"fields": {"codename": "change_studentfieldoverride", "name": "Can change student field override", "content_type": 31}, "model": "auth.permission", "pk": 89}, {"fields": {"codename": "delete_studentfieldoverride", "name": "Can delete student field override", "content_type": 31}, "model": "auth.permission", "pk": 90}, {"fields": {"codename": "add_anonymoususerid", "name": "Can add anonymous user id", "content_type": 32}, "model": "auth.permission", "pk": 91}, {"fields": {"codename": "change_anonymoususerid", "name": "Can change anonymous user id", "content_type": 32}, "model": "auth.permission", "pk": 92}, {"fields": {"codename": "delete_anonymoususerid", "name": "Can delete anonymous user id", "content_type": 32}, "model": "auth.permission", "pk": 93}, {"fields": {"codename": "add_userstanding", "name": "Can add user standing", "content_type": 33}, "model": "auth.permission", "pk": 94}, {"fields": {"codename": "change_userstanding", "name": "Can change user standing", "content_type": 33}, "model": "auth.permission", "pk": 95}, {"fields": {"codename": "delete_userstanding", "name": "Can delete user standing", "content_type": 33}, "model": "auth.permission", "pk": 96}, {"fields": {"codename": "add_userprofile", "name": "Can add user profile", "content_type": 34}, "model": "auth.permission", "pk": 97}, {"fields": {"codename": "change_userprofile", "name": "Can change user profile", "content_type": 34}, "model": "auth.permission", "pk": 98}, {"fields": {"codename": "delete_userprofile", "name": "Can delete user profile", "content_type": 34}, "model": "auth.permission", "pk": 99}, {"fields": {"codename": "add_usersignupsource", "name": "Can add user signup source", "content_type": 35}, "model": "auth.permission", "pk": 100}, {"fields": {"codename": "change_usersignupsource", "name": "Can change user signup source", "content_type": 35}, "model": "auth.permission", "pk": 101}, {"fields": {"codename": "delete_usersignupsource", "name": "Can delete user signup source", "content_type": 35}, "model": "auth.permission", "pk": 102}, {"fields": {"codename": "add_usertestgroup", "name": "Can add user test group", "content_type": 36}, "model": "auth.permission", "pk": 103}, {"fields": {"codename": "change_usertestgroup", "name": "Can change user test group", "content_type": 36}, "model": "auth.permission", "pk": 104}, {"fields": {"codename": "delete_usertestgroup", "name": "Can delete user test group", "content_type": 36}, "model": "auth.permission", "pk": 105}, {"fields": {"codename": "add_registration", "name": "Can add registration", "content_type": 37}, "model": "auth.permission", "pk": 106}, {"fields": {"codename": "change_registration", "name": "Can change registration", "content_type": 37}, "model": "auth.permission", "pk": 107}, {"fields": {"codename": "delete_registration", "name": "Can delete registration", "content_type": 37}, "model": "auth.permission", "pk": 108}, {"fields": {"codename": "add_pendingnamechange", "name": "Can add pending name change", "content_type": 38}, "model": "auth.permission", "pk": 109}, {"fields": {"codename": "change_pendingnamechange", "name": "Can change pending name change", "content_type": 38}, "model": "auth.permission", "pk": 110}, {"fields": {"codename": "delete_pendingnamechange", "name": "Can delete pending name change", "content_type": 38}, "model": "auth.permission", "pk": 111}, {"fields": {"codename": "add_pendingemailchange", "name": "Can add pending email change", "content_type": 39}, "model": "auth.permission", "pk": 112}, {"fields": {"codename": "change_pendingemailchange", "name": "Can change pending email change", "content_type": 39}, "model": "auth.permission", "pk": 113}, {"fields": {"codename": "delete_pendingemailchange", "name": "Can delete pending email change", "content_type": 39}, "model": "auth.permission", "pk": 114}, {"fields": {"codename": "add_passwordhistory", "name": "Can add password history", "content_type": 40}, "model": "auth.permission", "pk": 115}, {"fields": {"codename": "change_passwordhistory", "name": "Can change password history", "content_type": 40}, "model": "auth.permission", "pk": 116}, {"fields": {"codename": "delete_passwordhistory", "name": "Can delete password history", "content_type": 40}, "model": "auth.permission", "pk": 117}, {"fields": {"codename": "add_loginfailures", "name": "Can add login failures", "content_type": 41}, "model": "auth.permission", "pk": 118}, {"fields": {"codename": "change_loginfailures", "name": "Can change login failures", "content_type": 41}, "model": "auth.permission", "pk": 119}, {"fields": {"codename": "delete_loginfailures", "name": "Can delete login failures", "content_type": 41}, "model": "auth.permission", "pk": 120}, {"fields": {"codename": "add_historicalcourseenrollment", "name": "Can add historical course enrollment", "content_type": 42}, "model": "auth.permission", "pk": 121}, {"fields": {"codename": "change_historicalcourseenrollment", "name": "Can change historical course enrollment", "content_type": 42}, "model": "auth.permission", "pk": 122}, {"fields": {"codename": "delete_historicalcourseenrollment", "name": "Can delete historical course enrollment", "content_type": 42}, "model": "auth.permission", "pk": 123}, {"fields": {"codename": "add_courseenrollment", "name": "Can add course enrollment", "content_type": 43}, "model": "auth.permission", "pk": 124}, {"fields": {"codename": "change_courseenrollment", "name": "Can change course enrollment", "content_type": 43}, "model": "auth.permission", "pk": 125}, {"fields": {"codename": "delete_courseenrollment", "name": "Can delete course enrollment", "content_type": 43}, "model": "auth.permission", "pk": 126}, {"fields": {"codename": "add_manualenrollmentaudit", "name": "Can add manual enrollment audit", "content_type": 44}, "model": "auth.permission", "pk": 127}, {"fields": {"codename": "change_manualenrollmentaudit", "name": "Can change manual enrollment audit", "content_type": 44}, "model": "auth.permission", "pk": 128}, {"fields": {"codename": "delete_manualenrollmentaudit", "name": "Can delete manual enrollment audit", "content_type": 44}, "model": "auth.permission", "pk": 129}, {"fields": {"codename": "add_courseenrollmentallowed", "name": "Can add course enrollment allowed", "content_type": 45}, "model": "auth.permission", "pk": 130}, {"fields": {"codename": "change_courseenrollmentallowed", "name": "Can change course enrollment allowed", "content_type": 45}, "model": "auth.permission", "pk": 131}, {"fields": {"codename": "delete_courseenrollmentallowed", "name": "Can delete course enrollment allowed", "content_type": 45}, "model": "auth.permission", "pk": 132}, {"fields": {"codename": "add_courseaccessrole", "name": "Can add course access role", "content_type": 46}, "model": "auth.permission", "pk": 133}, {"fields": {"codename": "change_courseaccessrole", "name": "Can change course access role", "content_type": 46}, "model": "auth.permission", "pk": 134}, {"fields": {"codename": "delete_courseaccessrole", "name": "Can delete course access role", "content_type": 46}, "model": "auth.permission", "pk": 135}, {"fields": {"codename": "add_dashboardconfiguration", "name": "Can add dashboard configuration", "content_type": 47}, "model": "auth.permission", "pk": 136}, {"fields": {"codename": "change_dashboardconfiguration", "name": "Can change dashboard configuration", "content_type": 47}, "model": "auth.permission", "pk": 137}, {"fields": {"codename": "delete_dashboardconfiguration", "name": "Can delete dashboard configuration", "content_type": 47}, "model": "auth.permission", "pk": 138}, {"fields": {"codename": "add_linkedinaddtoprofileconfiguration", "name": "Can add linked in add to profile configuration", "content_type": 48}, "model": "auth.permission", "pk": 139}, {"fields": {"codename": "change_linkedinaddtoprofileconfiguration", "name": "Can change linked in add to profile configuration", "content_type": 48}, "model": "auth.permission", "pk": 140}, {"fields": {"codename": "delete_linkedinaddtoprofileconfiguration", "name": "Can delete linked in add to profile configuration", "content_type": 48}, "model": "auth.permission", "pk": 141}, {"fields": {"codename": "add_entranceexamconfiguration", "name": "Can add entrance exam configuration", "content_type": 49}, "model": "auth.permission", "pk": 142}, {"fields": {"codename": "change_entranceexamconfiguration", "name": "Can change entrance exam configuration", "content_type": 49}, "model": "auth.permission", "pk": 143}, {"fields": {"codename": "delete_entranceexamconfiguration", "name": "Can delete entrance exam configuration", "content_type": 49}, "model": "auth.permission", "pk": 144}, {"fields": {"codename": "add_languageproficiency", "name": "Can add language proficiency", "content_type": 50}, "model": "auth.permission", "pk": 145}, {"fields": {"codename": "change_languageproficiency", "name": "Can change language proficiency", "content_type": 50}, "model": "auth.permission", "pk": 146}, {"fields": {"codename": "delete_languageproficiency", "name": "Can delete language proficiency", "content_type": 50}, "model": "auth.permission", "pk": 147}, {"fields": {"codename": "add_courseenrollmentattribute", "name": "Can add course enrollment attribute", "content_type": 51}, "model": "auth.permission", "pk": 148}, {"fields": {"codename": "change_courseenrollmentattribute", "name": "Can change course enrollment attribute", "content_type": 51}, "model": "auth.permission", "pk": 149}, {"fields": {"codename": "delete_courseenrollmentattribute", "name": "Can delete course enrollment attribute", "content_type": 51}, "model": "auth.permission", "pk": 150}, {"fields": {"codename": "add_enrollmentrefundconfiguration", "name": "Can add enrollment refund configuration", "content_type": 52}, "model": "auth.permission", "pk": 151}, {"fields": {"codename": "change_enrollmentrefundconfiguration", "name": "Can change enrollment refund configuration", "content_type": 52}, "model": "auth.permission", "pk": 152}, {"fields": {"codename": "delete_enrollmentrefundconfiguration", "name": "Can delete enrollment refund configuration", "content_type": 52}, "model": "auth.permission", "pk": 153}, {"fields": {"codename": "add_trackinglog", "name": "Can add tracking log", "content_type": 53}, "model": "auth.permission", "pk": 154}, {"fields": {"codename": "change_trackinglog", "name": "Can change tracking log", "content_type": 53}, "model": "auth.permission", "pk": 155}, {"fields": {"codename": "delete_trackinglog", "name": "Can delete tracking log", "content_type": 53}, "model": "auth.permission", "pk": 156}, {"fields": {"codename": "add_ratelimitconfiguration", "name": "Can add rate limit configuration", "content_type": 54}, "model": "auth.permission", "pk": 157}, {"fields": {"codename": "change_ratelimitconfiguration", "name": "Can change rate limit configuration", "content_type": 54}, "model": "auth.permission", "pk": 158}, {"fields": {"codename": "delete_ratelimitconfiguration", "name": "Can delete rate limit configuration", "content_type": 54}, "model": "auth.permission", "pk": 159}, {"fields": {"codename": "add_certificatewhitelist", "name": "Can add certificate whitelist", "content_type": 55}, "model": "auth.permission", "pk": 160}, {"fields": {"codename": "change_certificatewhitelist", "name": "Can change certificate whitelist", "content_type": 55}, "model": "auth.permission", "pk": 161}, {"fields": {"codename": "delete_certificatewhitelist", "name": "Can delete certificate whitelist", "content_type": 55}, "model": "auth.permission", "pk": 162}, {"fields": {"codename": "add_generatedcertificate", "name": "Can add generated certificate", "content_type": 56}, "model": "auth.permission", "pk": 163}, {"fields": {"codename": "change_generatedcertificate", "name": "Can change generated certificate", "content_type": 56}, "model": "auth.permission", "pk": 164}, {"fields": {"codename": "delete_generatedcertificate", "name": "Can delete generated certificate", "content_type": 56}, "model": "auth.permission", "pk": 165}, {"fields": {"codename": "add_certificategenerationhistory", "name": "Can add certificate generation history", "content_type": 57}, "model": "auth.permission", "pk": 166}, {"fields": {"codename": "change_certificategenerationhistory", "name": "Can change certificate generation history", "content_type": 57}, "model": "auth.permission", "pk": 167}, {"fields": {"codename": "delete_certificategenerationhistory", "name": "Can delete certificate generation history", "content_type": 57}, "model": "auth.permission", "pk": 168}, {"fields": {"codename": "add_certificateinvalidation", "name": "Can add certificate invalidation", "content_type": 58}, "model": "auth.permission", "pk": 169}, {"fields": {"codename": "change_certificateinvalidation", "name": "Can change certificate invalidation", "content_type": 58}, "model": "auth.permission", "pk": 170}, {"fields": {"codename": "delete_certificateinvalidation", "name": "Can delete certificate invalidation", "content_type": 58}, "model": "auth.permission", "pk": 171}, {"fields": {"codename": "add_examplecertificateset", "name": "Can add example certificate set", "content_type": 59}, "model": "auth.permission", "pk": 172}, {"fields": {"codename": "change_examplecertificateset", "name": "Can change example certificate set", "content_type": 59}, "model": "auth.permission", "pk": 173}, {"fields": {"codename": "delete_examplecertificateset", "name": "Can delete example certificate set", "content_type": 59}, "model": "auth.permission", "pk": 174}, {"fields": {"codename": "add_examplecertificate", "name": "Can add example certificate", "content_type": 60}, "model": "auth.permission", "pk": 175}, {"fields": {"codename": "change_examplecertificate", "name": "Can change example certificate", "content_type": 60}, "model": "auth.permission", "pk": 176}, {"fields": {"codename": "delete_examplecertificate", "name": "Can delete example certificate", "content_type": 60}, "model": "auth.permission", "pk": 177}, {"fields": {"codename": "add_certificategenerationcoursesetting", "name": "Can add certificate generation course setting", "content_type": 61}, "model": "auth.permission", "pk": 178}, {"fields": {"codename": "change_certificategenerationcoursesetting", "name": "Can change certificate generation course setting", "content_type": 61}, "model": "auth.permission", "pk": 179}, {"fields": {"codename": "delete_certificategenerationcoursesetting", "name": "Can delete certificate generation course setting", "content_type": 61}, "model": "auth.permission", "pk": 180}, {"fields": {"codename": "add_certificategenerationconfiguration", "name": "Can add certificate generation configuration", "content_type": 62}, "model": "auth.permission", "pk": 181}, {"fields": {"codename": "change_certificategenerationconfiguration", "name": "Can change certificate generation configuration", "content_type": 62}, "model": "auth.permission", "pk": 182}, {"fields": {"codename": "delete_certificategenerationconfiguration", "name": "Can delete certificate generation configuration", "content_type": 62}, "model": "auth.permission", "pk": 183}, {"fields": {"codename": "add_certificatehtmlviewconfiguration", "name": "Can add certificate html view configuration", "content_type": 63}, "model": "auth.permission", "pk": 184}, {"fields": {"codename": "change_certificatehtmlviewconfiguration", "name": "Can change certificate html view configuration", "content_type": 63}, "model": "auth.permission", "pk": 185}, {"fields": {"codename": "delete_certificatehtmlviewconfiguration", "name": "Can delete certificate html view configuration", "content_type": 63}, "model": "auth.permission", "pk": 186}, {"fields": {"codename": "add_certificatetemplate", "name": "Can add certificate template", "content_type": 64}, "model": "auth.permission", "pk": 187}, {"fields": {"codename": "change_certificatetemplate", "name": "Can change certificate template", "content_type": 64}, "model": "auth.permission", "pk": 188}, {"fields": {"codename": "delete_certificatetemplate", "name": "Can delete certificate template", "content_type": 64}, "model": "auth.permission", "pk": 189}, {"fields": {"codename": "add_certificatetemplateasset", "name": "Can add certificate template asset", "content_type": 65}, "model": "auth.permission", "pk": 190}, {"fields": {"codename": "change_certificatetemplateasset", "name": "Can change certificate template asset", "content_type": 65}, "model": "auth.permission", "pk": 191}, {"fields": {"codename": "delete_certificatetemplateasset", "name": "Can delete certificate template asset", "content_type": 65}, "model": "auth.permission", "pk": 192}, {"fields": {"codename": "add_instructortask", "name": "Can add instructor task", "content_type": 66}, "model": "auth.permission", "pk": 193}, {"fields": {"codename": "change_instructortask", "name": "Can change instructor task", "content_type": 66}, "model": "auth.permission", "pk": 194}, {"fields": {"codename": "delete_instructortask", "name": "Can delete instructor task", "content_type": 66}, "model": "auth.permission", "pk": 195}, {"fields": {"codename": "add_courseusergroup", "name": "Can add course user group", "content_type": 67}, "model": "auth.permission", "pk": 196}, {"fields": {"codename": "change_courseusergroup", "name": "Can change course user group", "content_type": 67}, "model": "auth.permission", "pk": 197}, {"fields": {"codename": "delete_courseusergroup", "name": "Can delete course user group", "content_type": 67}, "model": "auth.permission", "pk": 198}, {"fields": {"codename": "add_cohortmembership", "name": "Can add cohort membership", "content_type": 68}, "model": "auth.permission", "pk": 199}, {"fields": {"codename": "change_cohortmembership", "name": "Can change cohort membership", "content_type": 68}, "model": "auth.permission", "pk": 200}, {"fields": {"codename": "delete_cohortmembership", "name": "Can delete cohort membership", "content_type": 68}, "model": "auth.permission", "pk": 201}, {"fields": {"codename": "add_courseusergrouppartitiongroup", "name": "Can add course user group partition group", "content_type": 69}, "model": "auth.permission", "pk": 202}, {"fields": {"codename": "change_courseusergrouppartitiongroup", "name": "Can change course user group partition group", "content_type": 69}, "model": "auth.permission", "pk": 203}, {"fields": {"codename": "delete_courseusergrouppartitiongroup", "name": "Can delete course user group partition group", "content_type": 69}, "model": "auth.permission", "pk": 204}, {"fields": {"codename": "add_coursecohortssettings", "name": "Can add course cohorts settings", "content_type": 70}, "model": "auth.permission", "pk": 205}, {"fields": {"codename": "change_coursecohortssettings", "name": "Can change course cohorts settings", "content_type": 70}, "model": "auth.permission", "pk": 206}, {"fields": {"codename": "delete_coursecohortssettings", "name": "Can delete course cohorts settings", "content_type": 70}, "model": "auth.permission", "pk": 207}, {"fields": {"codename": "add_coursecohort", "name": "Can add course cohort", "content_type": 71}, "model": "auth.permission", "pk": 208}, {"fields": {"codename": "change_coursecohort", "name": "Can change course cohort", "content_type": 71}, "model": "auth.permission", "pk": 209}, {"fields": {"codename": "delete_coursecohort", "name": "Can delete course cohort", "content_type": 71}, "model": "auth.permission", "pk": 210}, {"fields": {"codename": "add_courseemail", "name": "Can add course email", "content_type": 72}, "model": "auth.permission", "pk": 211}, {"fields": {"codename": "change_courseemail", "name": "Can change course email", "content_type": 72}, "model": "auth.permission", "pk": 212}, {"fields": {"codename": "delete_courseemail", "name": "Can delete course email", "content_type": 72}, "model": "auth.permission", "pk": 213}, {"fields": {"codename": "add_optout", "name": "Can add optout", "content_type": 73}, "model": "auth.permission", "pk": 214}, {"fields": {"codename": "change_optout", "name": "Can change optout", "content_type": 73}, "model": "auth.permission", "pk": 215}, {"fields": {"codename": "delete_optout", "name": "Can delete optout", "content_type": 73}, "model": "auth.permission", "pk": 216}, {"fields": {"codename": "add_courseemailtemplate", "name": "Can add course email template", "content_type": 74}, "model": "auth.permission", "pk": 217}, {"fields": {"codename": "change_courseemailtemplate", "name": "Can change course email template", "content_type": 74}, "model": "auth.permission", "pk": 218}, {"fields": {"codename": "delete_courseemailtemplate", "name": "Can delete course email template", "content_type": 74}, "model": "auth.permission", "pk": 219}, {"fields": {"codename": "add_courseauthorization", "name": "Can add course authorization", "content_type": 75}, "model": "auth.permission", "pk": 220}, {"fields": {"codename": "change_courseauthorization", "name": "Can change course authorization", "content_type": 75}, "model": "auth.permission", "pk": 221}, {"fields": {"codename": "delete_courseauthorization", "name": "Can delete course authorization", "content_type": 75}, "model": "auth.permission", "pk": 222}, {"fields": {"codename": "add_brandinginfoconfig", "name": "Can add branding info config", "content_type": 76}, "model": "auth.permission", "pk": 223}, {"fields": {"codename": "change_brandinginfoconfig", "name": "Can change branding info config", "content_type": 76}, "model": "auth.permission", "pk": 224}, {"fields": {"codename": "delete_brandinginfoconfig", "name": "Can delete branding info config", "content_type": 76}, "model": "auth.permission", "pk": 225}, {"fields": {"codename": "add_brandingapiconfig", "name": "Can add branding api config", "content_type": 77}, "model": "auth.permission", "pk": 226}, {"fields": {"codename": "change_brandingapiconfig", "name": "Can change branding api config", "content_type": 77}, "model": "auth.permission", "pk": 227}, {"fields": {"codename": "delete_brandingapiconfig", "name": "Can delete branding api config", "content_type": 77}, "model": "auth.permission", "pk": 228}, {"fields": {"codename": "add_externalauthmap", "name": "Can add external auth map", "content_type": 78}, "model": "auth.permission", "pk": 229}, {"fields": {"codename": "change_externalauthmap", "name": "Can change external auth map", "content_type": 78}, "model": "auth.permission", "pk": 230}, {"fields": {"codename": "delete_externalauthmap", "name": "Can delete external auth map", "content_type": 78}, "model": "auth.permission", "pk": 231}, {"fields": {"codename": "add_nonce", "name": "Can add nonce", "content_type": 79}, "model": "auth.permission", "pk": 232}, {"fields": {"codename": "change_nonce", "name": "Can change nonce", "content_type": 79}, "model": "auth.permission", "pk": 233}, {"fields": {"codename": "delete_nonce", "name": "Can delete nonce", "content_type": 79}, "model": "auth.permission", "pk": 234}, {"fields": {"codename": "add_association", "name": "Can add association", "content_type": 80}, "model": "auth.permission", "pk": 235}, {"fields": {"codename": "change_association", "name": "Can change association", "content_type": 80}, "model": "auth.permission", "pk": 236}, {"fields": {"codename": "delete_association", "name": "Can delete association", "content_type": 80}, "model": "auth.permission", "pk": 237}, {"fields": {"codename": "add_useropenid", "name": "Can add user open id", "content_type": 81}, "model": "auth.permission", "pk": 238}, {"fields": {"codename": "change_useropenid", "name": "Can change user open id", "content_type": 81}, "model": "auth.permission", "pk": 239}, {"fields": {"codename": "delete_useropenid", "name": "Can delete user open id", "content_type": 81}, "model": "auth.permission", "pk": 240}, {"fields": {"codename": "account_verified", "name": "The OpenID has been verified", "content_type": 81}, "model": "auth.permission", "pk": 241}, {"fields": {"codename": "add_client", "name": "Can add client", "content_type": 82}, "model": "auth.permission", "pk": 242}, {"fields": {"codename": "change_client", "name": "Can change client", "content_type": 82}, "model": "auth.permission", "pk": 243}, {"fields": {"codename": "delete_client", "name": "Can delete client", "content_type": 82}, "model": "auth.permission", "pk": 244}, {"fields": {"codename": "add_grant", "name": "Can add grant", "content_type": 83}, "model": "auth.permission", "pk": 245}, {"fields": {"codename": "change_grant", "name": "Can change grant", "content_type": 83}, "model": "auth.permission", "pk": 246}, {"fields": {"codename": "delete_grant", "name": "Can delete grant", "content_type": 83}, "model": "auth.permission", "pk": 247}, {"fields": {"codename": "add_accesstoken", "name": "Can add access token", "content_type": 84}, "model": "auth.permission", "pk": 248}, {"fields": {"codename": "change_accesstoken", "name": "Can change access token", "content_type": 84}, "model": "auth.permission", "pk": 249}, {"fields": {"codename": "delete_accesstoken", "name": "Can delete access token", "content_type": 84}, "model": "auth.permission", "pk": 250}, {"fields": {"codename": "add_refreshtoken", "name": "Can add refresh token", "content_type": 85}, "model": "auth.permission", "pk": 251}, {"fields": {"codename": "change_refreshtoken", "name": "Can change refresh token", "content_type": 85}, "model": "auth.permission", "pk": 252}, {"fields": {"codename": "delete_refreshtoken", "name": "Can delete refresh token", "content_type": 85}, "model": "auth.permission", "pk": 253}, {"fields": {"codename": "add_trustedclient", "name": "Can add trusted client", "content_type": 86}, "model": "auth.permission", "pk": 254}, {"fields": {"codename": "change_trustedclient", "name": "Can change trusted client", "content_type": 86}, "model": "auth.permission", "pk": 255}, {"fields": {"codename": "delete_trustedclient", "name": "Can delete trusted client", "content_type": 86}, "model": "auth.permission", "pk": 256}, {"fields": {"codename": "add_application", "name": "Can add application", "content_type": 87}, "model": "auth.permission", "pk": 257}, {"fields": {"codename": "change_application", "name": "Can change application", "content_type": 87}, "model": "auth.permission", "pk": 258}, {"fields": {"codename": "delete_application", "name": "Can delete application", "content_type": 87}, "model": "auth.permission", "pk": 259}, {"fields": {"codename": "add_grant", "name": "Can add grant", "content_type": 88}, "model": "auth.permission", "pk": 260}, {"fields": {"codename": "change_grant", "name": "Can change grant", "content_type": 88}, "model": "auth.permission", "pk": 261}, {"fields": {"codename": "delete_grant", "name": "Can delete grant", "content_type": 88}, "model": "auth.permission", "pk": 262}, {"fields": {"codename": "add_accesstoken", "name": "Can add access token", "content_type": 89}, "model": "auth.permission", "pk": 263}, {"fields": {"codename": "change_accesstoken", "name": "Can change access token", "content_type": 89}, "model": "auth.permission", "pk": 264}, {"fields": {"codename": "delete_accesstoken", "name": "Can delete access token", "content_type": 89}, "model": "auth.permission", "pk": 265}, {"fields": {"codename": "add_refreshtoken", "name": "Can add refresh token", "content_type": 90}, "model": "auth.permission", "pk": 266}, {"fields": {"codename": "change_refreshtoken", "name": "Can change refresh token", "content_type": 90}, "model": "auth.permission", "pk": 267}, {"fields": {"codename": "delete_refreshtoken", "name": "Can delete refresh token", "content_type": 90}, "model": "auth.permission", "pk": 268}, {"fields": {"codename": "add_oauth2providerconfig", "name": "Can add Provider Configuration (OAuth)", "content_type": 91}, "model": "auth.permission", "pk": 269}, {"fields": {"codename": "change_oauth2providerconfig", "name": "Can change Provider Configuration (OAuth)", "content_type": 91}, "model": "auth.permission", "pk": 270}, {"fields": {"codename": "delete_oauth2providerconfig", "name": "Can delete Provider Configuration (OAuth)", "content_type": 91}, "model": "auth.permission", "pk": 271}, {"fields": {"codename": "add_samlproviderconfig", "name": "Can add Provider Configuration (SAML IdP)", "content_type": 92}, "model": "auth.permission", "pk": 272}, {"fields": {"codename": "change_samlproviderconfig", "name": "Can change Provider Configuration (SAML IdP)", "content_type": 92}, "model": "auth.permission", "pk": 273}, {"fields": {"codename": "delete_samlproviderconfig", "name": "Can delete Provider Configuration (SAML IdP)", "content_type": 92}, "model": "auth.permission", "pk": 274}, {"fields": {"codename": "add_samlconfiguration", "name": "Can add SAML Configuration", "content_type": 93}, "model": "auth.permission", "pk": 275}, {"fields": {"codename": "change_samlconfiguration", "name": "Can change SAML Configuration", "content_type": 93}, "model": "auth.permission", "pk": 276}, {"fields": {"codename": "delete_samlconfiguration", "name": "Can delete SAML Configuration", "content_type": 93}, "model": "auth.permission", "pk": 277}, {"fields": {"codename": "add_samlproviderdata", "name": "Can add SAML Provider Data", "content_type": 94}, "model": "auth.permission", "pk": 278}, {"fields": {"codename": "change_samlproviderdata", "name": "Can change SAML Provider Data", "content_type": 94}, "model": "auth.permission", "pk": 279}, {"fields": {"codename": "delete_samlproviderdata", "name": "Can delete SAML Provider Data", "content_type": 94}, "model": "auth.permission", "pk": 280}, {"fields": {"codename": "add_ltiproviderconfig", "name": "Can add Provider Configuration (LTI)", "content_type": 95}, "model": "auth.permission", "pk": 281}, {"fields": {"codename": "change_ltiproviderconfig", "name": "Can change Provider Configuration (LTI)", "content_type": 95}, "model": "auth.permission", "pk": 282}, {"fields": {"codename": "delete_ltiproviderconfig", "name": "Can delete Provider Configuration (LTI)", "content_type": 95}, "model": "auth.permission", "pk": 283}, {"fields": {"codename": "add_providerapipermissions", "name": "Can add Provider API Permission", "content_type": 96}, "model": "auth.permission", "pk": 284}, {"fields": {"codename": "change_providerapipermissions", "name": "Can change Provider API Permission", "content_type": 96}, "model": "auth.permission", "pk": 285}, {"fields": {"codename": "delete_providerapipermissions", "name": "Can delete Provider API Permission", "content_type": 96}, "model": "auth.permission", "pk": 286}, {"fields": {"codename": "add_nonce", "name": "Can add nonce", "content_type": 97}, "model": "auth.permission", "pk": 287}, {"fields": {"codename": "change_nonce", "name": "Can change nonce", "content_type": 97}, "model": "auth.permission", "pk": 288}, {"fields": {"codename": "delete_nonce", "name": "Can delete nonce", "content_type": 97}, "model": "auth.permission", "pk": 289}, {"fields": {"codename": "add_scope", "name": "Can add scope", "content_type": 98}, "model": "auth.permission", "pk": 290}, {"fields": {"codename": "change_scope", "name": "Can change scope", "content_type": 98}, "model": "auth.permission", "pk": 291}, {"fields": {"codename": "delete_scope", "name": "Can delete scope", "content_type": 98}, "model": "auth.permission", "pk": 292}, {"fields": {"codename": "add_resource", "name": "Can add resource", "content_type": 98}, "model": "auth.permission", "pk": 293}, {"fields": {"codename": "change_resource", "name": "Can change resource", "content_type": 98}, "model": "auth.permission", "pk": 294}, {"fields": {"codename": "delete_resource", "name": "Can delete resource", "content_type": 98}, "model": "auth.permission", "pk": 295}, {"fields": {"codename": "add_consumer", "name": "Can add consumer", "content_type": 99}, "model": "auth.permission", "pk": 296}, {"fields": {"codename": "change_consumer", "name": "Can change consumer", "content_type": 99}, "model": "auth.permission", "pk": 297}, {"fields": {"codename": "delete_consumer", "name": "Can delete consumer", "content_type": 99}, "model": "auth.permission", "pk": 298}, {"fields": {"codename": "add_token", "name": "Can add token", "content_type": 100}, "model": "auth.permission", "pk": 299}, {"fields": {"codename": "change_token", "name": "Can change token", "content_type": 100}, "model": "auth.permission", "pk": 300}, {"fields": {"codename": "delete_token", "name": "Can delete token", "content_type": 100}, "model": "auth.permission", "pk": 301}, {"fields": {"codename": "add_article", "name": "Can add article", "content_type": 102}, "model": "auth.permission", "pk": 302}, {"fields": {"codename": "change_article", "name": "Can change article", "content_type": 102}, "model": "auth.permission", "pk": 303}, {"fields": {"codename": "delete_article", "name": "Can delete article", "content_type": 102}, "model": "auth.permission", "pk": 304}, {"fields": {"codename": "moderate", "name": "Can edit all articles and lock/unlock/restore", "content_type": 102}, "model": "auth.permission", "pk": 305}, {"fields": {"codename": "assign", "name": "Can change ownership of any article", "content_type": 102}, "model": "auth.permission", "pk": 306}, {"fields": {"codename": "grant", "name": "Can assign permissions to other users", "content_type": 102}, "model": "auth.permission", "pk": 307}, {"fields": {"codename": "add_articleforobject", "name": "Can add Article for object", "content_type": 103}, "model": "auth.permission", "pk": 308}, {"fields": {"codename": "change_articleforobject", "name": "Can change Article for object", "content_type": 103}, "model": "auth.permission", "pk": 309}, {"fields": {"codename": "delete_articleforobject", "name": "Can delete Article for object", "content_type": 103}, "model": "auth.permission", "pk": 310}, {"fields": {"codename": "add_articlerevision", "name": "Can add article revision", "content_type": 104}, "model": "auth.permission", "pk": 311}, {"fields": {"codename": "change_articlerevision", "name": "Can change article revision", "content_type": 104}, "model": "auth.permission", "pk": 312}, {"fields": {"codename": "delete_articlerevision", "name": "Can delete article revision", "content_type": 104}, "model": "auth.permission", "pk": 313}, {"fields": {"codename": "add_urlpath", "name": "Can add URL path", "content_type": 105}, "model": "auth.permission", "pk": 314}, {"fields": {"codename": "change_urlpath", "name": "Can change URL path", "content_type": 105}, "model": "auth.permission", "pk": 315}, {"fields": {"codename": "delete_urlpath", "name": "Can delete URL path", "content_type": 105}, "model": "auth.permission", "pk": 316}, {"fields": {"codename": "add_articleplugin", "name": "Can add article plugin", "content_type": 106}, "model": "auth.permission", "pk": 317}, {"fields": {"codename": "change_articleplugin", "name": "Can change article plugin", "content_type": 106}, "model": "auth.permission", "pk": 318}, {"fields": {"codename": "delete_articleplugin", "name": "Can delete article plugin", "content_type": 106}, "model": "auth.permission", "pk": 319}, {"fields": {"codename": "add_reusableplugin", "name": "Can add reusable plugin", "content_type": 107}, "model": "auth.permission", "pk": 320}, {"fields": {"codename": "change_reusableplugin", "name": "Can change reusable plugin", "content_type": 107}, "model": "auth.permission", "pk": 321}, {"fields": {"codename": "delete_reusableplugin", "name": "Can delete reusable plugin", "content_type": 107}, "model": "auth.permission", "pk": 322}, {"fields": {"codename": "add_simpleplugin", "name": "Can add simple plugin", "content_type": 108}, "model": "auth.permission", "pk": 323}, {"fields": {"codename": "change_simpleplugin", "name": "Can change simple plugin", "content_type": 108}, "model": "auth.permission", "pk": 324}, {"fields": {"codename": "delete_simpleplugin", "name": "Can delete simple plugin", "content_type": 108}, "model": "auth.permission", "pk": 325}, {"fields": {"codename": "add_revisionplugin", "name": "Can add revision plugin", "content_type": 109}, "model": "auth.permission", "pk": 326}, {"fields": {"codename": "change_revisionplugin", "name": "Can change revision plugin", "content_type": 109}, "model": "auth.permission", "pk": 327}, {"fields": {"codename": "delete_revisionplugin", "name": "Can delete revision plugin", "content_type": 109}, "model": "auth.permission", "pk": 328}, {"fields": {"codename": "add_revisionpluginrevision", "name": "Can add revision plugin revision", "content_type": 110}, "model": "auth.permission", "pk": 329}, {"fields": {"codename": "change_revisionpluginrevision", "name": "Can change revision plugin revision", "content_type": 110}, "model": "auth.permission", "pk": 330}, {"fields": {"codename": "delete_revisionpluginrevision", "name": "Can delete revision plugin revision", "content_type": 110}, "model": "auth.permission", "pk": 331}, {"fields": {"codename": "add_image", "name": "Can add image", "content_type": 111}, "model": "auth.permission", "pk": 332}, {"fields": {"codename": "change_image", "name": "Can change image", "content_type": 111}, "model": "auth.permission", "pk": 333}, {"fields": {"codename": "delete_image", "name": "Can delete image", "content_type": 111}, "model": "auth.permission", "pk": 334}, {"fields": {"codename": "add_imagerevision", "name": "Can add image revision", "content_type": 112}, "model": "auth.permission", "pk": 335}, {"fields": {"codename": "change_imagerevision", "name": "Can change image revision", "content_type": 112}, "model": "auth.permission", "pk": 336}, {"fields": {"codename": "delete_imagerevision", "name": "Can delete image revision", "content_type": 112}, "model": "auth.permission", "pk": 337}, {"fields": {"codename": "add_attachment", "name": "Can add attachment", "content_type": 113}, "model": "auth.permission", "pk": 338}, {"fields": {"codename": "change_attachment", "name": "Can change attachment", "content_type": 113}, "model": "auth.permission", "pk": 339}, {"fields": {"codename": "delete_attachment", "name": "Can delete attachment", "content_type": 113}, "model": "auth.permission", "pk": 340}, {"fields": {"codename": "add_attachmentrevision", "name": "Can add attachment revision", "content_type": 114}, "model": "auth.permission", "pk": 341}, {"fields": {"codename": "change_attachmentrevision", "name": "Can change attachment revision", "content_type": 114}, "model": "auth.permission", "pk": 342}, {"fields": {"codename": "delete_attachmentrevision", "name": "Can delete attachment revision", "content_type": 114}, "model": "auth.permission", "pk": 343}, {"fields": {"codename": "add_notificationtype", "name": "Can add type", "content_type": 115}, "model": "auth.permission", "pk": 344}, {"fields": {"codename": "change_notificationtype", "name": "Can change type", "content_type": 115}, "model": "auth.permission", "pk": 345}, {"fields": {"codename": "delete_notificationtype", "name": "Can delete type", "content_type": 115}, "model": "auth.permission", "pk": 346}, {"fields": {"codename": "add_settings", "name": "Can add settings", "content_type": 116}, "model": "auth.permission", "pk": 347}, {"fields": {"codename": "change_settings", "name": "Can change settings", "content_type": 116}, "model": "auth.permission", "pk": 348}, {"fields": {"codename": "delete_settings", "name": "Can delete settings", "content_type": 116}, "model": "auth.permission", "pk": 349}, {"fields": {"codename": "add_subscription", "name": "Can add subscription", "content_type": 117}, "model": "auth.permission", "pk": 350}, {"fields": {"codename": "change_subscription", "name": "Can change subscription", "content_type": 117}, "model": "auth.permission", "pk": 351}, {"fields": {"codename": "delete_subscription", "name": "Can delete subscription", "content_type": 117}, "model": "auth.permission", "pk": 352}, {"fields": {"codename": "add_notification", "name": "Can add notification", "content_type": 118}, "model": "auth.permission", "pk": 353}, {"fields": {"codename": "change_notification", "name": "Can change notification", "content_type": 118}, "model": "auth.permission", "pk": 354}, {"fields": {"codename": "delete_notification", "name": "Can delete notification", "content_type": 118}, "model": "auth.permission", "pk": 355}, {"fields": {"codename": "add_logentry", "name": "Can add log entry", "content_type": 119}, "model": "auth.permission", "pk": 356}, {"fields": {"codename": "change_logentry", "name": "Can change log entry", "content_type": 119}, "model": "auth.permission", "pk": 357}, {"fields": {"codename": "delete_logentry", "name": "Can delete log entry", "content_type": 119}, "model": "auth.permission", "pk": 358}, {"fields": {"codename": "add_role", "name": "Can add role", "content_type": 120}, "model": "auth.permission", "pk": 359}, {"fields": {"codename": "change_role", "name": "Can change role", "content_type": 120}, "model": "auth.permission", "pk": 360}, {"fields": {"codename": "delete_role", "name": "Can delete role", "content_type": 120}, "model": "auth.permission", "pk": 361}, {"fields": {"codename": "add_permission", "name": "Can add permission", "content_type": 121}, "model": "auth.permission", "pk": 362}, {"fields": {"codename": "change_permission", "name": "Can change permission", "content_type": 121}, "model": "auth.permission", "pk": 363}, {"fields": {"codename": "delete_permission", "name": "Can delete permission", "content_type": 121}, "model": "auth.permission", "pk": 364}, {"fields": {"codename": "add_note", "name": "Can add note", "content_type": 122}, "model": "auth.permission", "pk": 365}, {"fields": {"codename": "change_note", "name": "Can change note", "content_type": 122}, "model": "auth.permission", "pk": 366}, {"fields": {"codename": "delete_note", "name": "Can delete note", "content_type": 122}, "model": "auth.permission", "pk": 367}, {"fields": {"codename": "add_splashconfig", "name": "Can add splash config", "content_type": 123}, "model": "auth.permission", "pk": 368}, {"fields": {"codename": "change_splashconfig", "name": "Can change splash config", "content_type": 123}, "model": "auth.permission", "pk": 369}, {"fields": {"codename": "delete_splashconfig", "name": "Can delete splash config", "content_type": 123}, "model": "auth.permission", "pk": 370}, {"fields": {"codename": "add_userpreference", "name": "Can add user preference", "content_type": 124}, "model": "auth.permission", "pk": 371}, {"fields": {"codename": "change_userpreference", "name": "Can change user preference", "content_type": 124}, "model": "auth.permission", "pk": 372}, {"fields": {"codename": "delete_userpreference", "name": "Can delete user preference", "content_type": 124}, "model": "auth.permission", "pk": 373}, {"fields": {"codename": "add_usercoursetag", "name": "Can add user course tag", "content_type": 125}, "model": "auth.permission", "pk": 374}, {"fields": {"codename": "change_usercoursetag", "name": "Can change user course tag", "content_type": 125}, "model": "auth.permission", "pk": 375}, {"fields": {"codename": "delete_usercoursetag", "name": "Can delete user course tag", "content_type": 125}, "model": "auth.permission", "pk": 376}, {"fields": {"codename": "add_userorgtag", "name": "Can add user org tag", "content_type": 126}, "model": "auth.permission", "pk": 377}, {"fields": {"codename": "change_userorgtag", "name": "Can change user org tag", "content_type": 126}, "model": "auth.permission", "pk": 378}, {"fields": {"codename": "delete_userorgtag", "name": "Can delete user org tag", "content_type": 126}, "model": "auth.permission", "pk": 379}, {"fields": {"codename": "add_order", "name": "Can add order", "content_type": 127}, "model": "auth.permission", "pk": 380}, {"fields": {"codename": "change_order", "name": "Can change order", "content_type": 127}, "model": "auth.permission", "pk": 381}, {"fields": {"codename": "delete_order", "name": "Can delete order", "content_type": 127}, "model": "auth.permission", "pk": 382}, {"fields": {"codename": "add_orderitem", "name": "Can add order item", "content_type": 128}, "model": "auth.permission", "pk": 383}, {"fields": {"codename": "change_orderitem", "name": "Can change order item", "content_type": 128}, "model": "auth.permission", "pk": 384}, {"fields": {"codename": "delete_orderitem", "name": "Can delete order item", "content_type": 128}, "model": "auth.permission", "pk": 385}, {"fields": {"codename": "add_invoice", "name": "Can add invoice", "content_type": 129}, "model": "auth.permission", "pk": 386}, {"fields": {"codename": "change_invoice", "name": "Can change invoice", "content_type": 129}, "model": "auth.permission", "pk": 387}, {"fields": {"codename": "delete_invoice", "name": "Can delete invoice", "content_type": 129}, "model": "auth.permission", "pk": 388}, {"fields": {"codename": "add_invoicetransaction", "name": "Can add invoice transaction", "content_type": 130}, "model": "auth.permission", "pk": 389}, {"fields": {"codename": "change_invoicetransaction", "name": "Can change invoice transaction", "content_type": 130}, "model": "auth.permission", "pk": 390}, {"fields": {"codename": "delete_invoicetransaction", "name": "Can delete invoice transaction", "content_type": 130}, "model": "auth.permission", "pk": 391}, {"fields": {"codename": "add_invoiceitem", "name": "Can add invoice item", "content_type": 131}, "model": "auth.permission", "pk": 392}, {"fields": {"codename": "change_invoiceitem", "name": "Can change invoice item", "content_type": 131}, "model": "auth.permission", "pk": 393}, {"fields": {"codename": "delete_invoiceitem", "name": "Can delete invoice item", "content_type": 131}, "model": "auth.permission", "pk": 394}, {"fields": {"codename": "add_courseregistrationcodeinvoiceitem", "name": "Can add course registration code invoice item", "content_type": 132}, "model": "auth.permission", "pk": 395}, {"fields": {"codename": "change_courseregistrationcodeinvoiceitem", "name": "Can change course registration code invoice item", "content_type": 132}, "model": "auth.permission", "pk": 396}, {"fields": {"codename": "delete_courseregistrationcodeinvoiceitem", "name": "Can delete course registration code invoice item", "content_type": 132}, "model": "auth.permission", "pk": 397}, {"fields": {"codename": "add_invoicehistory", "name": "Can add invoice history", "content_type": 133}, "model": "auth.permission", "pk": 398}, {"fields": {"codename": "change_invoicehistory", "name": "Can change invoice history", "content_type": 133}, "model": "auth.permission", "pk": 399}, {"fields": {"codename": "delete_invoicehistory", "name": "Can delete invoice history", "content_type": 133}, "model": "auth.permission", "pk": 400}, {"fields": {"codename": "add_courseregistrationcode", "name": "Can add course registration code", "content_type": 134}, "model": "auth.permission", "pk": 401}, {"fields": {"codename": "change_courseregistrationcode", "name": "Can change course registration code", "content_type": 134}, "model": "auth.permission", "pk": 402}, {"fields": {"codename": "delete_courseregistrationcode", "name": "Can delete course registration code", "content_type": 134}, "model": "auth.permission", "pk": 403}, {"fields": {"codename": "add_registrationcoderedemption", "name": "Can add registration code redemption", "content_type": 135}, "model": "auth.permission", "pk": 404}, {"fields": {"codename": "change_registrationcoderedemption", "name": "Can change registration code redemption", "content_type": 135}, "model": "auth.permission", "pk": 405}, {"fields": {"codename": "delete_registrationcoderedemption", "name": "Can delete registration code redemption", "content_type": 135}, "model": "auth.permission", "pk": 406}, {"fields": {"codename": "add_coupon", "name": "Can add coupon", "content_type": 136}, "model": "auth.permission", "pk": 407}, {"fields": {"codename": "change_coupon", "name": "Can change coupon", "content_type": 136}, "model": "auth.permission", "pk": 408}, {"fields": {"codename": "delete_coupon", "name": "Can delete coupon", "content_type": 136}, "model": "auth.permission", "pk": 409}, {"fields": {"codename": "add_couponredemption", "name": "Can add coupon redemption", "content_type": 137}, "model": "auth.permission", "pk": 410}, {"fields": {"codename": "change_couponredemption", "name": "Can change coupon redemption", "content_type": 137}, "model": "auth.permission", "pk": 411}, {"fields": {"codename": "delete_couponredemption", "name": "Can delete coupon redemption", "content_type": 137}, "model": "auth.permission", "pk": 412}, {"fields": {"codename": "add_paidcourseregistration", "name": "Can add paid course registration", "content_type": 138}, "model": "auth.permission", "pk": 413}, {"fields": {"codename": "change_paidcourseregistration", "name": "Can change paid course registration", "content_type": 138}, "model": "auth.permission", "pk": 414}, {"fields": {"codename": "delete_paidcourseregistration", "name": "Can delete paid course registration", "content_type": 138}, "model": "auth.permission", "pk": 415}, {"fields": {"codename": "add_courseregcodeitem", "name": "Can add course reg code item", "content_type": 139}, "model": "auth.permission", "pk": 416}, {"fields": {"codename": "change_courseregcodeitem", "name": "Can change course reg code item", "content_type": 139}, "model": "auth.permission", "pk": 417}, {"fields": {"codename": "delete_courseregcodeitem", "name": "Can delete course reg code item", "content_type": 139}, "model": "auth.permission", "pk": 418}, {"fields": {"codename": "add_courseregcodeitemannotation", "name": "Can add course reg code item annotation", "content_type": 140}, "model": "auth.permission", "pk": 419}, {"fields": {"codename": "change_courseregcodeitemannotation", "name": "Can change course reg code item annotation", "content_type": 140}, "model": "auth.permission", "pk": 420}, {"fields": {"codename": "delete_courseregcodeitemannotation", "name": "Can delete course reg code item annotation", "content_type": 140}, "model": "auth.permission", "pk": 421}, {"fields": {"codename": "add_paidcourseregistrationannotation", "name": "Can add paid course registration annotation", "content_type": 141}, "model": "auth.permission", "pk": 422}, {"fields": {"codename": "change_paidcourseregistrationannotation", "name": "Can change paid course registration annotation", "content_type": 141}, "model": "auth.permission", "pk": 423}, {"fields": {"codename": "delete_paidcourseregistrationannotation", "name": "Can delete paid course registration annotation", "content_type": 141}, "model": "auth.permission", "pk": 424}, {"fields": {"codename": "add_certificateitem", "name": "Can add certificate item", "content_type": 142}, "model": "auth.permission", "pk": 425}, {"fields": {"codename": "change_certificateitem", "name": "Can change certificate item", "content_type": 142}, "model": "auth.permission", "pk": 426}, {"fields": {"codename": "delete_certificateitem", "name": "Can delete certificate item", "content_type": 142}, "model": "auth.permission", "pk": 427}, {"fields": {"codename": "add_donationconfiguration", "name": "Can add donation configuration", "content_type": 143}, "model": "auth.permission", "pk": 428}, {"fields": {"codename": "change_donationconfiguration", "name": "Can change donation configuration", "content_type": 143}, "model": "auth.permission", "pk": 429}, {"fields": {"codename": "delete_donationconfiguration", "name": "Can delete donation configuration", "content_type": 143}, "model": "auth.permission", "pk": 430}, {"fields": {"codename": "add_donation", "name": "Can add donation", "content_type": 144}, "model": "auth.permission", "pk": 431}, {"fields": {"codename": "change_donation", "name": "Can change donation", "content_type": 144}, "model": "auth.permission", "pk": 432}, {"fields": {"codename": "delete_donation", "name": "Can delete donation", "content_type": 144}, "model": "auth.permission", "pk": 433}, {"fields": {"codename": "add_coursemode", "name": "Can add course mode", "content_type": 145}, "model": "auth.permission", "pk": 434}, {"fields": {"codename": "change_coursemode", "name": "Can change course mode", "content_type": 145}, "model": "auth.permission", "pk": 435}, {"fields": {"codename": "delete_coursemode", "name": "Can delete course mode", "content_type": 145}, "model": "auth.permission", "pk": 436}, {"fields": {"codename": "add_coursemodesarchive", "name": "Can add course modes archive", "content_type": 146}, "model": "auth.permission", "pk": 437}, {"fields": {"codename": "change_coursemodesarchive", "name": "Can change course modes archive", "content_type": 146}, "model": "auth.permission", "pk": 438}, {"fields": {"codename": "delete_coursemodesarchive", "name": "Can delete course modes archive", "content_type": 146}, "model": "auth.permission", "pk": 439}, {"fields": {"codename": "add_coursemodeexpirationconfig", "name": "Can add course mode expiration config", "content_type": 147}, "model": "auth.permission", "pk": 440}, {"fields": {"codename": "change_coursemodeexpirationconfig", "name": "Can change course mode expiration config", "content_type": 147}, "model": "auth.permission", "pk": 441}, {"fields": {"codename": "delete_coursemodeexpirationconfig", "name": "Can delete course mode expiration config", "content_type": 147}, "model": "auth.permission", "pk": 442}, {"fields": {"codename": "add_softwaresecurephotoverification", "name": "Can add software secure photo verification", "content_type": 148}, "model": "auth.permission", "pk": 443}, {"fields": {"codename": "change_softwaresecurephotoverification", "name": "Can change software secure photo verification", "content_type": 148}, "model": "auth.permission", "pk": 444}, {"fields": {"codename": "delete_softwaresecurephotoverification", "name": "Can delete software secure photo verification", "content_type": 148}, "model": "auth.permission", "pk": 445}, {"fields": {"codename": "add_historicalverificationdeadline", "name": "Can add historical verification deadline", "content_type": 149}, "model": "auth.permission", "pk": 446}, {"fields": {"codename": "change_historicalverificationdeadline", "name": "Can change historical verification deadline", "content_type": 149}, "model": "auth.permission", "pk": 447}, {"fields": {"codename": "delete_historicalverificationdeadline", "name": "Can delete historical verification deadline", "content_type": 149}, "model": "auth.permission", "pk": 448}, {"fields": {"codename": "add_verificationdeadline", "name": "Can add verification deadline", "content_type": 150}, "model": "auth.permission", "pk": 449}, {"fields": {"codename": "change_verificationdeadline", "name": "Can change verification deadline", "content_type": 150}, "model": "auth.permission", "pk": 450}, {"fields": {"codename": "delete_verificationdeadline", "name": "Can delete verification deadline", "content_type": 150}, "model": "auth.permission", "pk": 451}, {"fields": {"codename": "add_verificationcheckpoint", "name": "Can add verification checkpoint", "content_type": 151}, "model": "auth.permission", "pk": 452}, {"fields": {"codename": "change_verificationcheckpoint", "name": "Can change verification checkpoint", "content_type": 151}, "model": "auth.permission", "pk": 453}, {"fields": {"codename": "delete_verificationcheckpoint", "name": "Can delete verification checkpoint", "content_type": 151}, "model": "auth.permission", "pk": 454}, {"fields": {"codename": "add_verificationstatus", "name": "Can add Verification Status", "content_type": 152}, "model": "auth.permission", "pk": 455}, {"fields": {"codename": "change_verificationstatus", "name": "Can change Verification Status", "content_type": 152}, "model": "auth.permission", "pk": 456}, {"fields": {"codename": "delete_verificationstatus", "name": "Can delete Verification Status", "content_type": 152}, "model": "auth.permission", "pk": 457}, {"fields": {"codename": "add_incoursereverificationconfiguration", "name": "Can add in course reverification configuration", "content_type": 153}, "model": "auth.permission", "pk": 458}, {"fields": {"codename": "change_incoursereverificationconfiguration", "name": "Can change in course reverification configuration", "content_type": 153}, "model": "auth.permission", "pk": 459}, {"fields": {"codename": "delete_incoursereverificationconfiguration", "name": "Can delete in course reverification configuration", "content_type": 153}, "model": "auth.permission", "pk": 460}, {"fields": {"codename": "add_icrvstatusemailsconfiguration", "name": "Can add icrv status emails configuration", "content_type": 154}, "model": "auth.permission", "pk": 461}, {"fields": {"codename": "change_icrvstatusemailsconfiguration", "name": "Can change icrv status emails configuration", "content_type": 154}, "model": "auth.permission", "pk": 462}, {"fields": {"codename": "delete_icrvstatusemailsconfiguration", "name": "Can delete icrv status emails configuration", "content_type": 154}, "model": "auth.permission", "pk": 463}, {"fields": {"codename": "add_skippedreverification", "name": "Can add skipped reverification", "content_type": 155}, "model": "auth.permission", "pk": 464}, {"fields": {"codename": "change_skippedreverification", "name": "Can change skipped reverification", "content_type": 155}, "model": "auth.permission", "pk": 465}, {"fields": {"codename": "delete_skippedreverification", "name": "Can delete skipped reverification", "content_type": 155}, "model": "auth.permission", "pk": 466}, {"fields": {"codename": "add_darklangconfig", "name": "Can add dark lang config", "content_type": 156}, "model": "auth.permission", "pk": 467}, {"fields": {"codename": "change_darklangconfig", "name": "Can change dark lang config", "content_type": 156}, "model": "auth.permission", "pk": 468}, {"fields": {"codename": "delete_darklangconfig", "name": "Can delete dark lang config", "content_type": 156}, "model": "auth.permission", "pk": 469}, {"fields": {"codename": "add_microsite", "name": "Can add microsite", "content_type": 157}, "model": "auth.permission", "pk": 470}, {"fields": {"codename": "change_microsite", "name": "Can change microsite", "content_type": 157}, "model": "auth.permission", "pk": 471}, {"fields": {"codename": "delete_microsite", "name": "Can delete microsite", "content_type": 157}, "model": "auth.permission", "pk": 472}, {"fields": {"codename": "add_micrositehistory", "name": "Can add microsite history", "content_type": 158}, "model": "auth.permission", "pk": 473}, {"fields": {"codename": "change_micrositehistory", "name": "Can change microsite history", "content_type": 158}, "model": "auth.permission", "pk": 474}, {"fields": {"codename": "delete_micrositehistory", "name": "Can delete microsite history", "content_type": 158}, "model": "auth.permission", "pk": 475}, {"fields": {"codename": "add_historicalmicrositeorganizationmapping", "name": "Can add historical microsite organization mapping", "content_type": 159}, "model": "auth.permission", "pk": 476}, {"fields": {"codename": "change_historicalmicrositeorganizationmapping", "name": "Can change historical microsite organization mapping", "content_type": 159}, "model": "auth.permission", "pk": 477}, {"fields": {"codename": "delete_historicalmicrositeorganizationmapping", "name": "Can delete historical microsite organization mapping", "content_type": 159}, "model": "auth.permission", "pk": 478}, {"fields": {"codename": "add_micrositeorganizationmapping", "name": "Can add microsite organization mapping", "content_type": 160}, "model": "auth.permission", "pk": 479}, {"fields": {"codename": "change_micrositeorganizationmapping", "name": "Can change microsite organization mapping", "content_type": 160}, "model": "auth.permission", "pk": 480}, {"fields": {"codename": "delete_micrositeorganizationmapping", "name": "Can delete microsite organization mapping", "content_type": 160}, "model": "auth.permission", "pk": 481}, {"fields": {"codename": "add_historicalmicrositetemplate", "name": "Can add historical microsite template", "content_type": 161}, "model": "auth.permission", "pk": 482}, {"fields": {"codename": "change_historicalmicrositetemplate", "name": "Can change historical microsite template", "content_type": 161}, "model": "auth.permission", "pk": 483}, {"fields": {"codename": "delete_historicalmicrositetemplate", "name": "Can delete historical microsite template", "content_type": 161}, "model": "auth.permission", "pk": 484}, {"fields": {"codename": "add_micrositetemplate", "name": "Can add microsite template", "content_type": 162}, "model": "auth.permission", "pk": 485}, {"fields": {"codename": "change_micrositetemplate", "name": "Can change microsite template", "content_type": 162}, "model": "auth.permission", "pk": 486}, {"fields": {"codename": "delete_micrositetemplate", "name": "Can delete microsite template", "content_type": 162}, "model": "auth.permission", "pk": 487}, {"fields": {"codename": "add_whitelistedrssurl", "name": "Can add whitelisted rss url", "content_type": 163}, "model": "auth.permission", "pk": 488}, {"fields": {"codename": "change_whitelistedrssurl", "name": "Can change whitelisted rss url", "content_type": 163}, "model": "auth.permission", "pk": 489}, {"fields": {"codename": "delete_whitelistedrssurl", "name": "Can delete whitelisted rss url", "content_type": 163}, "model": "auth.permission", "pk": 490}, {"fields": {"codename": "add_embargoedcourse", "name": "Can add embargoed course", "content_type": 164}, "model": "auth.permission", "pk": 491}, {"fields": {"codename": "change_embargoedcourse", "name": "Can change embargoed course", "content_type": 164}, "model": "auth.permission", "pk": 492}, {"fields": {"codename": "delete_embargoedcourse", "name": "Can delete embargoed course", "content_type": 164}, "model": "auth.permission", "pk": 493}, {"fields": {"codename": "add_embargoedstate", "name": "Can add embargoed state", "content_type": 165}, "model": "auth.permission", "pk": 494}, {"fields": {"codename": "change_embargoedstate", "name": "Can change embargoed state", "content_type": 165}, "model": "auth.permission", "pk": 495}, {"fields": {"codename": "delete_embargoedstate", "name": "Can delete embargoed state", "content_type": 165}, "model": "auth.permission", "pk": 496}, {"fields": {"codename": "add_restrictedcourse", "name": "Can add restricted course", "content_type": 166}, "model": "auth.permission", "pk": 497}, {"fields": {"codename": "change_restrictedcourse", "name": "Can change restricted course", "content_type": 166}, "model": "auth.permission", "pk": 498}, {"fields": {"codename": "delete_restrictedcourse", "name": "Can delete restricted course", "content_type": 166}, "model": "auth.permission", "pk": 499}, {"fields": {"codename": "add_country", "name": "Can add country", "content_type": 167}, "model": "auth.permission", "pk": 500}, {"fields": {"codename": "change_country", "name": "Can change country", "content_type": 167}, "model": "auth.permission", "pk": 501}, {"fields": {"codename": "delete_country", "name": "Can delete country", "content_type": 167}, "model": "auth.permission", "pk": 502}, {"fields": {"codename": "add_countryaccessrule", "name": "Can add country access rule", "content_type": 168}, "model": "auth.permission", "pk": 503}, {"fields": {"codename": "change_countryaccessrule", "name": "Can change country access rule", "content_type": 168}, "model": "auth.permission", "pk": 504}, {"fields": {"codename": "delete_countryaccessrule", "name": "Can delete country access rule", "content_type": 168}, "model": "auth.permission", "pk": 505}, {"fields": {"codename": "add_courseaccessrulehistory", "name": "Can add course access rule history", "content_type": 169}, "model": "auth.permission", "pk": 506}, {"fields": {"codename": "change_courseaccessrulehistory", "name": "Can change course access rule history", "content_type": 169}, "model": "auth.permission", "pk": 507}, {"fields": {"codename": "delete_courseaccessrulehistory", "name": "Can delete course access rule history", "content_type": 169}, "model": "auth.permission", "pk": 508}, {"fields": {"codename": "add_ipfilter", "name": "Can add ip filter", "content_type": 170}, "model": "auth.permission", "pk": 509}, {"fields": {"codename": "change_ipfilter", "name": "Can change ip filter", "content_type": 170}, "model": "auth.permission", "pk": 510}, {"fields": {"codename": "delete_ipfilter", "name": "Can delete ip filter", "content_type": 170}, "model": "auth.permission", "pk": 511}, {"fields": {"codename": "add_coursererunstate", "name": "Can add course rerun state", "content_type": 171}, "model": "auth.permission", "pk": 512}, {"fields": {"codename": "change_coursererunstate", "name": "Can change course rerun state", "content_type": 171}, "model": "auth.permission", "pk": 513}, {"fields": {"codename": "delete_coursererunstate", "name": "Can delete course rerun state", "content_type": 171}, "model": "auth.permission", "pk": 514}, {"fields": {"codename": "add_mobileapiconfig", "name": "Can add mobile api config", "content_type": 172}, "model": "auth.permission", "pk": 515}, {"fields": {"codename": "change_mobileapiconfig", "name": "Can change mobile api config", "content_type": 172}, "model": "auth.permission", "pk": 516}, {"fields": {"codename": "delete_mobileapiconfig", "name": "Can delete mobile api config", "content_type": 172}, "model": "auth.permission", "pk": 517}, {"fields": {"codename": "add_usersocialauth", "name": "Can add user social auth", "content_type": 173}, "model": "auth.permission", "pk": 518}, {"fields": {"codename": "change_usersocialauth", "name": "Can change user social auth", "content_type": 173}, "model": "auth.permission", "pk": 519}, {"fields": {"codename": "delete_usersocialauth", "name": "Can delete user social auth", "content_type": 173}, "model": "auth.permission", "pk": 520}, {"fields": {"codename": "add_nonce", "name": "Can add nonce", "content_type": 174}, "model": "auth.permission", "pk": 521}, {"fields": {"codename": "change_nonce", "name": "Can change nonce", "content_type": 174}, "model": "auth.permission", "pk": 522}, {"fields": {"codename": "delete_nonce", "name": "Can delete nonce", "content_type": 174}, "model": "auth.permission", "pk": 523}, {"fields": {"codename": "add_association", "name": "Can add association", "content_type": 175}, "model": "auth.permission", "pk": 524}, {"fields": {"codename": "change_association", "name": "Can change association", "content_type": 175}, "model": "auth.permission", "pk": 525}, {"fields": {"codename": "delete_association", "name": "Can delete association", "content_type": 175}, "model": "auth.permission", "pk": 526}, {"fields": {"codename": "add_code", "name": "Can add code", "content_type": 176}, "model": "auth.permission", "pk": 527}, {"fields": {"codename": "change_code", "name": "Can change code", "content_type": 176}, "model": "auth.permission", "pk": 528}, {"fields": {"codename": "delete_code", "name": "Can delete code", "content_type": 176}, "model": "auth.permission", "pk": 529}, {"fields": {"codename": "add_surveyform", "name": "Can add survey form", "content_type": 177}, "model": "auth.permission", "pk": 530}, {"fields": {"codename": "change_surveyform", "name": "Can change survey form", "content_type": 177}, "model": "auth.permission", "pk": 531}, {"fields": {"codename": "delete_surveyform", "name": "Can delete survey form", "content_type": 177}, "model": "auth.permission", "pk": 532}, {"fields": {"codename": "add_surveyanswer", "name": "Can add survey answer", "content_type": 178}, "model": "auth.permission", "pk": 533}, {"fields": {"codename": "change_surveyanswer", "name": "Can change survey answer", "content_type": 178}, "model": "auth.permission", "pk": 534}, {"fields": {"codename": "delete_surveyanswer", "name": "Can delete survey answer", "content_type": 178}, "model": "auth.permission", "pk": 535}, {"fields": {"codename": "add_xblockasidesconfig", "name": "Can add x block asides config", "content_type": 179}, "model": "auth.permission", "pk": 536}, {"fields": {"codename": "change_xblockasidesconfig", "name": "Can change x block asides config", "content_type": 179}, "model": "auth.permission", "pk": 537}, {"fields": {"codename": "delete_xblockasidesconfig", "name": "Can delete x block asides config", "content_type": 179}, "model": "auth.permission", "pk": 538}, {"fields": {"codename": "add_courseoverview", "name": "Can add course overview", "content_type": 180}, "model": "auth.permission", "pk": 539}, {"fields": {"codename": "change_courseoverview", "name": "Can change course overview", "content_type": 180}, "model": "auth.permission", "pk": 540}, {"fields": {"codename": "delete_courseoverview", "name": "Can delete course overview", "content_type": 180}, "model": "auth.permission", "pk": 541}, {"fields": {"codename": "add_courseoverviewtab", "name": "Can add course overview tab", "content_type": 181}, "model": "auth.permission", "pk": 542}, {"fields": {"codename": "change_courseoverviewtab", "name": "Can change course overview tab", "content_type": 181}, "model": "auth.permission", "pk": 543}, {"fields": {"codename": "delete_courseoverviewtab", "name": "Can delete course overview tab", "content_type": 181}, "model": "auth.permission", "pk": 544}, {"fields": {"codename": "add_courseoverviewimageset", "name": "Can add course overview image set", "content_type": 182}, "model": "auth.permission", "pk": 545}, {"fields": {"codename": "change_courseoverviewimageset", "name": "Can change course overview image set", "content_type": 182}, "model": "auth.permission", "pk": 546}, {"fields": {"codename": "delete_courseoverviewimageset", "name": "Can delete course overview image set", "content_type": 182}, "model": "auth.permission", "pk": 547}, {"fields": {"codename": "add_courseoverviewimageconfig", "name": "Can add course overview image config", "content_type": 183}, "model": "auth.permission", "pk": 548}, {"fields": {"codename": "change_courseoverviewimageconfig", "name": "Can change course overview image config", "content_type": 183}, "model": "auth.permission", "pk": 549}, {"fields": {"codename": "delete_courseoverviewimageconfig", "name": "Can delete course overview image config", "content_type": 183}, "model": "auth.permission", "pk": 550}, {"fields": {"codename": "add_coursestructure", "name": "Can add course structure", "content_type": 184}, "model": "auth.permission", "pk": 551}, {"fields": {"codename": "change_coursestructure", "name": "Can change course structure", "content_type": 184}, "model": "auth.permission", "pk": 552}, {"fields": {"codename": "delete_coursestructure", "name": "Can delete course structure", "content_type": 184}, "model": "auth.permission", "pk": 553}, {"fields": {"codename": "add_corsmodel", "name": "Can add cors model", "content_type": 185}, "model": "auth.permission", "pk": 554}, {"fields": {"codename": "change_corsmodel", "name": "Can change cors model", "content_type": 185}, "model": "auth.permission", "pk": 555}, {"fields": {"codename": "delete_corsmodel", "name": "Can delete cors model", "content_type": 185}, "model": "auth.permission", "pk": 556}, {"fields": {"codename": "add_xdomainproxyconfiguration", "name": "Can add x domain proxy configuration", "content_type": 186}, "model": "auth.permission", "pk": 557}, {"fields": {"codename": "change_xdomainproxyconfiguration", "name": "Can change x domain proxy configuration", "content_type": 186}, "model": "auth.permission", "pk": 558}, {"fields": {"codename": "delete_xdomainproxyconfiguration", "name": "Can delete x domain proxy configuration", "content_type": 186}, "model": "auth.permission", "pk": 559}, {"fields": {"codename": "add_commerceconfiguration", "name": "Can add commerce configuration", "content_type": 187}, "model": "auth.permission", "pk": 560}, {"fields": {"codename": "change_commerceconfiguration", "name": "Can change commerce configuration", "content_type": 187}, "model": "auth.permission", "pk": 561}, {"fields": {"codename": "delete_commerceconfiguration", "name": "Can delete commerce configuration", "content_type": 187}, "model": "auth.permission", "pk": 562}, {"fields": {"codename": "add_creditprovider", "name": "Can add credit provider", "content_type": 188}, "model": "auth.permission", "pk": 563}, {"fields": {"codename": "change_creditprovider", "name": "Can change credit provider", "content_type": 188}, "model": "auth.permission", "pk": 564}, {"fields": {"codename": "delete_creditprovider", "name": "Can delete credit provider", "content_type": 188}, "model": "auth.permission", "pk": 565}, {"fields": {"codename": "add_creditcourse", "name": "Can add credit course", "content_type": 189}, "model": "auth.permission", "pk": 566}, {"fields": {"codename": "change_creditcourse", "name": "Can change credit course", "content_type": 189}, "model": "auth.permission", "pk": 567}, {"fields": {"codename": "delete_creditcourse", "name": "Can delete credit course", "content_type": 189}, "model": "auth.permission", "pk": 568}, {"fields": {"codename": "add_creditrequirement", "name": "Can add credit requirement", "content_type": 190}, "model": "auth.permission", "pk": 569}, {"fields": {"codename": "change_creditrequirement", "name": "Can change credit requirement", "content_type": 190}, "model": "auth.permission", "pk": 570}, {"fields": {"codename": "delete_creditrequirement", "name": "Can delete credit requirement", "content_type": 190}, "model": "auth.permission", "pk": 571}, {"fields": {"codename": "add_historicalcreditrequirementstatus", "name": "Can add historical credit requirement status", "content_type": 191}, "model": "auth.permission", "pk": 572}, {"fields": {"codename": "change_historicalcreditrequirementstatus", "name": "Can change historical credit requirement status", "content_type": 191}, "model": "auth.permission", "pk": 573}, {"fields": {"codename": "delete_historicalcreditrequirementstatus", "name": "Can delete historical credit requirement status", "content_type": 191}, "model": "auth.permission", "pk": 574}, {"fields": {"codename": "add_creditrequirementstatus", "name": "Can add credit requirement status", "content_type": 192}, "model": "auth.permission", "pk": 575}, {"fields": {"codename": "change_creditrequirementstatus", "name": "Can change credit requirement status", "content_type": 192}, "model": "auth.permission", "pk": 576}, {"fields": {"codename": "delete_creditrequirementstatus", "name": "Can delete credit requirement status", "content_type": 192}, "model": "auth.permission", "pk": 577}, {"fields": {"codename": "add_crediteligibility", "name": "Can add credit eligibility", "content_type": 193}, "model": "auth.permission", "pk": 578}, {"fields": {"codename": "change_crediteligibility", "name": "Can change credit eligibility", "content_type": 193}, "model": "auth.permission", "pk": 579}, {"fields": {"codename": "delete_crediteligibility", "name": "Can delete credit eligibility", "content_type": 193}, "model": "auth.permission", "pk": 580}, {"fields": {"codename": "add_historicalcreditrequest", "name": "Can add historical credit request", "content_type": 194}, "model": "auth.permission", "pk": 581}, {"fields": {"codename": "change_historicalcreditrequest", "name": "Can change historical credit request", "content_type": 194}, "model": "auth.permission", "pk": 582}, {"fields": {"codename": "delete_historicalcreditrequest", "name": "Can delete historical credit request", "content_type": 194}, "model": "auth.permission", "pk": 583}, {"fields": {"codename": "add_creditrequest", "name": "Can add credit request", "content_type": 195}, "model": "auth.permission", "pk": 584}, {"fields": {"codename": "change_creditrequest", "name": "Can change credit request", "content_type": 195}, "model": "auth.permission", "pk": 585}, {"fields": {"codename": "delete_creditrequest", "name": "Can delete credit request", "content_type": 195}, "model": "auth.permission", "pk": 586}, {"fields": {"codename": "add_creditconfig", "name": "Can add credit config", "content_type": 196}, "model": "auth.permission", "pk": 587}, {"fields": {"codename": "change_creditconfig", "name": "Can change credit config", "content_type": 196}, "model": "auth.permission", "pk": 588}, {"fields": {"codename": "delete_creditconfig", "name": "Can delete credit config", "content_type": 196}, "model": "auth.permission", "pk": 589}, {"fields": {"codename": "add_courseteam", "name": "Can add course team", "content_type": 197}, "model": "auth.permission", "pk": 590}, {"fields": {"codename": "change_courseteam", "name": "Can change course team", "content_type": 197}, "model": "auth.permission", "pk": 591}, {"fields": {"codename": "delete_courseteam", "name": "Can delete course team", "content_type": 197}, "model": "auth.permission", "pk": 592}, {"fields": {"codename": "add_courseteammembership", "name": "Can add course team membership", "content_type": 198}, "model": "auth.permission", "pk": 593}, {"fields": {"codename": "change_courseteammembership", "name": "Can change course team membership", "content_type": 198}, "model": "auth.permission", "pk": 594}, {"fields": {"codename": "delete_courseteammembership", "name": "Can delete course team membership", "content_type": 198}, "model": "auth.permission", "pk": 595}, {"fields": {"codename": "add_xblockdisableconfig", "name": "Can add x block disable config", "content_type": 199}, "model": "auth.permission", "pk": 596}, {"fields": {"codename": "change_xblockdisableconfig", "name": "Can change x block disable config", "content_type": 199}, "model": "auth.permission", "pk": 597}, {"fields": {"codename": "delete_xblockdisableconfig", "name": "Can delete x block disable config", "content_type": 199}, "model": "auth.permission", "pk": 598}, {"fields": {"codename": "add_bookmark", "name": "Can add bookmark", "content_type": 200}, "model": "auth.permission", "pk": 599}, {"fields": {"codename": "change_bookmark", "name": "Can change bookmark", "content_type": 200}, "model": "auth.permission", "pk": 600}, {"fields": {"codename": "delete_bookmark", "name": "Can delete bookmark", "content_type": 200}, "model": "auth.permission", "pk": 601}, {"fields": {"codename": "add_xblockcache", "name": "Can add x block cache", "content_type": 201}, "model": "auth.permission", "pk": 602}, {"fields": {"codename": "change_xblockcache", "name": "Can change x block cache", "content_type": 201}, "model": "auth.permission", "pk": 603}, {"fields": {"codename": "delete_xblockcache", "name": "Can delete x block cache", "content_type": 201}, "model": "auth.permission", "pk": 604}, {"fields": {"codename": "add_programsapiconfig", "name": "Can add programs api config", "content_type": 202}, "model": "auth.permission", "pk": 605}, {"fields": {"codename": "change_programsapiconfig", "name": "Can change programs api config", "content_type": 202}, "model": "auth.permission", "pk": 606}, {"fields": {"codename": "delete_programsapiconfig", "name": "Can delete programs api config", "content_type": 202}, "model": "auth.permission", "pk": 607}, {"fields": {"codename": "add_selfpacedconfiguration", "name": "Can add self paced configuration", "content_type": 203}, "model": "auth.permission", "pk": 608}, {"fields": {"codename": "change_selfpacedconfiguration", "name": "Can change self paced configuration", "content_type": 203}, "model": "auth.permission", "pk": 609}, {"fields": {"codename": "delete_selfpacedconfiguration", "name": "Can delete self paced configuration", "content_type": 203}, "model": "auth.permission", "pk": 610}, {"fields": {"codename": "add_kvstore", "name": "Can add kv store", "content_type": 204}, "model": "auth.permission", "pk": 611}, {"fields": {"codename": "change_kvstore", "name": "Can change kv store", "content_type": 204}, "model": "auth.permission", "pk": 612}, {"fields": {"codename": "delete_kvstore", "name": "Can delete kv store", "content_type": 204}, "model": "auth.permission", "pk": 613}, {"fields": {"codename": "add_credentialsapiconfig", "name": "Can add credentials api config", "content_type": 205}, "model": "auth.permission", "pk": 614}, {"fields": {"codename": "change_credentialsapiconfig", "name": "Can change credentials api config", "content_type": 205}, "model": "auth.permission", "pk": 615}, {"fields": {"codename": "delete_credentialsapiconfig", "name": "Can delete credentials api config", "content_type": 205}, "model": "auth.permission", "pk": 616}, {"fields": {"codename": "add_milestone", "name": "Can add milestone", "content_type": 206}, "model": "auth.permission", "pk": 617}, {"fields": {"codename": "change_milestone", "name": "Can change milestone", "content_type": 206}, "model": "auth.permission", "pk": 618}, {"fields": {"codename": "delete_milestone", "name": "Can delete milestone", "content_type": 206}, "model": "auth.permission", "pk": 619}, {"fields": {"codename": "add_milestonerelationshiptype", "name": "Can add milestone relationship type", "content_type": 207}, "model": "auth.permission", "pk": 620}, {"fields": {"codename": "change_milestonerelationshiptype", "name": "Can change milestone relationship type", "content_type": 207}, "model": "auth.permission", "pk": 621}, {"fields": {"codename": "delete_milestonerelationshiptype", "name": "Can delete milestone relationship type", "content_type": 207}, "model": "auth.permission", "pk": 622}, {"fields": {"codename": "add_coursemilestone", "name": "Can add course milestone", "content_type": 208}, "model": "auth.permission", "pk": 623}, {"fields": {"codename": "change_coursemilestone", "name": "Can change course milestone", "content_type": 208}, "model": "auth.permission", "pk": 624}, {"fields": {"codename": "delete_coursemilestone", "name": "Can delete course milestone", "content_type": 208}, "model": "auth.permission", "pk": 625}, {"fields": {"codename": "add_coursecontentmilestone", "name": "Can add course content milestone", "content_type": 209}, "model": "auth.permission", "pk": 626}, {"fields": {"codename": "change_coursecontentmilestone", "name": "Can change course content milestone", "content_type": 209}, "model": "auth.permission", "pk": 627}, {"fields": {"codename": "delete_coursecontentmilestone", "name": "Can delete course content milestone", "content_type": 209}, "model": "auth.permission", "pk": 628}, {"fields": {"codename": "add_usermilestone", "name": "Can add user milestone", "content_type": 210}, "model": "auth.permission", "pk": 629}, {"fields": {"codename": "change_usermilestone", "name": "Can change user milestone", "content_type": 210}, "model": "auth.permission", "pk": 630}, {"fields": {"codename": "delete_usermilestone", "name": "Can delete user milestone", "content_type": 210}, "model": "auth.permission", "pk": 631}, {"fields": {"codename": "add_coursetalkwidgetconfiguration", "name": "Can add course talk widget configuration", "content_type": 211}, "model": "auth.permission", "pk": 632}, {"fields": {"codename": "change_coursetalkwidgetconfiguration", "name": "Can change course talk widget configuration", "content_type": 211}, "model": "auth.permission", "pk": 633}, {"fields": {"codename": "delete_coursetalkwidgetconfiguration", "name": "Can delete course talk widget configuration", "content_type": 211}, "model": "auth.permission", "pk": 634}, {"fields": {"codename": "add_historicalapiaccessrequest", "name": "Can add historical api access request", "content_type": 212}, "model": "auth.permission", "pk": 635}, {"fields": {"codename": "change_historicalapiaccessrequest", "name": "Can change historical api access request", "content_type": 212}, "model": "auth.permission", "pk": 636}, {"fields": {"codename": "delete_historicalapiaccessrequest", "name": "Can delete historical api access request", "content_type": 212}, "model": "auth.permission", "pk": 637}, {"fields": {"codename": "add_apiaccessrequest", "name": "Can add api access request", "content_type": 1}, "model": "auth.permission", "pk": 638}, {"fields": {"codename": "change_apiaccessrequest", "name": "Can change api access request", "content_type": 1}, "model": "auth.permission", "pk": 639}, {"fields": {"codename": "delete_apiaccessrequest", "name": "Can delete api access request", "content_type": 1}, "model": "auth.permission", "pk": 640}, {"fields": {"codename": "add_verifiedtrackcohortedcourse", "name": "Can add verified track cohorted course", "content_type": 213}, "model": "auth.permission", "pk": 641}, {"fields": {"codename": "change_verifiedtrackcohortedcourse", "name": "Can change verified track cohorted course", "content_type": 213}, "model": "auth.permission", "pk": 642}, {"fields": {"codename": "delete_verifiedtrackcohortedcourse", "name": "Can delete verified track cohorted course", "content_type": 213}, "model": "auth.permission", "pk": 643}, {"fields": {"codename": "add_badgeclass", "name": "Can add badge class", "content_type": 214}, "model": "auth.permission", "pk": 644}, {"fields": {"codename": "change_badgeclass", "name": "Can change badge class", "content_type": 214}, "model": "auth.permission", "pk": 645}, {"fields": {"codename": "delete_badgeclass", "name": "Can delete badge class", "content_type": 214}, "model": "auth.permission", "pk": 646}, {"fields": {"codename": "add_badgeassertion", "name": "Can add badge assertion", "content_type": 215}, "model": "auth.permission", "pk": 647}, {"fields": {"codename": "change_badgeassertion", "name": "Can change badge assertion", "content_type": 215}, "model": "auth.permission", "pk": 648}, {"fields": {"codename": "delete_badgeassertion", "name": "Can delete badge assertion", "content_type": 215}, "model": "auth.permission", "pk": 649}, {"fields": {"codename": "add_coursecompleteimageconfiguration", "name": "Can add course complete image configuration", "content_type": 216}, "model": "auth.permission", "pk": 650}, {"fields": {"codename": "change_coursecompleteimageconfiguration", "name": "Can change course complete image configuration", "content_type": 216}, "model": "auth.permission", "pk": 651}, {"fields": {"codename": "delete_coursecompleteimageconfiguration", "name": "Can delete course complete image configuration", "content_type": 216}, "model": "auth.permission", "pk": 652}, {"fields": {"codename": "add_courseeventbadgesconfiguration", "name": "Can add course event badges configuration", "content_type": 217}, "model": "auth.permission", "pk": 653}, {"fields": {"codename": "change_courseeventbadgesconfiguration", "name": "Can change course event badges configuration", "content_type": 217}, "model": "auth.permission", "pk": 654}, {"fields": {"codename": "delete_courseeventbadgesconfiguration", "name": "Can delete course event badges configuration", "content_type": 217}, "model": "auth.permission", "pk": 655}, {"fields": {"codename": "add_answer", "name": "Can add answer", "content_type": 218}, "model": "auth.permission", "pk": 656}, {"fields": {"codename": "change_answer", "name": "Can change answer", "content_type": 218}, "model": "auth.permission", "pk": 657}, {"fields": {"codename": "delete_answer", "name": "Can delete answer", "content_type": 218}, "model": "auth.permission", "pk": 658}, {"fields": {"codename": "add_answer", "name": "Can add answer", "content_type": 219}, "model": "auth.permission", "pk": 659}, {"fields": {"codename": "change_answer", "name": "Can change answer", "content_type": 219}, "model": "auth.permission", "pk": 660}, {"fields": {"codename": "delete_answer", "name": "Can delete answer", "content_type": 219}, "model": "auth.permission", "pk": 661}, {"fields": {"codename": "add_share", "name": "Can add share", "content_type": 220}, "model": "auth.permission", "pk": 662}, {"fields": {"codename": "change_share", "name": "Can change share", "content_type": 220}, "model": "auth.permission", "pk": 663}, {"fields": {"codename": "delete_share", "name": "Can delete share", "content_type": 220}, "model": "auth.permission", "pk": 664}, {"fields": {"codename": "add_studentitem", "name": "Can add student item", "content_type": 221}, "model": "auth.permission", "pk": 665}, {"fields": {"codename": "change_studentitem", "name": "Can change student item", "content_type": 221}, "model": "auth.permission", "pk": 666}, {"fields": {"codename": "delete_studentitem", "name": "Can delete student item", "content_type": 221}, "model": "auth.permission", "pk": 667}, {"fields": {"codename": "add_submission", "name": "Can add submission", "content_type": 222}, "model": "auth.permission", "pk": 668}, {"fields": {"codename": "change_submission", "name": "Can change submission", "content_type": 222}, "model": "auth.permission", "pk": 669}, {"fields": {"codename": "delete_submission", "name": "Can delete submission", "content_type": 222}, "model": "auth.permission", "pk": 670}, {"fields": {"codename": "add_score", "name": "Can add score", "content_type": 223}, "model": "auth.permission", "pk": 671}, {"fields": {"codename": "change_score", "name": "Can change score", "content_type": 223}, "model": "auth.permission", "pk": 672}, {"fields": {"codename": "delete_score", "name": "Can delete score", "content_type": 223}, "model": "auth.permission", "pk": 673}, {"fields": {"codename": "add_scoresummary", "name": "Can add score summary", "content_type": 224}, "model": "auth.permission", "pk": 674}, {"fields": {"codename": "change_scoresummary", "name": "Can change score summary", "content_type": 224}, "model": "auth.permission", "pk": 675}, {"fields": {"codename": "delete_scoresummary", "name": "Can delete score summary", "content_type": 224}, "model": "auth.permission", "pk": 676}, {"fields": {"codename": "add_scoreannotation", "name": "Can add score annotation", "content_type": 225}, "model": "auth.permission", "pk": 677}, {"fields": {"codename": "change_scoreannotation", "name": "Can change score annotation", "content_type": 225}, "model": "auth.permission", "pk": 678}, {"fields": {"codename": "delete_scoreannotation", "name": "Can delete score annotation", "content_type": 225}, "model": "auth.permission", "pk": 679}, {"fields": {"codename": "add_rubric", "name": "Can add rubric", "content_type": 226}, "model": "auth.permission", "pk": 680}, {"fields": {"codename": "change_rubric", "name": "Can change rubric", "content_type": 226}, "model": "auth.permission", "pk": 681}, {"fields": {"codename": "delete_rubric", "name": "Can delete rubric", "content_type": 226}, "model": "auth.permission", "pk": 682}, {"fields": {"codename": "add_criterion", "name": "Can add criterion", "content_type": 227}, "model": "auth.permission", "pk": 683}, {"fields": {"codename": "change_criterion", "name": "Can change criterion", "content_type": 227}, "model": "auth.permission", "pk": 684}, {"fields": {"codename": "delete_criterion", "name": "Can delete criterion", "content_type": 227}, "model": "auth.permission", "pk": 685}, {"fields": {"codename": "add_criterionoption", "name": "Can add criterion option", "content_type": 228}, "model": "auth.permission", "pk": 686}, {"fields": {"codename": "change_criterionoption", "name": "Can change criterion option", "content_type": 228}, "model": "auth.permission", "pk": 687}, {"fields": {"codename": "delete_criterionoption", "name": "Can delete criterion option", "content_type": 228}, "model": "auth.permission", "pk": 688}, {"fields": {"codename": "add_assessment", "name": "Can add assessment", "content_type": 229}, "model": "auth.permission", "pk": 689}, {"fields": {"codename": "change_assessment", "name": "Can change assessment", "content_type": 229}, "model": "auth.permission", "pk": 690}, {"fields": {"codename": "delete_assessment", "name": "Can delete assessment", "content_type": 229}, "model": "auth.permission", "pk": 691}, {"fields": {"codename": "add_assessmentpart", "name": "Can add assessment part", "content_type": 230}, "model": "auth.permission", "pk": 692}, {"fields": {"codename": "change_assessmentpart", "name": "Can change assessment part", "content_type": 230}, "model": "auth.permission", "pk": 693}, {"fields": {"codename": "delete_assessmentpart", "name": "Can delete assessment part", "content_type": 230}, "model": "auth.permission", "pk": 694}, {"fields": {"codename": "add_assessmentfeedbackoption", "name": "Can add assessment feedback option", "content_type": 231}, "model": "auth.permission", "pk": 695}, {"fields": {"codename": "change_assessmentfeedbackoption", "name": "Can change assessment feedback option", "content_type": 231}, "model": "auth.permission", "pk": 696}, {"fields": {"codename": "delete_assessmentfeedbackoption", "name": "Can delete assessment feedback option", "content_type": 231}, "model": "auth.permission", "pk": 697}, {"fields": {"codename": "add_assessmentfeedback", "name": "Can add assessment feedback", "content_type": 232}, "model": "auth.permission", "pk": 698}, {"fields": {"codename": "change_assessmentfeedback", "name": "Can change assessment feedback", "content_type": 232}, "model": "auth.permission", "pk": 699}, {"fields": {"codename": "delete_assessmentfeedback", "name": "Can delete assessment feedback", "content_type": 232}, "model": "auth.permission", "pk": 700}, {"fields": {"codename": "add_peerworkflow", "name": "Can add peer workflow", "content_type": 233}, "model": "auth.permission", "pk": 701}, {"fields": {"codename": "change_peerworkflow", "name": "Can change peer workflow", "content_type": 233}, "model": "auth.permission", "pk": 702}, {"fields": {"codename": "delete_peerworkflow", "name": "Can delete peer workflow", "content_type": 233}, "model": "auth.permission", "pk": 703}, {"fields": {"codename": "add_peerworkflowitem", "name": "Can add peer workflow item", "content_type": 234}, "model": "auth.permission", "pk": 704}, {"fields": {"codename": "change_peerworkflowitem", "name": "Can change peer workflow item", "content_type": 234}, "model": "auth.permission", "pk": 705}, {"fields": {"codename": "delete_peerworkflowitem", "name": "Can delete peer workflow item", "content_type": 234}, "model": "auth.permission", "pk": 706}, {"fields": {"codename": "add_trainingexample", "name": "Can add training example", "content_type": 235}, "model": "auth.permission", "pk": 707}, {"fields": {"codename": "change_trainingexample", "name": "Can change training example", "content_type": 235}, "model": "auth.permission", "pk": 708}, {"fields": {"codename": "delete_trainingexample", "name": "Can delete training example", "content_type": 235}, "model": "auth.permission", "pk": 709}, {"fields": {"codename": "add_studenttrainingworkflow", "name": "Can add student training workflow", "content_type": 236}, "model": "auth.permission", "pk": 710}, {"fields": {"codename": "change_studenttrainingworkflow", "name": "Can change student training workflow", "content_type": 236}, "model": "auth.permission", "pk": 711}, {"fields": {"codename": "delete_studenttrainingworkflow", "name": "Can delete student training workflow", "content_type": 236}, "model": "auth.permission", "pk": 712}, {"fields": {"codename": "add_studenttrainingworkflowitem", "name": "Can add student training workflow item", "content_type": 237}, "model": "auth.permission", "pk": 713}, {"fields": {"codename": "change_studenttrainingworkflowitem", "name": "Can change student training workflow item", "content_type": 237}, "model": "auth.permission", "pk": 714}, {"fields": {"codename": "delete_studenttrainingworkflowitem", "name": "Can delete student training workflow item", "content_type": 237}, "model": "auth.permission", "pk": 715}, {"fields": {"codename": "add_aiclassifierset", "name": "Can add ai classifier set", "content_type": 238}, "model": "auth.permission", "pk": 716}, {"fields": {"codename": "change_aiclassifierset", "name": "Can change ai classifier set", "content_type": 238}, "model": "auth.permission", "pk": 717}, {"fields": {"codename": "delete_aiclassifierset", "name": "Can delete ai classifier set", "content_type": 238}, "model": "auth.permission", "pk": 718}, {"fields": {"codename": "add_aiclassifier", "name": "Can add ai classifier", "content_type": 239}, "model": "auth.permission", "pk": 719}, {"fields": {"codename": "change_aiclassifier", "name": "Can change ai classifier", "content_type": 239}, "model": "auth.permission", "pk": 720}, {"fields": {"codename": "delete_aiclassifier", "name": "Can delete ai classifier", "content_type": 239}, "model": "auth.permission", "pk": 721}, {"fields": {"codename": "add_aitrainingworkflow", "name": "Can add ai training workflow", "content_type": 240}, "model": "auth.permission", "pk": 722}, {"fields": {"codename": "change_aitrainingworkflow", "name": "Can change ai training workflow", "content_type": 240}, "model": "auth.permission", "pk": 723}, {"fields": {"codename": "delete_aitrainingworkflow", "name": "Can delete ai training workflow", "content_type": 240}, "model": "auth.permission", "pk": 724}, {"fields": {"codename": "add_aigradingworkflow", "name": "Can add ai grading workflow", "content_type": 241}, "model": "auth.permission", "pk": 725}, {"fields": {"codename": "change_aigradingworkflow", "name": "Can change ai grading workflow", "content_type": 241}, "model": "auth.permission", "pk": 726}, {"fields": {"codename": "delete_aigradingworkflow", "name": "Can delete ai grading workflow", "content_type": 241}, "model": "auth.permission", "pk": 727}, {"fields": {"codename": "add_staffworkflow", "name": "Can add staff workflow", "content_type": 242}, "model": "auth.permission", "pk": 728}, {"fields": {"codename": "change_staffworkflow", "name": "Can change staff workflow", "content_type": 242}, "model": "auth.permission", "pk": 729}, {"fields": {"codename": "delete_staffworkflow", "name": "Can delete staff workflow", "content_type": 242}, "model": "auth.permission", "pk": 730}, {"fields": {"codename": "add_assessmentworkflow", "name": "Can add assessment workflow", "content_type": 243}, "model": "auth.permission", "pk": 731}, {"fields": {"codename": "change_assessmentworkflow", "name": "Can change assessment workflow", "content_type": 243}, "model": "auth.permission", "pk": 732}, {"fields": {"codename": "delete_assessmentworkflow", "name": "Can delete assessment workflow", "content_type": 243}, "model": "auth.permission", "pk": 733}, {"fields": {"codename": "add_assessmentworkflowstep", "name": "Can add assessment workflow step", "content_type": 244}, "model": "auth.permission", "pk": 734}, {"fields": {"codename": "change_assessmentworkflowstep", "name": "Can change assessment workflow step", "content_type": 244}, "model": "auth.permission", "pk": 735}, {"fields": {"codename": "delete_assessmentworkflowstep", "name": "Can delete assessment workflow step", "content_type": 244}, "model": "auth.permission", "pk": 736}, {"fields": {"codename": "add_assessmentworkflowcancellation", "name": "Can add assessment workflow cancellation", "content_type": 245}, "model": "auth.permission", "pk": 737}, {"fields": {"codename": "change_assessmentworkflowcancellation", "name": "Can change assessment workflow cancellation", "content_type": 245}, "model": "auth.permission", "pk": 738}, {"fields": {"codename": "delete_assessmentworkflowcancellation", "name": "Can delete assessment workflow cancellation", "content_type": 245}, "model": "auth.permission", "pk": 739}, {"fields": {"codename": "add_profile", "name": "Can add profile", "content_type": 246}, "model": "auth.permission", "pk": 740}, {"fields": {"codename": "change_profile", "name": "Can change profile", "content_type": 246}, "model": "auth.permission", "pk": 741}, {"fields": {"codename": "delete_profile", "name": "Can delete profile", "content_type": 246}, "model": "auth.permission", "pk": 742}, {"fields": {"codename": "add_video", "name": "Can add video", "content_type": 247}, "model": "auth.permission", "pk": 743}, {"fields": {"codename": "change_video", "name": "Can change video", "content_type": 247}, "model": "auth.permission", "pk": 744}, {"fields": {"codename": "delete_video", "name": "Can delete video", "content_type": 247}, "model": "auth.permission", "pk": 745}, {"fields": {"codename": "add_coursevideo", "name": "Can add course video", "content_type": 248}, "model": "auth.permission", "pk": 746}, {"fields": {"codename": "change_coursevideo", "name": "Can change course video", "content_type": 248}, "model": "auth.permission", "pk": 747}, {"fields": {"codename": "delete_coursevideo", "name": "Can delete course video", "content_type": 248}, "model": "auth.permission", "pk": 748}, {"fields": {"codename": "add_encodedvideo", "name": "Can add encoded video", "content_type": 249}, "model": "auth.permission", "pk": 749}, {"fields": {"codename": "change_encodedvideo", "name": "Can change encoded video", "content_type": 249}, "model": "auth.permission", "pk": 750}, {"fields": {"codename": "delete_encodedvideo", "name": "Can delete encoded video", "content_type": 249}, "model": "auth.permission", "pk": 751}, {"fields": {"codename": "add_subtitle", "name": "Can add subtitle", "content_type": 250}, "model": "auth.permission", "pk": 752}, {"fields": {"codename": "change_subtitle", "name": "Can change subtitle", "content_type": 250}, "model": "auth.permission", "pk": 753}, {"fields": {"codename": "delete_subtitle", "name": "Can delete subtitle", "content_type": 250}, "model": "auth.permission", "pk": 754}, {"fields": {"codename": "add_proctoredexam", "name": "Can add proctored exam", "content_type": 251}, "model": "auth.permission", "pk": 755}, {"fields": {"codename": "change_proctoredexam", "name": "Can change proctored exam", "content_type": 251}, "model": "auth.permission", "pk": 756}, {"fields": {"codename": "delete_proctoredexam", "name": "Can delete proctored exam", "content_type": 251}, "model": "auth.permission", "pk": 757}, {"fields": {"codename": "add_proctoredexamreviewpolicy", "name": "Can add Proctored exam review policy", "content_type": 252}, "model": "auth.permission", "pk": 758}, {"fields": {"codename": "change_proctoredexamreviewpolicy", "name": "Can change Proctored exam review policy", "content_type": 252}, "model": "auth.permission", "pk": 759}, {"fields": {"codename": "delete_proctoredexamreviewpolicy", "name": "Can delete Proctored exam review policy", "content_type": 252}, "model": "auth.permission", "pk": 760}, {"fields": {"codename": "add_proctoredexamreviewpolicyhistory", "name": "Can add proctored exam review policy history", "content_type": 253}, "model": "auth.permission", "pk": 761}, {"fields": {"codename": "change_proctoredexamreviewpolicyhistory", "name": "Can change proctored exam review policy history", "content_type": 253}, "model": "auth.permission", "pk": 762}, {"fields": {"codename": "delete_proctoredexamreviewpolicyhistory", "name": "Can delete proctored exam review policy history", "content_type": 253}, "model": "auth.permission", "pk": 763}, {"fields": {"codename": "add_proctoredexamstudentattempt", "name": "Can add proctored exam attempt", "content_type": 254}, "model": "auth.permission", "pk": 764}, {"fields": {"codename": "change_proctoredexamstudentattempt", "name": "Can change proctored exam attempt", "content_type": 254}, "model": "auth.permission", "pk": 765}, {"fields": {"codename": "delete_proctoredexamstudentattempt", "name": "Can delete proctored exam attempt", "content_type": 254}, "model": "auth.permission", "pk": 766}, {"fields": {"codename": "add_proctoredexamstudentattempthistory", "name": "Can add proctored exam attempt history", "content_type": 255}, "model": "auth.permission", "pk": 767}, {"fields": {"codename": "change_proctoredexamstudentattempthistory", "name": "Can change proctored exam attempt history", "content_type": 255}, "model": "auth.permission", "pk": 768}, {"fields": {"codename": "delete_proctoredexamstudentattempthistory", "name": "Can delete proctored exam attempt history", "content_type": 255}, "model": "auth.permission", "pk": 769}, {"fields": {"codename": "add_proctoredexamstudentallowance", "name": "Can add proctored allowance", "content_type": 256}, "model": "auth.permission", "pk": 770}, {"fields": {"codename": "change_proctoredexamstudentallowance", "name": "Can change proctored allowance", "content_type": 256}, "model": "auth.permission", "pk": 771}, {"fields": {"codename": "delete_proctoredexamstudentallowance", "name": "Can delete proctored allowance", "content_type": 256}, "model": "auth.permission", "pk": 772}, {"fields": {"codename": "add_proctoredexamstudentallowancehistory", "name": "Can add proctored allowance history", "content_type": 257}, "model": "auth.permission", "pk": 773}, {"fields": {"codename": "change_proctoredexamstudentallowancehistory", "name": "Can change proctored allowance history", "content_type": 257}, "model": "auth.permission", "pk": 774}, {"fields": {"codename": "delete_proctoredexamstudentallowancehistory", "name": "Can delete proctored allowance history", "content_type": 257}, "model": "auth.permission", "pk": 775}, {"fields": {"codename": "add_proctoredexamsoftwaresecurereview", "name": "Can add Proctored exam software secure review", "content_type": 258}, "model": "auth.permission", "pk": 776}, {"fields": {"codename": "change_proctoredexamsoftwaresecurereview", "name": "Can change Proctored exam software secure review", "content_type": 258}, "model": "auth.permission", "pk": 777}, {"fields": {"codename": "delete_proctoredexamsoftwaresecurereview", "name": "Can delete Proctored exam software secure review", "content_type": 258}, "model": "auth.permission", "pk": 778}, {"fields": {"codename": "add_proctoredexamsoftwaresecurereviewhistory", "name": "Can add Proctored exam review archive", "content_type": 259}, "model": "auth.permission", "pk": 779}, {"fields": {"codename": "change_proctoredexamsoftwaresecurereviewhistory", "name": "Can change Proctored exam review archive", "content_type": 259}, "model": "auth.permission", "pk": 780}, {"fields": {"codename": "delete_proctoredexamsoftwaresecurereviewhistory", "name": "Can delete Proctored exam review archive", "content_type": 259}, "model": "auth.permission", "pk": 781}, {"fields": {"codename": "add_proctoredexamsoftwaresecurecomment", "name": "Can add proctored exam software secure comment", "content_type": 260}, "model": "auth.permission", "pk": 782}, {"fields": {"codename": "change_proctoredexamsoftwaresecurecomment", "name": "Can change proctored exam software secure comment", "content_type": 260}, "model": "auth.permission", "pk": 783}, {"fields": {"codename": "delete_proctoredexamsoftwaresecurecomment", "name": "Can delete proctored exam software secure comment", "content_type": 260}, "model": "auth.permission", "pk": 784}, {"fields": {"codename": "add_organization", "name": "Can add organization", "content_type": 261}, "model": "auth.permission", "pk": 785}, {"fields": {"codename": "change_organization", "name": "Can change organization", "content_type": 261}, "model": "auth.permission", "pk": 786}, {"fields": {"codename": "delete_organization", "name": "Can delete organization", "content_type": 261}, "model": "auth.permission", "pk": 787}, {"fields": {"codename": "add_organizationcourse", "name": "Can add Link Course", "content_type": 262}, "model": "auth.permission", "pk": 788}, {"fields": {"codename": "change_organizationcourse", "name": "Can change Link Course", "content_type": 262}, "model": "auth.permission", "pk": 789}, {"fields": {"codename": "delete_organizationcourse", "name": "Can delete Link Course", "content_type": 262}, "model": "auth.permission", "pk": 790}, {"fields": {"codename": "add_studentmodulehistoryextended", "name": "Can add student module history extended", "content_type": 263}, "model": "auth.permission", "pk": 791}, {"fields": {"codename": "change_studentmodulehistoryextended", "name": "Can change student module history extended", "content_type": 263}, "model": "auth.permission", "pk": 792}, {"fields": {"codename": "delete_studentmodulehistoryextended", "name": "Can delete student module history extended", "content_type": 263}, "model": "auth.permission", "pk": 793}, {"fields": {"codename": "add_videouploadconfig", "name": "Can add video upload config", "content_type": 264}, "model": "auth.permission", "pk": 794}, {"fields": {"codename": "change_videouploadconfig", "name": "Can change video upload config", "content_type": 264}, "model": "auth.permission", "pk": 795}, {"fields": {"codename": "delete_videouploadconfig", "name": "Can delete video upload config", "content_type": 264}, "model": "auth.permission", "pk": 796}, {"fields": {"codename": "add_pushnotificationconfig", "name": "Can add push notification config", "content_type": 265}, "model": "auth.permission", "pk": 797}, {"fields": {"codename": "change_pushnotificationconfig", "name": "Can change push notification config", "content_type": 265}, "model": "auth.permission", "pk": 798}, {"fields": {"codename": "delete_pushnotificationconfig", "name": "Can delete push notification config", "content_type": 265}, "model": "auth.permission", "pk": 799}, {"fields": {"codename": "add_coursecreator", "name": "Can add course creator", "content_type": 266}, "model": "auth.permission", "pk": 800}, {"fields": {"codename": "change_coursecreator", "name": "Can change course creator", "content_type": 266}, "model": "auth.permission", "pk": 801}, {"fields": {"codename": "delete_coursecreator", "name": "Can delete course creator", "content_type": 266}, "model": "auth.permission", "pk": 802}, {"fields": {"codename": "add_studioconfig", "name": "Can add studio config", "content_type": 267}, "model": "auth.permission", "pk": 803}, {"fields": {"codename": "change_studioconfig", "name": "Can change studio config", "content_type": 267}, "model": "auth.permission", "pk": 804}, {"fields": {"codename": "delete_studioconfig", "name": "Can delete studio config", "content_type": 267}, "model": "auth.permission", "pk": 805}, {"fields": {"name": "API Access Request Approvers", "permissions": []}, "model": "auth.group", "pk": 1}, {"fields": {"username": "ecommerce_worker", "first_name": "", "last_name": "", "is_active": true, "is_superuser": false, "is_staff": false, "last_login": null, "groups": [], "user_permissions": [], "password": "!z9xO1UBrJHDzjdGdglHuh6ss1qx2HjAiYnBxDUUO", "email": "ecommerce_worker@fake.email", "date_joined": "2016-04-01T20:18:27.219Z"}, "model": "auth.user", "pk": 1}, {"fields": {"change_date": "2016-04-01T20:20:16.466Z", "changed_by": null, "enabled": true}, "model": "util.ratelimitconfiguration", "pk": 1}, {"fields": {"change_date": "2016-04-01T20:18:24.407Z", "changed_by": null, "configuration": "{\"default\": {\"accomplishment_class_append\": \"accomplishment-certificate\", \"platform_name\": \"Your Platform Name Here\", \"logo_src\": \"/static/certificates/images/logo.png\", \"logo_url\": \"http://www.example.com\", \"company_verified_certificate_url\": \"http://www.example.com/verified-certificate\", \"company_privacy_url\": \"http://www.example.com/privacy-policy\", \"company_tos_url\": \"http://www.example.com/terms-service\", \"company_about_url\": \"http://www.example.com/about-us\"}, \"verified\": {\"certificate_type\": \"Verified\", \"certificate_title\": \"Verified Certificate of Achievement\"}, \"honor\": {\"certificate_type\": \"Honor Code\", \"certificate_title\": \"Certificate of Achievement\"}}", "enabled": false}, "model": "certificates.certificatehtmlviewconfiguration", "pk": 1}, {"fields": {"change_date": "2016-04-01T20:18:36.248Z", "changed_by": null, "enabled": true, "released_languages": ""}, "model": "dark_lang.darklangconfig", "pk": 1}] \ No newline at end of file +[{"fields": {"model": "apiaccessrequest", "app_label": "api_admin"}, "model": "contenttypes.contenttype", "pk": 1}, {"fields": {"model": "permission", "app_label": "auth"}, "model": "contenttypes.contenttype", "pk": 2}, {"fields": {"model": "group", "app_label": "auth"}, "model": "contenttypes.contenttype", "pk": 3}, {"fields": {"model": "user", "app_label": "auth"}, "model": "contenttypes.contenttype", "pk": 4}, {"fields": {"model": "contenttype", "app_label": "contenttypes"}, "model": "contenttypes.contenttype", "pk": 5}, {"fields": {"model": "session", "app_label": "sessions"}, "model": "contenttypes.contenttype", "pk": 6}, {"fields": {"model": "site", "app_label": "sites"}, "model": "contenttypes.contenttype", "pk": 7}, {"fields": {"model": "taskmeta", "app_label": "djcelery"}, "model": "contenttypes.contenttype", "pk": 8}, {"fields": {"model": "tasksetmeta", "app_label": "djcelery"}, "model": "contenttypes.contenttype", "pk": 9}, {"fields": {"model": "intervalschedule", "app_label": "djcelery"}, "model": "contenttypes.contenttype", "pk": 10}, {"fields": {"model": "crontabschedule", "app_label": "djcelery"}, "model": "contenttypes.contenttype", "pk": 11}, {"fields": {"model": "periodictasks", "app_label": "djcelery"}, "model": "contenttypes.contenttype", "pk": 12}, {"fields": {"model": "periodictask", "app_label": "djcelery"}, "model": "contenttypes.contenttype", "pk": 13}, {"fields": {"model": "workerstate", "app_label": "djcelery"}, "model": "contenttypes.contenttype", "pk": 14}, {"fields": {"model": "taskstate", "app_label": "djcelery"}, "model": "contenttypes.contenttype", "pk": 15}, {"fields": {"model": "globalstatusmessage", "app_label": "status"}, "model": "contenttypes.contenttype", "pk": 16}, {"fields": {"model": "coursemessage", "app_label": "status"}, "model": "contenttypes.contenttype", "pk": 17}, {"fields": {"model": "assetbaseurlconfig", "app_label": "static_replace"}, "model": "contenttypes.contenttype", "pk": 18}, {"fields": {"model": "assetexcludedextensionsconfig", "app_label": "static_replace"}, "model": "contenttypes.contenttype", "pk": 19}, {"fields": {"model": "courseassetcachettlconfig", "app_label": "contentserver"}, "model": "contenttypes.contenttype", "pk": 20}, {"fields": {"model": "cdnuseragentsconfig", "app_label": "contentserver"}, "model": "contenttypes.contenttype", "pk": 21}, {"fields": {"model": "siteconfiguration", "app_label": "site_configuration"}, "model": "contenttypes.contenttype", "pk": 22}, {"fields": {"model": "siteconfigurationhistory", "app_label": "site_configuration"}, "model": "contenttypes.contenttype", "pk": 23}, {"fields": {"model": "studentmodule", "app_label": "courseware"}, "model": "contenttypes.contenttype", "pk": 24}, {"fields": {"model": "studentmodulehistory", "app_label": "courseware"}, "model": "contenttypes.contenttype", "pk": 25}, {"fields": {"model": "xmoduleuserstatesummaryfield", "app_label": "courseware"}, "model": "contenttypes.contenttype", "pk": 26}, {"fields": {"model": "xmodulestudentprefsfield", "app_label": "courseware"}, "model": "contenttypes.contenttype", "pk": 27}, {"fields": {"model": "xmodulestudentinfofield", "app_label": "courseware"}, "model": "contenttypes.contenttype", "pk": 28}, {"fields": {"model": "offlinecomputedgrade", "app_label": "courseware"}, "model": "contenttypes.contenttype", "pk": 29}, {"fields": {"model": "offlinecomputedgradelog", "app_label": "courseware"}, "model": "contenttypes.contenttype", "pk": 30}, {"fields": {"model": "studentfieldoverride", "app_label": "courseware"}, "model": "contenttypes.contenttype", "pk": 31}, {"fields": {"model": "anonymoususerid", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 32}, {"fields": {"model": "userstanding", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 33}, {"fields": {"model": "userprofile", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 34}, {"fields": {"model": "usersignupsource", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 35}, {"fields": {"model": "usertestgroup", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 36}, {"fields": {"model": "registration", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 37}, {"fields": {"model": "pendingnamechange", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 38}, {"fields": {"model": "pendingemailchange", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 39}, {"fields": {"model": "passwordhistory", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 40}, {"fields": {"model": "loginfailures", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 41}, {"fields": {"model": "historicalcourseenrollment", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 42}, {"fields": {"model": "courseenrollment", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 43}, {"fields": {"model": "manualenrollmentaudit", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 44}, {"fields": {"model": "courseenrollmentallowed", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 45}, {"fields": {"model": "courseaccessrole", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 46}, {"fields": {"model": "dashboardconfiguration", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 47}, {"fields": {"model": "linkedinaddtoprofileconfiguration", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 48}, {"fields": {"model": "entranceexamconfiguration", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 49}, {"fields": {"model": "languageproficiency", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 50}, {"fields": {"model": "courseenrollmentattribute", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 51}, {"fields": {"model": "enrollmentrefundconfiguration", "app_label": "student"}, "model": "contenttypes.contenttype", "pk": 52}, {"fields": {"model": "trackinglog", "app_label": "track"}, "model": "contenttypes.contenttype", "pk": 53}, {"fields": {"model": "ratelimitconfiguration", "app_label": "util"}, "model": "contenttypes.contenttype", "pk": 54}, {"fields": {"model": "certificatewhitelist", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 55}, {"fields": {"model": "generatedcertificate", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 56}, {"fields": {"model": "certificategenerationhistory", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 57}, {"fields": {"model": "certificateinvalidation", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 58}, {"fields": {"model": "examplecertificateset", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 59}, {"fields": {"model": "examplecertificate", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 60}, {"fields": {"model": "certificategenerationcoursesetting", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 61}, {"fields": {"model": "certificategenerationconfiguration", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 62}, {"fields": {"model": "certificatehtmlviewconfiguration", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 63}, {"fields": {"model": "certificatetemplate", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 64}, {"fields": {"model": "certificatetemplateasset", "app_label": "certificates"}, "model": "contenttypes.contenttype", "pk": 65}, {"fields": {"model": "instructortask", "app_label": "instructor_task"}, "model": "contenttypes.contenttype", "pk": 66}, {"fields": {"model": "courseusergroup", "app_label": "course_groups"}, "model": "contenttypes.contenttype", "pk": 67}, {"fields": {"model": "cohortmembership", "app_label": "course_groups"}, "model": "contenttypes.contenttype", "pk": 68}, {"fields": {"model": "courseusergrouppartitiongroup", "app_label": "course_groups"}, "model": "contenttypes.contenttype", "pk": 69}, {"fields": {"model": "coursecohortssettings", "app_label": "course_groups"}, "model": "contenttypes.contenttype", "pk": 70}, {"fields": {"model": "coursecohort", "app_label": "course_groups"}, "model": "contenttypes.contenttype", "pk": 71}, {"fields": {"model": "courseemail", "app_label": "bulk_email"}, "model": "contenttypes.contenttype", "pk": 72}, {"fields": {"model": "optout", "app_label": "bulk_email"}, "model": "contenttypes.contenttype", "pk": 73}, {"fields": {"model": "courseemailtemplate", "app_label": "bulk_email"}, "model": "contenttypes.contenttype", "pk": 74}, {"fields": {"model": "courseauthorization", "app_label": "bulk_email"}, "model": "contenttypes.contenttype", "pk": 75}, {"fields": {"model": "bulkemailflag", "app_label": "bulk_email"}, "model": "contenttypes.contenttype", "pk": 76}, {"fields": {"model": "brandinginfoconfig", "app_label": "branding"}, "model": "contenttypes.contenttype", "pk": 77}, {"fields": {"model": "brandingapiconfig", "app_label": "branding"}, "model": "contenttypes.contenttype", "pk": 78}, {"fields": {"model": "externalauthmap", "app_label": "external_auth"}, "model": "contenttypes.contenttype", "pk": 79}, {"fields": {"model": "nonce", "app_label": "django_openid_auth"}, "model": "contenttypes.contenttype", "pk": 80}, {"fields": {"model": "association", "app_label": "django_openid_auth"}, "model": "contenttypes.contenttype", "pk": 81}, {"fields": {"model": "useropenid", "app_label": "django_openid_auth"}, "model": "contenttypes.contenttype", "pk": 82}, {"fields": {"model": "client", "app_label": "oauth2"}, "model": "contenttypes.contenttype", "pk": 83}, {"fields": {"model": "grant", "app_label": "oauth2"}, "model": "contenttypes.contenttype", "pk": 84}, {"fields": {"model": "accesstoken", "app_label": "oauth2"}, "model": "contenttypes.contenttype", "pk": 85}, {"fields": {"model": "refreshtoken", "app_label": "oauth2"}, "model": "contenttypes.contenttype", "pk": 86}, {"fields": {"model": "trustedclient", "app_label": "edx_oauth2_provider"}, "model": "contenttypes.contenttype", "pk": 87}, {"fields": {"model": "application", "app_label": "oauth2_provider"}, "model": "contenttypes.contenttype", "pk": 88}, {"fields": {"model": "grant", "app_label": "oauth2_provider"}, "model": "contenttypes.contenttype", "pk": 89}, {"fields": {"model": "accesstoken", "app_label": "oauth2_provider"}, "model": "contenttypes.contenttype", "pk": 90}, {"fields": {"model": "refreshtoken", "app_label": "oauth2_provider"}, "model": "contenttypes.contenttype", "pk": 91}, {"fields": {"model": "oauth2providerconfig", "app_label": "third_party_auth"}, "model": "contenttypes.contenttype", "pk": 92}, {"fields": {"model": "samlproviderconfig", "app_label": "third_party_auth"}, "model": "contenttypes.contenttype", "pk": 93}, {"fields": {"model": "samlconfiguration", "app_label": "third_party_auth"}, "model": "contenttypes.contenttype", "pk": 94}, {"fields": {"model": "samlproviderdata", "app_label": "third_party_auth"}, "model": "contenttypes.contenttype", "pk": 95}, {"fields": {"model": "ltiproviderconfig", "app_label": "third_party_auth"}, "model": "contenttypes.contenttype", "pk": 96}, {"fields": {"model": "providerapipermissions", "app_label": "third_party_auth"}, "model": "contenttypes.contenttype", "pk": 97}, {"fields": {"model": "nonce", "app_label": "oauth_provider"}, "model": "contenttypes.contenttype", "pk": 98}, {"fields": {"model": "scope", "app_label": "oauth_provider"}, "model": "contenttypes.contenttype", "pk": 99}, {"fields": {"model": "consumer", "app_label": "oauth_provider"}, "model": "contenttypes.contenttype", "pk": 100}, {"fields": {"model": "token", "app_label": "oauth_provider"}, "model": "contenttypes.contenttype", "pk": 101}, {"fields": {"model": "resource", "app_label": "oauth_provider"}, "model": "contenttypes.contenttype", "pk": 102}, {"fields": {"model": "article", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 103}, {"fields": {"model": "articleforobject", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 104}, {"fields": {"model": "articlerevision", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 105}, {"fields": {"model": "urlpath", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 106}, {"fields": {"model": "articleplugin", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 107}, {"fields": {"model": "reusableplugin", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 108}, {"fields": {"model": "simpleplugin", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 109}, {"fields": {"model": "revisionplugin", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 110}, {"fields": {"model": "revisionpluginrevision", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 111}, {"fields": {"model": "image", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 112}, {"fields": {"model": "imagerevision", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 113}, {"fields": {"model": "attachment", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 114}, {"fields": {"model": "attachmentrevision", "app_label": "wiki"}, "model": "contenttypes.contenttype", "pk": 115}, {"fields": {"model": "notificationtype", "app_label": "django_notify"}, "model": "contenttypes.contenttype", "pk": 116}, {"fields": {"model": "settings", "app_label": "django_notify"}, "model": "contenttypes.contenttype", "pk": 117}, {"fields": {"model": "subscription", "app_label": "django_notify"}, "model": "contenttypes.contenttype", "pk": 118}, {"fields": {"model": "notification", "app_label": "django_notify"}, "model": "contenttypes.contenttype", "pk": 119}, {"fields": {"model": "logentry", "app_label": "admin"}, "model": "contenttypes.contenttype", "pk": 120}, {"fields": {"model": "role", "app_label": "django_comment_common"}, "model": "contenttypes.contenttype", "pk": 121}, {"fields": {"model": "permission", "app_label": "django_comment_common"}, "model": "contenttypes.contenttype", "pk": 122}, {"fields": {"model": "note", "app_label": "notes"}, "model": "contenttypes.contenttype", "pk": 123}, {"fields": {"model": "splashconfig", "app_label": "splash"}, "model": "contenttypes.contenttype", "pk": 124}, {"fields": {"model": "userpreference", "app_label": "user_api"}, "model": "contenttypes.contenttype", "pk": 125}, {"fields": {"model": "usercoursetag", "app_label": "user_api"}, "model": "contenttypes.contenttype", "pk": 126}, {"fields": {"model": "userorgtag", "app_label": "user_api"}, "model": "contenttypes.contenttype", "pk": 127}, {"fields": {"model": "order", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 128}, {"fields": {"model": "orderitem", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 129}, {"fields": {"model": "invoice", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 130}, {"fields": {"model": "invoicetransaction", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 131}, {"fields": {"model": "invoiceitem", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 132}, {"fields": {"model": "courseregistrationcodeinvoiceitem", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 133}, {"fields": {"model": "invoicehistory", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 134}, {"fields": {"model": "courseregistrationcode", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 135}, {"fields": {"model": "registrationcoderedemption", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 136}, {"fields": {"model": "coupon", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 137}, {"fields": {"model": "couponredemption", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 138}, {"fields": {"model": "paidcourseregistration", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 139}, {"fields": {"model": "courseregcodeitem", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 140}, {"fields": {"model": "courseregcodeitemannotation", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 141}, {"fields": {"model": "paidcourseregistrationannotation", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 142}, {"fields": {"model": "certificateitem", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 143}, {"fields": {"model": "donationconfiguration", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 144}, {"fields": {"model": "donation", "app_label": "shoppingcart"}, "model": "contenttypes.contenttype", "pk": 145}, {"fields": {"model": "coursemode", "app_label": "course_modes"}, "model": "contenttypes.contenttype", "pk": 146}, {"fields": {"model": "coursemodesarchive", "app_label": "course_modes"}, "model": "contenttypes.contenttype", "pk": 147}, {"fields": {"model": "coursemodeexpirationconfig", "app_label": "course_modes"}, "model": "contenttypes.contenttype", "pk": 148}, {"fields": {"model": "softwaresecurephotoverification", "app_label": "verify_student"}, "model": "contenttypes.contenttype", "pk": 149}, {"fields": {"model": "historicalverificationdeadline", "app_label": "verify_student"}, "model": "contenttypes.contenttype", "pk": 150}, {"fields": {"model": "verificationdeadline", "app_label": "verify_student"}, "model": "contenttypes.contenttype", "pk": 151}, {"fields": {"model": "verificationcheckpoint", "app_label": "verify_student"}, "model": "contenttypes.contenttype", "pk": 152}, {"fields": {"model": "verificationstatus", "app_label": "verify_student"}, "model": "contenttypes.contenttype", "pk": 153}, {"fields": {"model": "incoursereverificationconfiguration", "app_label": "verify_student"}, "model": "contenttypes.contenttype", "pk": 154}, {"fields": {"model": "icrvstatusemailsconfiguration", "app_label": "verify_student"}, "model": "contenttypes.contenttype", "pk": 155}, {"fields": {"model": "skippedreverification", "app_label": "verify_student"}, "model": "contenttypes.contenttype", "pk": 156}, {"fields": {"model": "darklangconfig", "app_label": "dark_lang"}, "model": "contenttypes.contenttype", "pk": 157}, {"fields": {"model": "microsite", "app_label": "microsite_configuration"}, "model": "contenttypes.contenttype", "pk": 158}, {"fields": {"model": "micrositehistory", "app_label": "microsite_configuration"}, "model": "contenttypes.contenttype", "pk": 159}, {"fields": {"model": "historicalmicrositeorganizationmapping", "app_label": "microsite_configuration"}, "model": "contenttypes.contenttype", "pk": 160}, {"fields": {"model": "micrositeorganizationmapping", "app_label": "microsite_configuration"}, "model": "contenttypes.contenttype", "pk": 161}, {"fields": {"model": "historicalmicrositetemplate", "app_label": "microsite_configuration"}, "model": "contenttypes.contenttype", "pk": 162}, {"fields": {"model": "micrositetemplate", "app_label": "microsite_configuration"}, "model": "contenttypes.contenttype", "pk": 163}, {"fields": {"model": "whitelistedrssurl", "app_label": "rss_proxy"}, "model": "contenttypes.contenttype", "pk": 164}, {"fields": {"model": "embargoedcourse", "app_label": "embargo"}, "model": "contenttypes.contenttype", "pk": 165}, {"fields": {"model": "embargoedstate", "app_label": "embargo"}, "model": "contenttypes.contenttype", "pk": 166}, {"fields": {"model": "restrictedcourse", "app_label": "embargo"}, "model": "contenttypes.contenttype", "pk": 167}, {"fields": {"model": "country", "app_label": "embargo"}, "model": "contenttypes.contenttype", "pk": 168}, {"fields": {"model": "countryaccessrule", "app_label": "embargo"}, "model": "contenttypes.contenttype", "pk": 169}, {"fields": {"model": "courseaccessrulehistory", "app_label": "embargo"}, "model": "contenttypes.contenttype", "pk": 170}, {"fields": {"model": "ipfilter", "app_label": "embargo"}, "model": "contenttypes.contenttype", "pk": 171}, {"fields": {"model": "coursererunstate", "app_label": "course_action_state"}, "model": "contenttypes.contenttype", "pk": 172}, {"fields": {"model": "mobileapiconfig", "app_label": "mobile_api"}, "model": "contenttypes.contenttype", "pk": 173}, {"fields": {"model": "appversionconfig", "app_label": "mobile_api"}, "model": "contenttypes.contenttype", "pk": 174}, {"fields": {"model": "usersocialauth", "app_label": "default"}, "model": "contenttypes.contenttype", "pk": 175}, {"fields": {"model": "nonce", "app_label": "default"}, "model": "contenttypes.contenttype", "pk": 176}, {"fields": {"model": "association", "app_label": "default"}, "model": "contenttypes.contenttype", "pk": 177}, {"fields": {"model": "code", "app_label": "default"}, "model": "contenttypes.contenttype", "pk": 178}, {"fields": {"model": "surveyform", "app_label": "survey"}, "model": "contenttypes.contenttype", "pk": 179}, {"fields": {"model": "surveyanswer", "app_label": "survey"}, "model": "contenttypes.contenttype", "pk": 180}, {"fields": {"model": "xblockasidesconfig", "app_label": "lms_xblock"}, "model": "contenttypes.contenttype", "pk": 181}, {"fields": {"model": "courseoverview", "app_label": "course_overviews"}, "model": "contenttypes.contenttype", "pk": 182}, {"fields": {"model": "courseoverviewtab", "app_label": "course_overviews"}, "model": "contenttypes.contenttype", "pk": 183}, {"fields": {"model": "courseoverviewimageset", "app_label": "course_overviews"}, "model": "contenttypes.contenttype", "pk": 184}, {"fields": {"model": "courseoverviewimageconfig", "app_label": "course_overviews"}, "model": "contenttypes.contenttype", "pk": 185}, {"fields": {"model": "coursestructure", "app_label": "course_structures"}, "model": "contenttypes.contenttype", "pk": 186}, {"fields": {"model": "corsmodel", "app_label": "corsheaders"}, "model": "contenttypes.contenttype", "pk": 187}, {"fields": {"model": "xdomainproxyconfiguration", "app_label": "cors_csrf"}, "model": "contenttypes.contenttype", "pk": 188}, {"fields": {"model": "commerceconfiguration", "app_label": "commerce"}, "model": "contenttypes.contenttype", "pk": 189}, {"fields": {"model": "creditprovider", "app_label": "credit"}, "model": "contenttypes.contenttype", "pk": 190}, {"fields": {"model": "creditcourse", "app_label": "credit"}, "model": "contenttypes.contenttype", "pk": 191}, {"fields": {"model": "creditrequirement", "app_label": "credit"}, "model": "contenttypes.contenttype", "pk": 192}, {"fields": {"model": "historicalcreditrequirementstatus", "app_label": "credit"}, "model": "contenttypes.contenttype", "pk": 193}, {"fields": {"model": "creditrequirementstatus", "app_label": "credit"}, "model": "contenttypes.contenttype", "pk": 194}, {"fields": {"model": "crediteligibility", "app_label": "credit"}, "model": "contenttypes.contenttype", "pk": 195}, {"fields": {"model": "historicalcreditrequest", "app_label": "credit"}, "model": "contenttypes.contenttype", "pk": 196}, {"fields": {"model": "creditrequest", "app_label": "credit"}, "model": "contenttypes.contenttype", "pk": 197}, {"fields": {"model": "creditconfig", "app_label": "credit"}, "model": "contenttypes.contenttype", "pk": 198}, {"fields": {"model": "courseteam", "app_label": "teams"}, "model": "contenttypes.contenttype", "pk": 199}, {"fields": {"model": "courseteammembership", "app_label": "teams"}, "model": "contenttypes.contenttype", "pk": 200}, {"fields": {"model": "xblockdisableconfig", "app_label": "xblock_django"}, "model": "contenttypes.contenttype", "pk": 201}, {"fields": {"model": "bookmark", "app_label": "bookmarks"}, "model": "contenttypes.contenttype", "pk": 202}, {"fields": {"model": "xblockcache", "app_label": "bookmarks"}, "model": "contenttypes.contenttype", "pk": 203}, {"fields": {"model": "programsapiconfig", "app_label": "programs"}, "model": "contenttypes.contenttype", "pk": 204}, {"fields": {"model": "selfpacedconfiguration", "app_label": "self_paced"}, "model": "contenttypes.contenttype", "pk": 205}, {"fields": {"model": "kvstore", "app_label": "thumbnail"}, "model": "contenttypes.contenttype", "pk": 206}, {"fields": {"model": "credentialsapiconfig", "app_label": "credentials"}, "model": "contenttypes.contenttype", "pk": 207}, {"fields": {"model": "milestone", "app_label": "milestones"}, "model": "contenttypes.contenttype", "pk": 208}, {"fields": {"model": "milestonerelationshiptype", "app_label": "milestones"}, "model": "contenttypes.contenttype", "pk": 209}, {"fields": {"model": "coursemilestone", "app_label": "milestones"}, "model": "contenttypes.contenttype", "pk": 210}, {"fields": {"model": "coursecontentmilestone", "app_label": "milestones"}, "model": "contenttypes.contenttype", "pk": 211}, {"fields": {"model": "usermilestone", "app_label": "milestones"}, "model": "contenttypes.contenttype", "pk": 212}, {"fields": {"model": "coursetalkwidgetconfiguration", "app_label": "coursetalk"}, "model": "contenttypes.contenttype", "pk": 213}, {"fields": {"model": "historicalapiaccessrequest", "app_label": "api_admin"}, "model": "contenttypes.contenttype", "pk": 214}, {"fields": {"model": "apiaccessconfig", "app_label": "api_admin"}, "model": "contenttypes.contenttype", "pk": 215}, {"fields": {"model": "catalog", "app_label": "api_admin"}, "model": "contenttypes.contenttype", "pk": 216}, {"fields": {"model": "verifiedtrackcohortedcourse", "app_label": "verified_track_content"}, "model": "contenttypes.contenttype", "pk": 217}, {"fields": {"model": "badgeclass", "app_label": "badges"}, "model": "contenttypes.contenttype", "pk": 218}, {"fields": {"model": "badgeassertion", "app_label": "badges"}, "model": "contenttypes.contenttype", "pk": 219}, {"fields": {"model": "coursecompleteimageconfiguration", "app_label": "badges"}, "model": "contenttypes.contenttype", "pk": 220}, {"fields": {"model": "courseeventbadgesconfiguration", "app_label": "badges"}, "model": "contenttypes.contenttype", "pk": 221}, {"fields": {"model": "studentitem", "app_label": "submissions"}, "model": "contenttypes.contenttype", "pk": 222}, {"fields": {"model": "submission", "app_label": "submissions"}, "model": "contenttypes.contenttype", "pk": 223}, {"fields": {"model": "score", "app_label": "submissions"}, "model": "contenttypes.contenttype", "pk": 224}, {"fields": {"model": "scoresummary", "app_label": "submissions"}, "model": "contenttypes.contenttype", "pk": 225}, {"fields": {"model": "scoreannotation", "app_label": "submissions"}, "model": "contenttypes.contenttype", "pk": 226}, {"fields": {"model": "rubric", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 227}, {"fields": {"model": "criterion", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 228}, {"fields": {"model": "criterionoption", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 229}, {"fields": {"model": "assessment", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 230}, {"fields": {"model": "assessmentpart", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 231}, {"fields": {"model": "assessmentfeedbackoption", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 232}, {"fields": {"model": "assessmentfeedback", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 233}, {"fields": {"model": "peerworkflow", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 234}, {"fields": {"model": "peerworkflowitem", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 235}, {"fields": {"model": "trainingexample", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 236}, {"fields": {"model": "studenttrainingworkflow", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 237}, {"fields": {"model": "studenttrainingworkflowitem", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 238}, {"fields": {"model": "aiclassifierset", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 239}, {"fields": {"model": "aiclassifier", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 240}, {"fields": {"model": "aitrainingworkflow", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 241}, {"fields": {"model": "aigradingworkflow", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 242}, {"fields": {"model": "staffworkflow", "app_label": "assessment"}, "model": "contenttypes.contenttype", "pk": 243}, {"fields": {"model": "assessmentworkflow", "app_label": "workflow"}, "model": "contenttypes.contenttype", "pk": 244}, {"fields": {"model": "assessmentworkflowstep", "app_label": "workflow"}, "model": "contenttypes.contenttype", "pk": 245}, {"fields": {"model": "assessmentworkflowcancellation", "app_label": "workflow"}, "model": "contenttypes.contenttype", "pk": 246}, {"fields": {"model": "profile", "app_label": "edxval"}, "model": "contenttypes.contenttype", "pk": 247}, {"fields": {"model": "video", "app_label": "edxval"}, "model": "contenttypes.contenttype", "pk": 248}, {"fields": {"model": "coursevideo", "app_label": "edxval"}, "model": "contenttypes.contenttype", "pk": 249}, {"fields": {"model": "encodedvideo", "app_label": "edxval"}, "model": "contenttypes.contenttype", "pk": 250}, {"fields": {"model": "subtitle", "app_label": "edxval"}, "model": "contenttypes.contenttype", "pk": 251}, {"fields": {"model": "proctoredexam", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 252}, {"fields": {"model": "proctoredexamreviewpolicy", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 253}, {"fields": {"model": "proctoredexamreviewpolicyhistory", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 254}, {"fields": {"model": "proctoredexamstudentattempt", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 255}, {"fields": {"model": "proctoredexamstudentattempthistory", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 256}, {"fields": {"model": "proctoredexamstudentallowance", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 257}, {"fields": {"model": "proctoredexamstudentallowancehistory", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 258}, {"fields": {"model": "proctoredexamsoftwaresecurereview", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 259}, {"fields": {"model": "proctoredexamsoftwaresecurereviewhistory", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 260}, {"fields": {"model": "proctoredexamsoftwaresecurecomment", "app_label": "edx_proctoring"}, "model": "contenttypes.contenttype", "pk": 261}, {"fields": {"model": "organization", "app_label": "organizations"}, "model": "contenttypes.contenttype", "pk": 262}, {"fields": {"model": "organizationcourse", "app_label": "organizations"}, "model": "contenttypes.contenttype", "pk": 263}, {"fields": {"model": "customcourseforedx", "app_label": "ccx"}, "model": "contenttypes.contenttype", "pk": 264}, {"fields": {"model": "ccxfieldoverride", "app_label": "ccx"}, "model": "contenttypes.contenttype", "pk": 265}, {"fields": {"model": "ccxcon", "app_label": "ccxcon"}, "model": "contenttypes.contenttype", "pk": 266}, {"fields": {"model": "studentmodulehistoryextended", "app_label": "coursewarehistoryextended"}, "model": "contenttypes.contenttype", "pk": 267}, {"fields": {"model": "videouploadconfig", "app_label": "contentstore"}, "model": "contenttypes.contenttype", "pk": 268}, {"fields": {"model": "pushnotificationconfig", "app_label": "contentstore"}, "model": "contenttypes.contenttype", "pk": 269}, {"fields": {"model": "coursecreator", "app_label": "course_creators"}, "model": "contenttypes.contenttype", "pk": 270}, {"fields": {"model": "studioconfig", "app_label": "xblock_config"}, "model": "contenttypes.contenttype", "pk": 271}, {"fields": {"model": "tagcategories", "app_label": "tagging"}, "model": "contenttypes.contenttype", "pk": 272}, {"fields": {"model": "tagavailablevalues", "app_label": "tagging"}, "model": "contenttypes.contenttype", "pk": 273}, {"fields": {"domain": "example.com", "name": "example.com"}, "model": "sites.site", "pk": 1}, {"fields": {"plain_template": "{course_title}\n\n{{message_body}}\r\n----\r\nCopyright 2013 edX, All rights reserved.\r\n----\r\nConnect with edX:\r\nFacebook (http://facebook.com/edxonline)\r\nTwitter (http://twitter.com/edxonline)\r\nGoogle+ (https://plus.google.com/108235383044095082735)\r\nMeetup (http://www.meetup.com/edX-Communities/)\r\n----\r\nThis email was automatically sent from {platform_name}.\r\nYou are receiving this email at address {email} because you are enrolled in {course_title}\r\n(URL: {course_url} ).\r\nTo stop receiving email like this, update your course email settings at {email_settings_url}.\r\n", "html_template": " Update from {course_title}

edX
Connect with edX:        

{course_title}


{{message_body}}
       
Copyright \u00a9 2013 edX, All rights reserved.


Our mailing address is:
edX
11 Cambridge Center, Suite 101
Cambridge, MA, USA 02142


This email was automatically sent from {platform_name}.
You are receiving this email at address {email} because you are enrolled in {course_title}.
To stop receiving email like this, update your course email settings here.
", "name": null}, "model": "bulk_email.courseemailtemplate", "pk": 1}, {"fields": {"plain_template": "THIS IS A BRANDED TEXT TEMPLATE. {course_title}\n\n{{message_body}}\r\n----\r\nCopyright 2013 edX, All rights reserved.\r\n----\r\nConnect with edX:\r\nFacebook (http://facebook.com/edxonline)\r\nTwitter (http://twitter.com/edxonline)\r\nGoogle+ (https://plus.google.com/108235383044095082735)\r\nMeetup (http://www.meetup.com/edX-Communities/)\r\n----\r\nThis email was automatically sent from {platform_name}.\r\nYou are receiving this email at address {email} because you are enrolled in {course_title}\r\n(URL: {course_url} ).\r\nTo stop receiving email like this, update your course email settings at {email_settings_url}.\r\n", "html_template": " THIS IS A BRANDED HTML TEMPLATE Update from {course_title}

edX
Connect with edX:        

{course_title}


{{message_body}}
       
Copyright \u00a9 2013 edX, All rights reserved.


Our mailing address is:
edX
11 Cambridge Center, Suite 101
Cambridge, MA, USA 02142


This email was automatically sent from {platform_name}.
You are receiving this email at address {email} because you are enrolled in {course_title}.
To stop receiving email like this, update your course email settings here.
", "name": "branded.template"}, "model": "bulk_email.courseemailtemplate", "pk": 2}, {"fields": {"country": "AF"}, "model": "embargo.country", "pk": 1}, {"fields": {"country": "AX"}, "model": "embargo.country", "pk": 2}, {"fields": {"country": "AL"}, "model": "embargo.country", "pk": 3}, {"fields": {"country": "DZ"}, "model": "embargo.country", "pk": 4}, {"fields": {"country": "AS"}, "model": "embargo.country", "pk": 5}, {"fields": {"country": "AD"}, "model": "embargo.country", "pk": 6}, {"fields": {"country": "AO"}, "model": "embargo.country", "pk": 7}, {"fields": {"country": "AI"}, "model": "embargo.country", "pk": 8}, {"fields": {"country": "AQ"}, "model": "embargo.country", "pk": 9}, {"fields": {"country": "AG"}, "model": "embargo.country", "pk": 10}, {"fields": {"country": "AR"}, "model": "embargo.country", "pk": 11}, {"fields": {"country": "AM"}, "model": "embargo.country", "pk": 12}, {"fields": {"country": "AW"}, "model": "embargo.country", "pk": 13}, {"fields": {"country": "AU"}, "model": "embargo.country", "pk": 14}, {"fields": {"country": "AT"}, "model": "embargo.country", "pk": 15}, {"fields": {"country": "AZ"}, "model": "embargo.country", "pk": 16}, {"fields": {"country": "BS"}, "model": "embargo.country", "pk": 17}, {"fields": {"country": "BH"}, "model": "embargo.country", "pk": 18}, {"fields": {"country": "BD"}, "model": "embargo.country", "pk": 19}, {"fields": {"country": "BB"}, "model": "embargo.country", "pk": 20}, {"fields": {"country": "BY"}, "model": "embargo.country", "pk": 21}, {"fields": {"country": "BE"}, "model": "embargo.country", "pk": 22}, {"fields": {"country": "BZ"}, "model": "embargo.country", "pk": 23}, {"fields": {"country": "BJ"}, "model": "embargo.country", "pk": 24}, {"fields": {"country": "BM"}, "model": "embargo.country", "pk": 25}, {"fields": {"country": "BT"}, "model": "embargo.country", "pk": 26}, {"fields": {"country": "BO"}, "model": "embargo.country", "pk": 27}, {"fields": {"country": "BQ"}, "model": "embargo.country", "pk": 28}, {"fields": {"country": "BA"}, "model": "embargo.country", "pk": 29}, {"fields": {"country": "BW"}, "model": "embargo.country", "pk": 30}, {"fields": {"country": "BV"}, "model": "embargo.country", "pk": 31}, {"fields": {"country": "BR"}, "model": "embargo.country", "pk": 32}, {"fields": {"country": "IO"}, "model": "embargo.country", "pk": 33}, {"fields": {"country": "BN"}, "model": "embargo.country", "pk": 34}, {"fields": {"country": "BG"}, "model": "embargo.country", "pk": 35}, {"fields": {"country": "BF"}, "model": "embargo.country", "pk": 36}, {"fields": {"country": "BI"}, "model": "embargo.country", "pk": 37}, {"fields": {"country": "CV"}, "model": "embargo.country", "pk": 38}, {"fields": {"country": "KH"}, "model": "embargo.country", "pk": 39}, {"fields": {"country": "CM"}, "model": "embargo.country", "pk": 40}, {"fields": {"country": "CA"}, "model": "embargo.country", "pk": 41}, {"fields": {"country": "KY"}, "model": "embargo.country", "pk": 42}, {"fields": {"country": "CF"}, "model": "embargo.country", "pk": 43}, {"fields": {"country": "TD"}, "model": "embargo.country", "pk": 44}, {"fields": {"country": "CL"}, "model": "embargo.country", "pk": 45}, {"fields": {"country": "CN"}, "model": "embargo.country", "pk": 46}, {"fields": {"country": "CX"}, "model": "embargo.country", "pk": 47}, {"fields": {"country": "CC"}, "model": "embargo.country", "pk": 48}, {"fields": {"country": "CO"}, "model": "embargo.country", "pk": 49}, {"fields": {"country": "KM"}, "model": "embargo.country", "pk": 50}, {"fields": {"country": "CG"}, "model": "embargo.country", "pk": 51}, {"fields": {"country": "CD"}, "model": "embargo.country", "pk": 52}, {"fields": {"country": "CK"}, "model": "embargo.country", "pk": 53}, {"fields": {"country": "CR"}, "model": "embargo.country", "pk": 54}, {"fields": {"country": "CI"}, "model": "embargo.country", "pk": 55}, {"fields": {"country": "HR"}, "model": "embargo.country", "pk": 56}, {"fields": {"country": "CU"}, "model": "embargo.country", "pk": 57}, {"fields": {"country": "CW"}, "model": "embargo.country", "pk": 58}, {"fields": {"country": "CY"}, "model": "embargo.country", "pk": 59}, {"fields": {"country": "CZ"}, "model": "embargo.country", "pk": 60}, {"fields": {"country": "DK"}, "model": "embargo.country", "pk": 61}, {"fields": {"country": "DJ"}, "model": "embargo.country", "pk": 62}, {"fields": {"country": "DM"}, "model": "embargo.country", "pk": 63}, {"fields": {"country": "DO"}, "model": "embargo.country", "pk": 64}, {"fields": {"country": "EC"}, "model": "embargo.country", "pk": 65}, {"fields": {"country": "EG"}, "model": "embargo.country", "pk": 66}, {"fields": {"country": "SV"}, "model": "embargo.country", "pk": 67}, {"fields": {"country": "GQ"}, "model": "embargo.country", "pk": 68}, {"fields": {"country": "ER"}, "model": "embargo.country", "pk": 69}, {"fields": {"country": "EE"}, "model": "embargo.country", "pk": 70}, {"fields": {"country": "ET"}, "model": "embargo.country", "pk": 71}, {"fields": {"country": "FK"}, "model": "embargo.country", "pk": 72}, {"fields": {"country": "FO"}, "model": "embargo.country", "pk": 73}, {"fields": {"country": "FJ"}, "model": "embargo.country", "pk": 74}, {"fields": {"country": "FI"}, "model": "embargo.country", "pk": 75}, {"fields": {"country": "FR"}, "model": "embargo.country", "pk": 76}, {"fields": {"country": "GF"}, "model": "embargo.country", "pk": 77}, {"fields": {"country": "PF"}, "model": "embargo.country", "pk": 78}, {"fields": {"country": "TF"}, "model": "embargo.country", "pk": 79}, {"fields": {"country": "GA"}, "model": "embargo.country", "pk": 80}, {"fields": {"country": "GM"}, "model": "embargo.country", "pk": 81}, {"fields": {"country": "GE"}, "model": "embargo.country", "pk": 82}, {"fields": {"country": "DE"}, "model": "embargo.country", "pk": 83}, {"fields": {"country": "GH"}, "model": "embargo.country", "pk": 84}, {"fields": {"country": "GI"}, "model": "embargo.country", "pk": 85}, {"fields": {"country": "GR"}, "model": "embargo.country", "pk": 86}, {"fields": {"country": "GL"}, "model": "embargo.country", "pk": 87}, {"fields": {"country": "GD"}, "model": "embargo.country", "pk": 88}, {"fields": {"country": "GP"}, "model": "embargo.country", "pk": 89}, {"fields": {"country": "GU"}, "model": "embargo.country", "pk": 90}, {"fields": {"country": "GT"}, "model": "embargo.country", "pk": 91}, {"fields": {"country": "GG"}, "model": "embargo.country", "pk": 92}, {"fields": {"country": "GN"}, "model": "embargo.country", "pk": 93}, {"fields": {"country": "GW"}, "model": "embargo.country", "pk": 94}, {"fields": {"country": "GY"}, "model": "embargo.country", "pk": 95}, {"fields": {"country": "HT"}, "model": "embargo.country", "pk": 96}, {"fields": {"country": "HM"}, "model": "embargo.country", "pk": 97}, {"fields": {"country": "VA"}, "model": "embargo.country", "pk": 98}, {"fields": {"country": "HN"}, "model": "embargo.country", "pk": 99}, {"fields": {"country": "HK"}, "model": "embargo.country", "pk": 100}, {"fields": {"country": "HU"}, "model": "embargo.country", "pk": 101}, {"fields": {"country": "IS"}, "model": "embargo.country", "pk": 102}, {"fields": {"country": "IN"}, "model": "embargo.country", "pk": 103}, {"fields": {"country": "ID"}, "model": "embargo.country", "pk": 104}, {"fields": {"country": "IR"}, "model": "embargo.country", "pk": 105}, {"fields": {"country": "IQ"}, "model": "embargo.country", "pk": 106}, {"fields": {"country": "IE"}, "model": "embargo.country", "pk": 107}, {"fields": {"country": "IM"}, "model": "embargo.country", "pk": 108}, {"fields": {"country": "IL"}, "model": "embargo.country", "pk": 109}, {"fields": {"country": "IT"}, "model": "embargo.country", "pk": 110}, {"fields": {"country": "JM"}, "model": "embargo.country", "pk": 111}, {"fields": {"country": "JP"}, "model": "embargo.country", "pk": 112}, {"fields": {"country": "JE"}, "model": "embargo.country", "pk": 113}, {"fields": {"country": "JO"}, "model": "embargo.country", "pk": 114}, {"fields": {"country": "KZ"}, "model": "embargo.country", "pk": 115}, {"fields": {"country": "KE"}, "model": "embargo.country", "pk": 116}, {"fields": {"country": "KI"}, "model": "embargo.country", "pk": 117}, {"fields": {"country": "XK"}, "model": "embargo.country", "pk": 118}, {"fields": {"country": "KW"}, "model": "embargo.country", "pk": 119}, {"fields": {"country": "KG"}, "model": "embargo.country", "pk": 120}, {"fields": {"country": "LA"}, "model": "embargo.country", "pk": 121}, {"fields": {"country": "LV"}, "model": "embargo.country", "pk": 122}, {"fields": {"country": "LB"}, "model": "embargo.country", "pk": 123}, {"fields": {"country": "LS"}, "model": "embargo.country", "pk": 124}, {"fields": {"country": "LR"}, "model": "embargo.country", "pk": 125}, {"fields": {"country": "LY"}, "model": "embargo.country", "pk": 126}, {"fields": {"country": "LI"}, "model": "embargo.country", "pk": 127}, {"fields": {"country": "LT"}, "model": "embargo.country", "pk": 128}, {"fields": {"country": "LU"}, "model": "embargo.country", "pk": 129}, {"fields": {"country": "MO"}, "model": "embargo.country", "pk": 130}, {"fields": {"country": "MK"}, "model": "embargo.country", "pk": 131}, {"fields": {"country": "MG"}, "model": "embargo.country", "pk": 132}, {"fields": {"country": "MW"}, "model": "embargo.country", "pk": 133}, {"fields": {"country": "MY"}, "model": "embargo.country", "pk": 134}, {"fields": {"country": "MV"}, "model": "embargo.country", "pk": 135}, {"fields": {"country": "ML"}, "model": "embargo.country", "pk": 136}, {"fields": {"country": "MT"}, "model": "embargo.country", "pk": 137}, {"fields": {"country": "MH"}, "model": "embargo.country", "pk": 138}, {"fields": {"country": "MQ"}, "model": "embargo.country", "pk": 139}, {"fields": {"country": "MR"}, "model": "embargo.country", "pk": 140}, {"fields": {"country": "MU"}, "model": "embargo.country", "pk": 141}, {"fields": {"country": "YT"}, "model": "embargo.country", "pk": 142}, {"fields": {"country": "MX"}, "model": "embargo.country", "pk": 143}, {"fields": {"country": "FM"}, "model": "embargo.country", "pk": 144}, {"fields": {"country": "MD"}, "model": "embargo.country", "pk": 145}, {"fields": {"country": "MC"}, "model": "embargo.country", "pk": 146}, {"fields": {"country": "MN"}, "model": "embargo.country", "pk": 147}, {"fields": {"country": "ME"}, "model": "embargo.country", "pk": 148}, {"fields": {"country": "MS"}, "model": "embargo.country", "pk": 149}, {"fields": {"country": "MA"}, "model": "embargo.country", "pk": 150}, {"fields": {"country": "MZ"}, "model": "embargo.country", "pk": 151}, {"fields": {"country": "MM"}, "model": "embargo.country", "pk": 152}, {"fields": {"country": "NA"}, "model": "embargo.country", "pk": 153}, {"fields": {"country": "NR"}, "model": "embargo.country", "pk": 154}, {"fields": {"country": "NP"}, "model": "embargo.country", "pk": 155}, {"fields": {"country": "NL"}, "model": "embargo.country", "pk": 156}, {"fields": {"country": "NC"}, "model": "embargo.country", "pk": 157}, {"fields": {"country": "NZ"}, "model": "embargo.country", "pk": 158}, {"fields": {"country": "NI"}, "model": "embargo.country", "pk": 159}, {"fields": {"country": "NE"}, "model": "embargo.country", "pk": 160}, {"fields": {"country": "NG"}, "model": "embargo.country", "pk": 161}, {"fields": {"country": "NU"}, "model": "embargo.country", "pk": 162}, {"fields": {"country": "NF"}, "model": "embargo.country", "pk": 163}, {"fields": {"country": "KP"}, "model": "embargo.country", "pk": 164}, {"fields": {"country": "MP"}, "model": "embargo.country", "pk": 165}, {"fields": {"country": "NO"}, "model": "embargo.country", "pk": 166}, {"fields": {"country": "OM"}, "model": "embargo.country", "pk": 167}, {"fields": {"country": "PK"}, "model": "embargo.country", "pk": 168}, {"fields": {"country": "PW"}, "model": "embargo.country", "pk": 169}, {"fields": {"country": "PS"}, "model": "embargo.country", "pk": 170}, {"fields": {"country": "PA"}, "model": "embargo.country", "pk": 171}, {"fields": {"country": "PG"}, "model": "embargo.country", "pk": 172}, {"fields": {"country": "PY"}, "model": "embargo.country", "pk": 173}, {"fields": {"country": "PE"}, "model": "embargo.country", "pk": 174}, {"fields": {"country": "PH"}, "model": "embargo.country", "pk": 175}, {"fields": {"country": "PN"}, "model": "embargo.country", "pk": 176}, {"fields": {"country": "PL"}, "model": "embargo.country", "pk": 177}, {"fields": {"country": "PT"}, "model": "embargo.country", "pk": 178}, {"fields": {"country": "PR"}, "model": "embargo.country", "pk": 179}, {"fields": {"country": "QA"}, "model": "embargo.country", "pk": 180}, {"fields": {"country": "RE"}, "model": "embargo.country", "pk": 181}, {"fields": {"country": "RO"}, "model": "embargo.country", "pk": 182}, {"fields": {"country": "RU"}, "model": "embargo.country", "pk": 183}, {"fields": {"country": "RW"}, "model": "embargo.country", "pk": 184}, {"fields": {"country": "BL"}, "model": "embargo.country", "pk": 185}, {"fields": {"country": "SH"}, "model": "embargo.country", "pk": 186}, {"fields": {"country": "KN"}, "model": "embargo.country", "pk": 187}, {"fields": {"country": "LC"}, "model": "embargo.country", "pk": 188}, {"fields": {"country": "MF"}, "model": "embargo.country", "pk": 189}, {"fields": {"country": "PM"}, "model": "embargo.country", "pk": 190}, {"fields": {"country": "VC"}, "model": "embargo.country", "pk": 191}, {"fields": {"country": "WS"}, "model": "embargo.country", "pk": 192}, {"fields": {"country": "SM"}, "model": "embargo.country", "pk": 193}, {"fields": {"country": "ST"}, "model": "embargo.country", "pk": 194}, {"fields": {"country": "SA"}, "model": "embargo.country", "pk": 195}, {"fields": {"country": "SN"}, "model": "embargo.country", "pk": 196}, {"fields": {"country": "RS"}, "model": "embargo.country", "pk": 197}, {"fields": {"country": "SC"}, "model": "embargo.country", "pk": 198}, {"fields": {"country": "SL"}, "model": "embargo.country", "pk": 199}, {"fields": {"country": "SG"}, "model": "embargo.country", "pk": 200}, {"fields": {"country": "SX"}, "model": "embargo.country", "pk": 201}, {"fields": {"country": "SK"}, "model": "embargo.country", "pk": 202}, {"fields": {"country": "SI"}, "model": "embargo.country", "pk": 203}, {"fields": {"country": "SB"}, "model": "embargo.country", "pk": 204}, {"fields": {"country": "SO"}, "model": "embargo.country", "pk": 205}, {"fields": {"country": "ZA"}, "model": "embargo.country", "pk": 206}, {"fields": {"country": "GS"}, "model": "embargo.country", "pk": 207}, {"fields": {"country": "KR"}, "model": "embargo.country", "pk": 208}, {"fields": {"country": "SS"}, "model": "embargo.country", "pk": 209}, {"fields": {"country": "ES"}, "model": "embargo.country", "pk": 210}, {"fields": {"country": "LK"}, "model": "embargo.country", "pk": 211}, {"fields": {"country": "SD"}, "model": "embargo.country", "pk": 212}, {"fields": {"country": "SR"}, "model": "embargo.country", "pk": 213}, {"fields": {"country": "SJ"}, "model": "embargo.country", "pk": 214}, {"fields": {"country": "SZ"}, "model": "embargo.country", "pk": 215}, {"fields": {"country": "SE"}, "model": "embargo.country", "pk": 216}, {"fields": {"country": "CH"}, "model": "embargo.country", "pk": 217}, {"fields": {"country": "SY"}, "model": "embargo.country", "pk": 218}, {"fields": {"country": "TW"}, "model": "embargo.country", "pk": 219}, {"fields": {"country": "TJ"}, "model": "embargo.country", "pk": 220}, {"fields": {"country": "TZ"}, "model": "embargo.country", "pk": 221}, {"fields": {"country": "TH"}, "model": "embargo.country", "pk": 222}, {"fields": {"country": "TL"}, "model": "embargo.country", "pk": 223}, {"fields": {"country": "TG"}, "model": "embargo.country", "pk": 224}, {"fields": {"country": "TK"}, "model": "embargo.country", "pk": 225}, {"fields": {"country": "TO"}, "model": "embargo.country", "pk": 226}, {"fields": {"country": "TT"}, "model": "embargo.country", "pk": 227}, {"fields": {"country": "TN"}, "model": "embargo.country", "pk": 228}, {"fields": {"country": "TR"}, "model": "embargo.country", "pk": 229}, {"fields": {"country": "TM"}, "model": "embargo.country", "pk": 230}, {"fields": {"country": "TC"}, "model": "embargo.country", "pk": 231}, {"fields": {"country": "TV"}, "model": "embargo.country", "pk": 232}, {"fields": {"country": "UG"}, "model": "embargo.country", "pk": 233}, {"fields": {"country": "UA"}, "model": "embargo.country", "pk": 234}, {"fields": {"country": "AE"}, "model": "embargo.country", "pk": 235}, {"fields": {"country": "GB"}, "model": "embargo.country", "pk": 236}, {"fields": {"country": "UM"}, "model": "embargo.country", "pk": 237}, {"fields": {"country": "US"}, "model": "embargo.country", "pk": 238}, {"fields": {"country": "UY"}, "model": "embargo.country", "pk": 239}, {"fields": {"country": "UZ"}, "model": "embargo.country", "pk": 240}, {"fields": {"country": "VU"}, "model": "embargo.country", "pk": 241}, {"fields": {"country": "VE"}, "model": "embargo.country", "pk": 242}, {"fields": {"country": "VN"}, "model": "embargo.country", "pk": 243}, {"fields": {"country": "VG"}, "model": "embargo.country", "pk": 244}, {"fields": {"country": "VI"}, "model": "embargo.country", "pk": 245}, {"fields": {"country": "WF"}, "model": "embargo.country", "pk": 246}, {"fields": {"country": "EH"}, "model": "embargo.country", "pk": 247}, {"fields": {"country": "YE"}, "model": "embargo.country", "pk": 248}, {"fields": {"country": "ZM"}, "model": "embargo.country", "pk": 249}, {"fields": {"country": "ZW"}, "model": "embargo.country", "pk": 250}, {"fields": {"active": true, "description": "Autogenerated milestone relationship type \"fulfills\"", "modified": "2016-05-10T17:01:06.789Z", "name": "fulfills", "created": "2016-05-10T17:01:06.788Z"}, "model": "milestones.milestonerelationshiptype", "pk": 1}, {"fields": {"active": true, "description": "Autogenerated milestone relationship type \"requires\"", "modified": "2016-05-10T17:01:06.791Z", "name": "requires", "created": "2016-05-10T17:01:06.791Z"}, "model": "milestones.milestonerelationshiptype", "pk": 2}, {"fields": {"default": false, "mode": "honor", "icon": "badges/honor_6tpZhYm.png"}, "model": "badges.coursecompleteimageconfiguration", "pk": 1}, {"fields": {"default": false, "mode": "verified", "icon": "badges/verified_uRmBfW1.png"}, "model": "badges.coursecompleteimageconfiguration", "pk": 2}, {"fields": {"default": false, "mode": "professional", "icon": "badges/professional_CSc06S2.png"}, "model": "badges.coursecompleteimageconfiguration", "pk": 3}, {"fields": {"profile_name": "desktop_mp4"}, "model": "edxval.profile", "pk": 1}, {"fields": {"profile_name": "desktop_webm"}, "model": "edxval.profile", "pk": 2}, {"fields": {"profile_name": "mobile_high"}, "model": "edxval.profile", "pk": 3}, {"fields": {"profile_name": "mobile_low"}, "model": "edxval.profile", "pk": 4}, {"fields": {"profile_name": "youtube"}, "model": "edxval.profile", "pk": 5}, {"fields": {"codename": "add_permission", "name": "Can add permission", "content_type": 2}, "model": "auth.permission", "pk": 1}, {"fields": {"codename": "change_permission", "name": "Can change permission", "content_type": 2}, "model": "auth.permission", "pk": 2}, {"fields": {"codename": "delete_permission", "name": "Can delete permission", "content_type": 2}, "model": "auth.permission", "pk": 3}, {"fields": {"codename": "add_group", "name": "Can add group", "content_type": 3}, "model": "auth.permission", "pk": 4}, {"fields": {"codename": "change_group", "name": "Can change group", "content_type": 3}, "model": "auth.permission", "pk": 5}, {"fields": {"codename": "delete_group", "name": "Can delete group", "content_type": 3}, "model": "auth.permission", "pk": 6}, {"fields": {"codename": "add_user", "name": "Can add user", "content_type": 4}, "model": "auth.permission", "pk": 7}, {"fields": {"codename": "change_user", "name": "Can change user", "content_type": 4}, "model": "auth.permission", "pk": 8}, {"fields": {"codename": "delete_user", "name": "Can delete user", "content_type": 4}, "model": "auth.permission", "pk": 9}, {"fields": {"codename": "add_contenttype", "name": "Can add content type", "content_type": 5}, "model": "auth.permission", "pk": 10}, {"fields": {"codename": "change_contenttype", "name": "Can change content type", "content_type": 5}, "model": "auth.permission", "pk": 11}, {"fields": {"codename": "delete_contenttype", "name": "Can delete content type", "content_type": 5}, "model": "auth.permission", "pk": 12}, {"fields": {"codename": "add_session", "name": "Can add session", "content_type": 6}, "model": "auth.permission", "pk": 13}, {"fields": {"codename": "change_session", "name": "Can change session", "content_type": 6}, "model": "auth.permission", "pk": 14}, {"fields": {"codename": "delete_session", "name": "Can delete session", "content_type": 6}, "model": "auth.permission", "pk": 15}, {"fields": {"codename": "add_site", "name": "Can add site", "content_type": 7}, "model": "auth.permission", "pk": 16}, {"fields": {"codename": "change_site", "name": "Can change site", "content_type": 7}, "model": "auth.permission", "pk": 17}, {"fields": {"codename": "delete_site", "name": "Can delete site", "content_type": 7}, "model": "auth.permission", "pk": 18}, {"fields": {"codename": "add_taskmeta", "name": "Can add task state", "content_type": 8}, "model": "auth.permission", "pk": 19}, {"fields": {"codename": "change_taskmeta", "name": "Can change task state", "content_type": 8}, "model": "auth.permission", "pk": 20}, {"fields": {"codename": "delete_taskmeta", "name": "Can delete task state", "content_type": 8}, "model": "auth.permission", "pk": 21}, {"fields": {"codename": "add_tasksetmeta", "name": "Can add saved group result", "content_type": 9}, "model": "auth.permission", "pk": 22}, {"fields": {"codename": "change_tasksetmeta", "name": "Can change saved group result", "content_type": 9}, "model": "auth.permission", "pk": 23}, {"fields": {"codename": "delete_tasksetmeta", "name": "Can delete saved group result", "content_type": 9}, "model": "auth.permission", "pk": 24}, {"fields": {"codename": "add_intervalschedule", "name": "Can add interval", "content_type": 10}, "model": "auth.permission", "pk": 25}, {"fields": {"codename": "change_intervalschedule", "name": "Can change interval", "content_type": 10}, "model": "auth.permission", "pk": 26}, {"fields": {"codename": "delete_intervalschedule", "name": "Can delete interval", "content_type": 10}, "model": "auth.permission", "pk": 27}, {"fields": {"codename": "add_crontabschedule", "name": "Can add crontab", "content_type": 11}, "model": "auth.permission", "pk": 28}, {"fields": {"codename": "change_crontabschedule", "name": "Can change crontab", "content_type": 11}, "model": "auth.permission", "pk": 29}, {"fields": {"codename": "delete_crontabschedule", "name": "Can delete crontab", "content_type": 11}, "model": "auth.permission", "pk": 30}, {"fields": {"codename": "add_periodictasks", "name": "Can add periodic tasks", "content_type": 12}, "model": "auth.permission", "pk": 31}, {"fields": {"codename": "change_periodictasks", "name": "Can change periodic tasks", "content_type": 12}, "model": "auth.permission", "pk": 32}, {"fields": {"codename": "delete_periodictasks", "name": "Can delete periodic tasks", "content_type": 12}, "model": "auth.permission", "pk": 33}, {"fields": {"codename": "add_periodictask", "name": "Can add periodic task", "content_type": 13}, "model": "auth.permission", "pk": 34}, {"fields": {"codename": "change_periodictask", "name": "Can change periodic task", "content_type": 13}, "model": "auth.permission", "pk": 35}, {"fields": {"codename": "delete_periodictask", "name": "Can delete periodic task", "content_type": 13}, "model": "auth.permission", "pk": 36}, {"fields": {"codename": "add_workerstate", "name": "Can add worker", "content_type": 14}, "model": "auth.permission", "pk": 37}, {"fields": {"codename": "change_workerstate", "name": "Can change worker", "content_type": 14}, "model": "auth.permission", "pk": 38}, {"fields": {"codename": "delete_workerstate", "name": "Can delete worker", "content_type": 14}, "model": "auth.permission", "pk": 39}, {"fields": {"codename": "add_taskstate", "name": "Can add task", "content_type": 15}, "model": "auth.permission", "pk": 40}, {"fields": {"codename": "change_taskstate", "name": "Can change task", "content_type": 15}, "model": "auth.permission", "pk": 41}, {"fields": {"codename": "delete_taskstate", "name": "Can delete task", "content_type": 15}, "model": "auth.permission", "pk": 42}, {"fields": {"codename": "add_globalstatusmessage", "name": "Can add global status message", "content_type": 16}, "model": "auth.permission", "pk": 43}, {"fields": {"codename": "change_globalstatusmessage", "name": "Can change global status message", "content_type": 16}, "model": "auth.permission", "pk": 44}, {"fields": {"codename": "delete_globalstatusmessage", "name": "Can delete global status message", "content_type": 16}, "model": "auth.permission", "pk": 45}, {"fields": {"codename": "add_coursemessage", "name": "Can add course message", "content_type": 17}, "model": "auth.permission", "pk": 46}, {"fields": {"codename": "change_coursemessage", "name": "Can change course message", "content_type": 17}, "model": "auth.permission", "pk": 47}, {"fields": {"codename": "delete_coursemessage", "name": "Can delete course message", "content_type": 17}, "model": "auth.permission", "pk": 48}, {"fields": {"codename": "add_assetbaseurlconfig", "name": "Can add asset base url config", "content_type": 18}, "model": "auth.permission", "pk": 49}, {"fields": {"codename": "change_assetbaseurlconfig", "name": "Can change asset base url config", "content_type": 18}, "model": "auth.permission", "pk": 50}, {"fields": {"codename": "delete_assetbaseurlconfig", "name": "Can delete asset base url config", "content_type": 18}, "model": "auth.permission", "pk": 51}, {"fields": {"codename": "add_assetexcludedextensionsconfig", "name": "Can add asset excluded extensions config", "content_type": 19}, "model": "auth.permission", "pk": 52}, {"fields": {"codename": "change_assetexcludedextensionsconfig", "name": "Can change asset excluded extensions config", "content_type": 19}, "model": "auth.permission", "pk": 53}, {"fields": {"codename": "delete_assetexcludedextensionsconfig", "name": "Can delete asset excluded extensions config", "content_type": 19}, "model": "auth.permission", "pk": 54}, {"fields": {"codename": "add_courseassetcachettlconfig", "name": "Can add course asset cache ttl config", "content_type": 20}, "model": "auth.permission", "pk": 55}, {"fields": {"codename": "change_courseassetcachettlconfig", "name": "Can change course asset cache ttl config", "content_type": 20}, "model": "auth.permission", "pk": 56}, {"fields": {"codename": "delete_courseassetcachettlconfig", "name": "Can delete course asset cache ttl config", "content_type": 20}, "model": "auth.permission", "pk": 57}, {"fields": {"codename": "add_cdnuseragentsconfig", "name": "Can add cdn user agents config", "content_type": 21}, "model": "auth.permission", "pk": 58}, {"fields": {"codename": "change_cdnuseragentsconfig", "name": "Can change cdn user agents config", "content_type": 21}, "model": "auth.permission", "pk": 59}, {"fields": {"codename": "delete_cdnuseragentsconfig", "name": "Can delete cdn user agents config", "content_type": 21}, "model": "auth.permission", "pk": 60}, {"fields": {"codename": "add_siteconfiguration", "name": "Can add site configuration", "content_type": 22}, "model": "auth.permission", "pk": 61}, {"fields": {"codename": "change_siteconfiguration", "name": "Can change site configuration", "content_type": 22}, "model": "auth.permission", "pk": 62}, {"fields": {"codename": "delete_siteconfiguration", "name": "Can delete site configuration", "content_type": 22}, "model": "auth.permission", "pk": 63}, {"fields": {"codename": "add_siteconfigurationhistory", "name": "Can add site configuration history", "content_type": 23}, "model": "auth.permission", "pk": 64}, {"fields": {"codename": "change_siteconfigurationhistory", "name": "Can change site configuration history", "content_type": 23}, "model": "auth.permission", "pk": 65}, {"fields": {"codename": "delete_siteconfigurationhistory", "name": "Can delete site configuration history", "content_type": 23}, "model": "auth.permission", "pk": 66}, {"fields": {"codename": "add_studentmodule", "name": "Can add student module", "content_type": 24}, "model": "auth.permission", "pk": 67}, {"fields": {"codename": "change_studentmodule", "name": "Can change student module", "content_type": 24}, "model": "auth.permission", "pk": 68}, {"fields": {"codename": "delete_studentmodule", "name": "Can delete student module", "content_type": 24}, "model": "auth.permission", "pk": 69}, {"fields": {"codename": "add_studentmodulehistory", "name": "Can add student module history", "content_type": 25}, "model": "auth.permission", "pk": 70}, {"fields": {"codename": "change_studentmodulehistory", "name": "Can change student module history", "content_type": 25}, "model": "auth.permission", "pk": 71}, {"fields": {"codename": "delete_studentmodulehistory", "name": "Can delete student module history", "content_type": 25}, "model": "auth.permission", "pk": 72}, {"fields": {"codename": "add_xmoduleuserstatesummaryfield", "name": "Can add x module user state summary field", "content_type": 26}, "model": "auth.permission", "pk": 73}, {"fields": {"codename": "change_xmoduleuserstatesummaryfield", "name": "Can change x module user state summary field", "content_type": 26}, "model": "auth.permission", "pk": 74}, {"fields": {"codename": "delete_xmoduleuserstatesummaryfield", "name": "Can delete x module user state summary field", "content_type": 26}, "model": "auth.permission", "pk": 75}, {"fields": {"codename": "add_xmodulestudentprefsfield", "name": "Can add x module student prefs field", "content_type": 27}, "model": "auth.permission", "pk": 76}, {"fields": {"codename": "change_xmodulestudentprefsfield", "name": "Can change x module student prefs field", "content_type": 27}, "model": "auth.permission", "pk": 77}, {"fields": {"codename": "delete_xmodulestudentprefsfield", "name": "Can delete x module student prefs field", "content_type": 27}, "model": "auth.permission", "pk": 78}, {"fields": {"codename": "add_xmodulestudentinfofield", "name": "Can add x module student info field", "content_type": 28}, "model": "auth.permission", "pk": 79}, {"fields": {"codename": "change_xmodulestudentinfofield", "name": "Can change x module student info field", "content_type": 28}, "model": "auth.permission", "pk": 80}, {"fields": {"codename": "delete_xmodulestudentinfofield", "name": "Can delete x module student info field", "content_type": 28}, "model": "auth.permission", "pk": 81}, {"fields": {"codename": "add_offlinecomputedgrade", "name": "Can add offline computed grade", "content_type": 29}, "model": "auth.permission", "pk": 82}, {"fields": {"codename": "change_offlinecomputedgrade", "name": "Can change offline computed grade", "content_type": 29}, "model": "auth.permission", "pk": 83}, {"fields": {"codename": "delete_offlinecomputedgrade", "name": "Can delete offline computed grade", "content_type": 29}, "model": "auth.permission", "pk": 84}, {"fields": {"codename": "add_offlinecomputedgradelog", "name": "Can add offline computed grade log", "content_type": 30}, "model": "auth.permission", "pk": 85}, {"fields": {"codename": "change_offlinecomputedgradelog", "name": "Can change offline computed grade log", "content_type": 30}, "model": "auth.permission", "pk": 86}, {"fields": {"codename": "delete_offlinecomputedgradelog", "name": "Can delete offline computed grade log", "content_type": 30}, "model": "auth.permission", "pk": 87}, {"fields": {"codename": "add_studentfieldoverride", "name": "Can add student field override", "content_type": 31}, "model": "auth.permission", "pk": 88}, {"fields": {"codename": "change_studentfieldoverride", "name": "Can change student field override", "content_type": 31}, "model": "auth.permission", "pk": 89}, {"fields": {"codename": "delete_studentfieldoverride", "name": "Can delete student field override", "content_type": 31}, "model": "auth.permission", "pk": 90}, {"fields": {"codename": "add_anonymoususerid", "name": "Can add anonymous user id", "content_type": 32}, "model": "auth.permission", "pk": 91}, {"fields": {"codename": "change_anonymoususerid", "name": "Can change anonymous user id", "content_type": 32}, "model": "auth.permission", "pk": 92}, {"fields": {"codename": "delete_anonymoususerid", "name": "Can delete anonymous user id", "content_type": 32}, "model": "auth.permission", "pk": 93}, {"fields": {"codename": "add_userstanding", "name": "Can add user standing", "content_type": 33}, "model": "auth.permission", "pk": 94}, {"fields": {"codename": "change_userstanding", "name": "Can change user standing", "content_type": 33}, "model": "auth.permission", "pk": 95}, {"fields": {"codename": "delete_userstanding", "name": "Can delete user standing", "content_type": 33}, "model": "auth.permission", "pk": 96}, {"fields": {"codename": "add_userprofile", "name": "Can add user profile", "content_type": 34}, "model": "auth.permission", "pk": 97}, {"fields": {"codename": "change_userprofile", "name": "Can change user profile", "content_type": 34}, "model": "auth.permission", "pk": 98}, {"fields": {"codename": "delete_userprofile", "name": "Can delete user profile", "content_type": 34}, "model": "auth.permission", "pk": 99}, {"fields": {"codename": "add_usersignupsource", "name": "Can add user signup source", "content_type": 35}, "model": "auth.permission", "pk": 100}, {"fields": {"codename": "change_usersignupsource", "name": "Can change user signup source", "content_type": 35}, "model": "auth.permission", "pk": 101}, {"fields": {"codename": "delete_usersignupsource", "name": "Can delete user signup source", "content_type": 35}, "model": "auth.permission", "pk": 102}, {"fields": {"codename": "add_usertestgroup", "name": "Can add user test group", "content_type": 36}, "model": "auth.permission", "pk": 103}, {"fields": {"codename": "change_usertestgroup", "name": "Can change user test group", "content_type": 36}, "model": "auth.permission", "pk": 104}, {"fields": {"codename": "delete_usertestgroup", "name": "Can delete user test group", "content_type": 36}, "model": "auth.permission", "pk": 105}, {"fields": {"codename": "add_registration", "name": "Can add registration", "content_type": 37}, "model": "auth.permission", "pk": 106}, {"fields": {"codename": "change_registration", "name": "Can change registration", "content_type": 37}, "model": "auth.permission", "pk": 107}, {"fields": {"codename": "delete_registration", "name": "Can delete registration", "content_type": 37}, "model": "auth.permission", "pk": 108}, {"fields": {"codename": "add_pendingnamechange", "name": "Can add pending name change", "content_type": 38}, "model": "auth.permission", "pk": 109}, {"fields": {"codename": "change_pendingnamechange", "name": "Can change pending name change", "content_type": 38}, "model": "auth.permission", "pk": 110}, {"fields": {"codename": "delete_pendingnamechange", "name": "Can delete pending name change", "content_type": 38}, "model": "auth.permission", "pk": 111}, {"fields": {"codename": "add_pendingemailchange", "name": "Can add pending email change", "content_type": 39}, "model": "auth.permission", "pk": 112}, {"fields": {"codename": "change_pendingemailchange", "name": "Can change pending email change", "content_type": 39}, "model": "auth.permission", "pk": 113}, {"fields": {"codename": "delete_pendingemailchange", "name": "Can delete pending email change", "content_type": 39}, "model": "auth.permission", "pk": 114}, {"fields": {"codename": "add_passwordhistory", "name": "Can add password history", "content_type": 40}, "model": "auth.permission", "pk": 115}, {"fields": {"codename": "change_passwordhistory", "name": "Can change password history", "content_type": 40}, "model": "auth.permission", "pk": 116}, {"fields": {"codename": "delete_passwordhistory", "name": "Can delete password history", "content_type": 40}, "model": "auth.permission", "pk": 117}, {"fields": {"codename": "add_loginfailures", "name": "Can add login failures", "content_type": 41}, "model": "auth.permission", "pk": 118}, {"fields": {"codename": "change_loginfailures", "name": "Can change login failures", "content_type": 41}, "model": "auth.permission", "pk": 119}, {"fields": {"codename": "delete_loginfailures", "name": "Can delete login failures", "content_type": 41}, "model": "auth.permission", "pk": 120}, {"fields": {"codename": "add_historicalcourseenrollment", "name": "Can add historical course enrollment", "content_type": 42}, "model": "auth.permission", "pk": 121}, {"fields": {"codename": "change_historicalcourseenrollment", "name": "Can change historical course enrollment", "content_type": 42}, "model": "auth.permission", "pk": 122}, {"fields": {"codename": "delete_historicalcourseenrollment", "name": "Can delete historical course enrollment", "content_type": 42}, "model": "auth.permission", "pk": 123}, {"fields": {"codename": "add_courseenrollment", "name": "Can add course enrollment", "content_type": 43}, "model": "auth.permission", "pk": 124}, {"fields": {"codename": "change_courseenrollment", "name": "Can change course enrollment", "content_type": 43}, "model": "auth.permission", "pk": 125}, {"fields": {"codename": "delete_courseenrollment", "name": "Can delete course enrollment", "content_type": 43}, "model": "auth.permission", "pk": 126}, {"fields": {"codename": "add_manualenrollmentaudit", "name": "Can add manual enrollment audit", "content_type": 44}, "model": "auth.permission", "pk": 127}, {"fields": {"codename": "change_manualenrollmentaudit", "name": "Can change manual enrollment audit", "content_type": 44}, "model": "auth.permission", "pk": 128}, {"fields": {"codename": "delete_manualenrollmentaudit", "name": "Can delete manual enrollment audit", "content_type": 44}, "model": "auth.permission", "pk": 129}, {"fields": {"codename": "add_courseenrollmentallowed", "name": "Can add course enrollment allowed", "content_type": 45}, "model": "auth.permission", "pk": 130}, {"fields": {"codename": "change_courseenrollmentallowed", "name": "Can change course enrollment allowed", "content_type": 45}, "model": "auth.permission", "pk": 131}, {"fields": {"codename": "delete_courseenrollmentallowed", "name": "Can delete course enrollment allowed", "content_type": 45}, "model": "auth.permission", "pk": 132}, {"fields": {"codename": "add_courseaccessrole", "name": "Can add course access role", "content_type": 46}, "model": "auth.permission", "pk": 133}, {"fields": {"codename": "change_courseaccessrole", "name": "Can change course access role", "content_type": 46}, "model": "auth.permission", "pk": 134}, {"fields": {"codename": "delete_courseaccessrole", "name": "Can delete course access role", "content_type": 46}, "model": "auth.permission", "pk": 135}, {"fields": {"codename": "add_dashboardconfiguration", "name": "Can add dashboard configuration", "content_type": 47}, "model": "auth.permission", "pk": 136}, {"fields": {"codename": "change_dashboardconfiguration", "name": "Can change dashboard configuration", "content_type": 47}, "model": "auth.permission", "pk": 137}, {"fields": {"codename": "delete_dashboardconfiguration", "name": "Can delete dashboard configuration", "content_type": 47}, "model": "auth.permission", "pk": 138}, {"fields": {"codename": "add_linkedinaddtoprofileconfiguration", "name": "Can add linked in add to profile configuration", "content_type": 48}, "model": "auth.permission", "pk": 139}, {"fields": {"codename": "change_linkedinaddtoprofileconfiguration", "name": "Can change linked in add to profile configuration", "content_type": 48}, "model": "auth.permission", "pk": 140}, {"fields": {"codename": "delete_linkedinaddtoprofileconfiguration", "name": "Can delete linked in add to profile configuration", "content_type": 48}, "model": "auth.permission", "pk": 141}, {"fields": {"codename": "add_entranceexamconfiguration", "name": "Can add entrance exam configuration", "content_type": 49}, "model": "auth.permission", "pk": 142}, {"fields": {"codename": "change_entranceexamconfiguration", "name": "Can change entrance exam configuration", "content_type": 49}, "model": "auth.permission", "pk": 143}, {"fields": {"codename": "delete_entranceexamconfiguration", "name": "Can delete entrance exam configuration", "content_type": 49}, "model": "auth.permission", "pk": 144}, {"fields": {"codename": "add_languageproficiency", "name": "Can add language proficiency", "content_type": 50}, "model": "auth.permission", "pk": 145}, {"fields": {"codename": "change_languageproficiency", "name": "Can change language proficiency", "content_type": 50}, "model": "auth.permission", "pk": 146}, {"fields": {"codename": "delete_languageproficiency", "name": "Can delete language proficiency", "content_type": 50}, "model": "auth.permission", "pk": 147}, {"fields": {"codename": "add_courseenrollmentattribute", "name": "Can add course enrollment attribute", "content_type": 51}, "model": "auth.permission", "pk": 148}, {"fields": {"codename": "change_courseenrollmentattribute", "name": "Can change course enrollment attribute", "content_type": 51}, "model": "auth.permission", "pk": 149}, {"fields": {"codename": "delete_courseenrollmentattribute", "name": "Can delete course enrollment attribute", "content_type": 51}, "model": "auth.permission", "pk": 150}, {"fields": {"codename": "add_enrollmentrefundconfiguration", "name": "Can add enrollment refund configuration", "content_type": 52}, "model": "auth.permission", "pk": 151}, {"fields": {"codename": "change_enrollmentrefundconfiguration", "name": "Can change enrollment refund configuration", "content_type": 52}, "model": "auth.permission", "pk": 152}, {"fields": {"codename": "delete_enrollmentrefundconfiguration", "name": "Can delete enrollment refund configuration", "content_type": 52}, "model": "auth.permission", "pk": 153}, {"fields": {"codename": "add_trackinglog", "name": "Can add tracking log", "content_type": 53}, "model": "auth.permission", "pk": 154}, {"fields": {"codename": "change_trackinglog", "name": "Can change tracking log", "content_type": 53}, "model": "auth.permission", "pk": 155}, {"fields": {"codename": "delete_trackinglog", "name": "Can delete tracking log", "content_type": 53}, "model": "auth.permission", "pk": 156}, {"fields": {"codename": "add_ratelimitconfiguration", "name": "Can add rate limit configuration", "content_type": 54}, "model": "auth.permission", "pk": 157}, {"fields": {"codename": "change_ratelimitconfiguration", "name": "Can change rate limit configuration", "content_type": 54}, "model": "auth.permission", "pk": 158}, {"fields": {"codename": "delete_ratelimitconfiguration", "name": "Can delete rate limit configuration", "content_type": 54}, "model": "auth.permission", "pk": 159}, {"fields": {"codename": "add_certificatewhitelist", "name": "Can add certificate whitelist", "content_type": 55}, "model": "auth.permission", "pk": 160}, {"fields": {"codename": "change_certificatewhitelist", "name": "Can change certificate whitelist", "content_type": 55}, "model": "auth.permission", "pk": 161}, {"fields": {"codename": "delete_certificatewhitelist", "name": "Can delete certificate whitelist", "content_type": 55}, "model": "auth.permission", "pk": 162}, {"fields": {"codename": "add_generatedcertificate", "name": "Can add generated certificate", "content_type": 56}, "model": "auth.permission", "pk": 163}, {"fields": {"codename": "change_generatedcertificate", "name": "Can change generated certificate", "content_type": 56}, "model": "auth.permission", "pk": 164}, {"fields": {"codename": "delete_generatedcertificate", "name": "Can delete generated certificate", "content_type": 56}, "model": "auth.permission", "pk": 165}, {"fields": {"codename": "add_certificategenerationhistory", "name": "Can add certificate generation history", "content_type": 57}, "model": "auth.permission", "pk": 166}, {"fields": {"codename": "change_certificategenerationhistory", "name": "Can change certificate generation history", "content_type": 57}, "model": "auth.permission", "pk": 167}, {"fields": {"codename": "delete_certificategenerationhistory", "name": "Can delete certificate generation history", "content_type": 57}, "model": "auth.permission", "pk": 168}, {"fields": {"codename": "add_certificateinvalidation", "name": "Can add certificate invalidation", "content_type": 58}, "model": "auth.permission", "pk": 169}, {"fields": {"codename": "change_certificateinvalidation", "name": "Can change certificate invalidation", "content_type": 58}, "model": "auth.permission", "pk": 170}, {"fields": {"codename": "delete_certificateinvalidation", "name": "Can delete certificate invalidation", "content_type": 58}, "model": "auth.permission", "pk": 171}, {"fields": {"codename": "add_examplecertificateset", "name": "Can add example certificate set", "content_type": 59}, "model": "auth.permission", "pk": 172}, {"fields": {"codename": "change_examplecertificateset", "name": "Can change example certificate set", "content_type": 59}, "model": "auth.permission", "pk": 173}, {"fields": {"codename": "delete_examplecertificateset", "name": "Can delete example certificate set", "content_type": 59}, "model": "auth.permission", "pk": 174}, {"fields": {"codename": "add_examplecertificate", "name": "Can add example certificate", "content_type": 60}, "model": "auth.permission", "pk": 175}, {"fields": {"codename": "change_examplecertificate", "name": "Can change example certificate", "content_type": 60}, "model": "auth.permission", "pk": 176}, {"fields": {"codename": "delete_examplecertificate", "name": "Can delete example certificate", "content_type": 60}, "model": "auth.permission", "pk": 177}, {"fields": {"codename": "add_certificategenerationcoursesetting", "name": "Can add certificate generation course setting", "content_type": 61}, "model": "auth.permission", "pk": 178}, {"fields": {"codename": "change_certificategenerationcoursesetting", "name": "Can change certificate generation course setting", "content_type": 61}, "model": "auth.permission", "pk": 179}, {"fields": {"codename": "delete_certificategenerationcoursesetting", "name": "Can delete certificate generation course setting", "content_type": 61}, "model": "auth.permission", "pk": 180}, {"fields": {"codename": "add_certificategenerationconfiguration", "name": "Can add certificate generation configuration", "content_type": 62}, "model": "auth.permission", "pk": 181}, {"fields": {"codename": "change_certificategenerationconfiguration", "name": "Can change certificate generation configuration", "content_type": 62}, "model": "auth.permission", "pk": 182}, {"fields": {"codename": "delete_certificategenerationconfiguration", "name": "Can delete certificate generation configuration", "content_type": 62}, "model": "auth.permission", "pk": 183}, {"fields": {"codename": "add_certificatehtmlviewconfiguration", "name": "Can add certificate html view configuration", "content_type": 63}, "model": "auth.permission", "pk": 184}, {"fields": {"codename": "change_certificatehtmlviewconfiguration", "name": "Can change certificate html view configuration", "content_type": 63}, "model": "auth.permission", "pk": 185}, {"fields": {"codename": "delete_certificatehtmlviewconfiguration", "name": "Can delete certificate html view configuration", "content_type": 63}, "model": "auth.permission", "pk": 186}, {"fields": {"codename": "add_certificatetemplate", "name": "Can add certificate template", "content_type": 64}, "model": "auth.permission", "pk": 187}, {"fields": {"codename": "change_certificatetemplate", "name": "Can change certificate template", "content_type": 64}, "model": "auth.permission", "pk": 188}, {"fields": {"codename": "delete_certificatetemplate", "name": "Can delete certificate template", "content_type": 64}, "model": "auth.permission", "pk": 189}, {"fields": {"codename": "add_certificatetemplateasset", "name": "Can add certificate template asset", "content_type": 65}, "model": "auth.permission", "pk": 190}, {"fields": {"codename": "change_certificatetemplateasset", "name": "Can change certificate template asset", "content_type": 65}, "model": "auth.permission", "pk": 191}, {"fields": {"codename": "delete_certificatetemplateasset", "name": "Can delete certificate template asset", "content_type": 65}, "model": "auth.permission", "pk": 192}, {"fields": {"codename": "add_instructortask", "name": "Can add instructor task", "content_type": 66}, "model": "auth.permission", "pk": 193}, {"fields": {"codename": "change_instructortask", "name": "Can change instructor task", "content_type": 66}, "model": "auth.permission", "pk": 194}, {"fields": {"codename": "delete_instructortask", "name": "Can delete instructor task", "content_type": 66}, "model": "auth.permission", "pk": 195}, {"fields": {"codename": "add_courseusergroup", "name": "Can add course user group", "content_type": 67}, "model": "auth.permission", "pk": 196}, {"fields": {"codename": "change_courseusergroup", "name": "Can change course user group", "content_type": 67}, "model": "auth.permission", "pk": 197}, {"fields": {"codename": "delete_courseusergroup", "name": "Can delete course user group", "content_type": 67}, "model": "auth.permission", "pk": 198}, {"fields": {"codename": "add_cohortmembership", "name": "Can add cohort membership", "content_type": 68}, "model": "auth.permission", "pk": 199}, {"fields": {"codename": "change_cohortmembership", "name": "Can change cohort membership", "content_type": 68}, "model": "auth.permission", "pk": 200}, {"fields": {"codename": "delete_cohortmembership", "name": "Can delete cohort membership", "content_type": 68}, "model": "auth.permission", "pk": 201}, {"fields": {"codename": "add_courseusergrouppartitiongroup", "name": "Can add course user group partition group", "content_type": 69}, "model": "auth.permission", "pk": 202}, {"fields": {"codename": "change_courseusergrouppartitiongroup", "name": "Can change course user group partition group", "content_type": 69}, "model": "auth.permission", "pk": 203}, {"fields": {"codename": "delete_courseusergrouppartitiongroup", "name": "Can delete course user group partition group", "content_type": 69}, "model": "auth.permission", "pk": 204}, {"fields": {"codename": "add_coursecohortssettings", "name": "Can add course cohorts settings", "content_type": 70}, "model": "auth.permission", "pk": 205}, {"fields": {"codename": "change_coursecohortssettings", "name": "Can change course cohorts settings", "content_type": 70}, "model": "auth.permission", "pk": 206}, {"fields": {"codename": "delete_coursecohortssettings", "name": "Can delete course cohorts settings", "content_type": 70}, "model": "auth.permission", "pk": 207}, {"fields": {"codename": "add_coursecohort", "name": "Can add course cohort", "content_type": 71}, "model": "auth.permission", "pk": 208}, {"fields": {"codename": "change_coursecohort", "name": "Can change course cohort", "content_type": 71}, "model": "auth.permission", "pk": 209}, {"fields": {"codename": "delete_coursecohort", "name": "Can delete course cohort", "content_type": 71}, "model": "auth.permission", "pk": 210}, {"fields": {"codename": "add_courseemail", "name": "Can add course email", "content_type": 72}, "model": "auth.permission", "pk": 211}, {"fields": {"codename": "change_courseemail", "name": "Can change course email", "content_type": 72}, "model": "auth.permission", "pk": 212}, {"fields": {"codename": "delete_courseemail", "name": "Can delete course email", "content_type": 72}, "model": "auth.permission", "pk": 213}, {"fields": {"codename": "add_optout", "name": "Can add optout", "content_type": 73}, "model": "auth.permission", "pk": 214}, {"fields": {"codename": "change_optout", "name": "Can change optout", "content_type": 73}, "model": "auth.permission", "pk": 215}, {"fields": {"codename": "delete_optout", "name": "Can delete optout", "content_type": 73}, "model": "auth.permission", "pk": 216}, {"fields": {"codename": "add_courseemailtemplate", "name": "Can add course email template", "content_type": 74}, "model": "auth.permission", "pk": 217}, {"fields": {"codename": "change_courseemailtemplate", "name": "Can change course email template", "content_type": 74}, "model": "auth.permission", "pk": 218}, {"fields": {"codename": "delete_courseemailtemplate", "name": "Can delete course email template", "content_type": 74}, "model": "auth.permission", "pk": 219}, {"fields": {"codename": "add_courseauthorization", "name": "Can add course authorization", "content_type": 75}, "model": "auth.permission", "pk": 220}, {"fields": {"codename": "change_courseauthorization", "name": "Can change course authorization", "content_type": 75}, "model": "auth.permission", "pk": 221}, {"fields": {"codename": "delete_courseauthorization", "name": "Can delete course authorization", "content_type": 75}, "model": "auth.permission", "pk": 222}, {"fields": {"codename": "add_bulkemailflag", "name": "Can add bulk email flag", "content_type": 76}, "model": "auth.permission", "pk": 223}, {"fields": {"codename": "change_bulkemailflag", "name": "Can change bulk email flag", "content_type": 76}, "model": "auth.permission", "pk": 224}, {"fields": {"codename": "delete_bulkemailflag", "name": "Can delete bulk email flag", "content_type": 76}, "model": "auth.permission", "pk": 225}, {"fields": {"codename": "add_brandinginfoconfig", "name": "Can add branding info config", "content_type": 77}, "model": "auth.permission", "pk": 226}, {"fields": {"codename": "change_brandinginfoconfig", "name": "Can change branding info config", "content_type": 77}, "model": "auth.permission", "pk": 227}, {"fields": {"codename": "delete_brandinginfoconfig", "name": "Can delete branding info config", "content_type": 77}, "model": "auth.permission", "pk": 228}, {"fields": {"codename": "add_brandingapiconfig", "name": "Can add branding api config", "content_type": 78}, "model": "auth.permission", "pk": 229}, {"fields": {"codename": "change_brandingapiconfig", "name": "Can change branding api config", "content_type": 78}, "model": "auth.permission", "pk": 230}, {"fields": {"codename": "delete_brandingapiconfig", "name": "Can delete branding api config", "content_type": 78}, "model": "auth.permission", "pk": 231}, {"fields": {"codename": "add_externalauthmap", "name": "Can add external auth map", "content_type": 79}, "model": "auth.permission", "pk": 232}, {"fields": {"codename": "change_externalauthmap", "name": "Can change external auth map", "content_type": 79}, "model": "auth.permission", "pk": 233}, {"fields": {"codename": "delete_externalauthmap", "name": "Can delete external auth map", "content_type": 79}, "model": "auth.permission", "pk": 234}, {"fields": {"codename": "add_nonce", "name": "Can add nonce", "content_type": 80}, "model": "auth.permission", "pk": 235}, {"fields": {"codename": "change_nonce", "name": "Can change nonce", "content_type": 80}, "model": "auth.permission", "pk": 236}, {"fields": {"codename": "delete_nonce", "name": "Can delete nonce", "content_type": 80}, "model": "auth.permission", "pk": 237}, {"fields": {"codename": "add_association", "name": "Can add association", "content_type": 81}, "model": "auth.permission", "pk": 238}, {"fields": {"codename": "change_association", "name": "Can change association", "content_type": 81}, "model": "auth.permission", "pk": 239}, {"fields": {"codename": "delete_association", "name": "Can delete association", "content_type": 81}, "model": "auth.permission", "pk": 240}, {"fields": {"codename": "add_useropenid", "name": "Can add user open id", "content_type": 82}, "model": "auth.permission", "pk": 241}, {"fields": {"codename": "change_useropenid", "name": "Can change user open id", "content_type": 82}, "model": "auth.permission", "pk": 242}, {"fields": {"codename": "delete_useropenid", "name": "Can delete user open id", "content_type": 82}, "model": "auth.permission", "pk": 243}, {"fields": {"codename": "account_verified", "name": "The OpenID has been verified", "content_type": 82}, "model": "auth.permission", "pk": 244}, {"fields": {"codename": "add_client", "name": "Can add client", "content_type": 83}, "model": "auth.permission", "pk": 245}, {"fields": {"codename": "change_client", "name": "Can change client", "content_type": 83}, "model": "auth.permission", "pk": 246}, {"fields": {"codename": "delete_client", "name": "Can delete client", "content_type": 83}, "model": "auth.permission", "pk": 247}, {"fields": {"codename": "add_grant", "name": "Can add grant", "content_type": 84}, "model": "auth.permission", "pk": 248}, {"fields": {"codename": "change_grant", "name": "Can change grant", "content_type": 84}, "model": "auth.permission", "pk": 249}, {"fields": {"codename": "delete_grant", "name": "Can delete grant", "content_type": 84}, "model": "auth.permission", "pk": 250}, {"fields": {"codename": "add_accesstoken", "name": "Can add access token", "content_type": 85}, "model": "auth.permission", "pk": 251}, {"fields": {"codename": "change_accesstoken", "name": "Can change access token", "content_type": 85}, "model": "auth.permission", "pk": 252}, {"fields": {"codename": "delete_accesstoken", "name": "Can delete access token", "content_type": 85}, "model": "auth.permission", "pk": 253}, {"fields": {"codename": "add_refreshtoken", "name": "Can add refresh token", "content_type": 86}, "model": "auth.permission", "pk": 254}, {"fields": {"codename": "change_refreshtoken", "name": "Can change refresh token", "content_type": 86}, "model": "auth.permission", "pk": 255}, {"fields": {"codename": "delete_refreshtoken", "name": "Can delete refresh token", "content_type": 86}, "model": "auth.permission", "pk": 256}, {"fields": {"codename": "add_trustedclient", "name": "Can add trusted client", "content_type": 87}, "model": "auth.permission", "pk": 257}, {"fields": {"codename": "change_trustedclient", "name": "Can change trusted client", "content_type": 87}, "model": "auth.permission", "pk": 258}, {"fields": {"codename": "delete_trustedclient", "name": "Can delete trusted client", "content_type": 87}, "model": "auth.permission", "pk": 259}, {"fields": {"codename": "add_application", "name": "Can add application", "content_type": 88}, "model": "auth.permission", "pk": 260}, {"fields": {"codename": "change_application", "name": "Can change application", "content_type": 88}, "model": "auth.permission", "pk": 261}, {"fields": {"codename": "delete_application", "name": "Can delete application", "content_type": 88}, "model": "auth.permission", "pk": 262}, {"fields": {"codename": "add_grant", "name": "Can add grant", "content_type": 89}, "model": "auth.permission", "pk": 263}, {"fields": {"codename": "change_grant", "name": "Can change grant", "content_type": 89}, "model": "auth.permission", "pk": 264}, {"fields": {"codename": "delete_grant", "name": "Can delete grant", "content_type": 89}, "model": "auth.permission", "pk": 265}, {"fields": {"codename": "add_accesstoken", "name": "Can add access token", "content_type": 90}, "model": "auth.permission", "pk": 266}, {"fields": {"codename": "change_accesstoken", "name": "Can change access token", "content_type": 90}, "model": "auth.permission", "pk": 267}, {"fields": {"codename": "delete_accesstoken", "name": "Can delete access token", "content_type": 90}, "model": "auth.permission", "pk": 268}, {"fields": {"codename": "add_refreshtoken", "name": "Can add refresh token", "content_type": 91}, "model": "auth.permission", "pk": 269}, {"fields": {"codename": "change_refreshtoken", "name": "Can change refresh token", "content_type": 91}, "model": "auth.permission", "pk": 270}, {"fields": {"codename": "delete_refreshtoken", "name": "Can delete refresh token", "content_type": 91}, "model": "auth.permission", "pk": 271}, {"fields": {"codename": "add_oauth2providerconfig", "name": "Can add Provider Configuration (OAuth)", "content_type": 92}, "model": "auth.permission", "pk": 272}, {"fields": {"codename": "change_oauth2providerconfig", "name": "Can change Provider Configuration (OAuth)", "content_type": 92}, "model": "auth.permission", "pk": 273}, {"fields": {"codename": "delete_oauth2providerconfig", "name": "Can delete Provider Configuration (OAuth)", "content_type": 92}, "model": "auth.permission", "pk": 274}, {"fields": {"codename": "add_samlproviderconfig", "name": "Can add Provider Configuration (SAML IdP)", "content_type": 93}, "model": "auth.permission", "pk": 275}, {"fields": {"codename": "change_samlproviderconfig", "name": "Can change Provider Configuration (SAML IdP)", "content_type": 93}, "model": "auth.permission", "pk": 276}, {"fields": {"codename": "delete_samlproviderconfig", "name": "Can delete Provider Configuration (SAML IdP)", "content_type": 93}, "model": "auth.permission", "pk": 277}, {"fields": {"codename": "add_samlconfiguration", "name": "Can add SAML Configuration", "content_type": 94}, "model": "auth.permission", "pk": 278}, {"fields": {"codename": "change_samlconfiguration", "name": "Can change SAML Configuration", "content_type": 94}, "model": "auth.permission", "pk": 279}, {"fields": {"codename": "delete_samlconfiguration", "name": "Can delete SAML Configuration", "content_type": 94}, "model": "auth.permission", "pk": 280}, {"fields": {"codename": "add_samlproviderdata", "name": "Can add SAML Provider Data", "content_type": 95}, "model": "auth.permission", "pk": 281}, {"fields": {"codename": "change_samlproviderdata", "name": "Can change SAML Provider Data", "content_type": 95}, "model": "auth.permission", "pk": 282}, {"fields": {"codename": "delete_samlproviderdata", "name": "Can delete SAML Provider Data", "content_type": 95}, "model": "auth.permission", "pk": 283}, {"fields": {"codename": "add_ltiproviderconfig", "name": "Can add Provider Configuration (LTI)", "content_type": 96}, "model": "auth.permission", "pk": 284}, {"fields": {"codename": "change_ltiproviderconfig", "name": "Can change Provider Configuration (LTI)", "content_type": 96}, "model": "auth.permission", "pk": 285}, {"fields": {"codename": "delete_ltiproviderconfig", "name": "Can delete Provider Configuration (LTI)", "content_type": 96}, "model": "auth.permission", "pk": 286}, {"fields": {"codename": "add_providerapipermissions", "name": "Can add Provider API Permission", "content_type": 97}, "model": "auth.permission", "pk": 287}, {"fields": {"codename": "change_providerapipermissions", "name": "Can change Provider API Permission", "content_type": 97}, "model": "auth.permission", "pk": 288}, {"fields": {"codename": "delete_providerapipermissions", "name": "Can delete Provider API Permission", "content_type": 97}, "model": "auth.permission", "pk": 289}, {"fields": {"codename": "add_nonce", "name": "Can add nonce", "content_type": 98}, "model": "auth.permission", "pk": 290}, {"fields": {"codename": "change_nonce", "name": "Can change nonce", "content_type": 98}, "model": "auth.permission", "pk": 291}, {"fields": {"codename": "delete_nonce", "name": "Can delete nonce", "content_type": 98}, "model": "auth.permission", "pk": 292}, {"fields": {"codename": "add_scope", "name": "Can add scope", "content_type": 99}, "model": "auth.permission", "pk": 293}, {"fields": {"codename": "change_scope", "name": "Can change scope", "content_type": 99}, "model": "auth.permission", "pk": 294}, {"fields": {"codename": "delete_scope", "name": "Can delete scope", "content_type": 99}, "model": "auth.permission", "pk": 295}, {"fields": {"codename": "add_resource", "name": "Can add resource", "content_type": 99}, "model": "auth.permission", "pk": 296}, {"fields": {"codename": "change_resource", "name": "Can change resource", "content_type": 99}, "model": "auth.permission", "pk": 297}, {"fields": {"codename": "delete_resource", "name": "Can delete resource", "content_type": 99}, "model": "auth.permission", "pk": 298}, {"fields": {"codename": "add_consumer", "name": "Can add consumer", "content_type": 100}, "model": "auth.permission", "pk": 299}, {"fields": {"codename": "change_consumer", "name": "Can change consumer", "content_type": 100}, "model": "auth.permission", "pk": 300}, {"fields": {"codename": "delete_consumer", "name": "Can delete consumer", "content_type": 100}, "model": "auth.permission", "pk": 301}, {"fields": {"codename": "add_token", "name": "Can add token", "content_type": 101}, "model": "auth.permission", "pk": 302}, {"fields": {"codename": "change_token", "name": "Can change token", "content_type": 101}, "model": "auth.permission", "pk": 303}, {"fields": {"codename": "delete_token", "name": "Can delete token", "content_type": 101}, "model": "auth.permission", "pk": 304}, {"fields": {"codename": "add_article", "name": "Can add article", "content_type": 103}, "model": "auth.permission", "pk": 305}, {"fields": {"codename": "change_article", "name": "Can change article", "content_type": 103}, "model": "auth.permission", "pk": 306}, {"fields": {"codename": "delete_article", "name": "Can delete article", "content_type": 103}, "model": "auth.permission", "pk": 307}, {"fields": {"codename": "moderate", "name": "Can edit all articles and lock/unlock/restore", "content_type": 103}, "model": "auth.permission", "pk": 308}, {"fields": {"codename": "assign", "name": "Can change ownership of any article", "content_type": 103}, "model": "auth.permission", "pk": 309}, {"fields": {"codename": "grant", "name": "Can assign permissions to other users", "content_type": 103}, "model": "auth.permission", "pk": 310}, {"fields": {"codename": "add_articleforobject", "name": "Can add Article for object", "content_type": 104}, "model": "auth.permission", "pk": 311}, {"fields": {"codename": "change_articleforobject", "name": "Can change Article for object", "content_type": 104}, "model": "auth.permission", "pk": 312}, {"fields": {"codename": "delete_articleforobject", "name": "Can delete Article for object", "content_type": 104}, "model": "auth.permission", "pk": 313}, {"fields": {"codename": "add_articlerevision", "name": "Can add article revision", "content_type": 105}, "model": "auth.permission", "pk": 314}, {"fields": {"codename": "change_articlerevision", "name": "Can change article revision", "content_type": 105}, "model": "auth.permission", "pk": 315}, {"fields": {"codename": "delete_articlerevision", "name": "Can delete article revision", "content_type": 105}, "model": "auth.permission", "pk": 316}, {"fields": {"codename": "add_urlpath", "name": "Can add URL path", "content_type": 106}, "model": "auth.permission", "pk": 317}, {"fields": {"codename": "change_urlpath", "name": "Can change URL path", "content_type": 106}, "model": "auth.permission", "pk": 318}, {"fields": {"codename": "delete_urlpath", "name": "Can delete URL path", "content_type": 106}, "model": "auth.permission", "pk": 319}, {"fields": {"codename": "add_articleplugin", "name": "Can add article plugin", "content_type": 107}, "model": "auth.permission", "pk": 320}, {"fields": {"codename": "change_articleplugin", "name": "Can change article plugin", "content_type": 107}, "model": "auth.permission", "pk": 321}, {"fields": {"codename": "delete_articleplugin", "name": "Can delete article plugin", "content_type": 107}, "model": "auth.permission", "pk": 322}, {"fields": {"codename": "add_reusableplugin", "name": "Can add reusable plugin", "content_type": 108}, "model": "auth.permission", "pk": 323}, {"fields": {"codename": "change_reusableplugin", "name": "Can change reusable plugin", "content_type": 108}, "model": "auth.permission", "pk": 324}, {"fields": {"codename": "delete_reusableplugin", "name": "Can delete reusable plugin", "content_type": 108}, "model": "auth.permission", "pk": 325}, {"fields": {"codename": "add_simpleplugin", "name": "Can add simple plugin", "content_type": 109}, "model": "auth.permission", "pk": 326}, {"fields": {"codename": "change_simpleplugin", "name": "Can change simple plugin", "content_type": 109}, "model": "auth.permission", "pk": 327}, {"fields": {"codename": "delete_simpleplugin", "name": "Can delete simple plugin", "content_type": 109}, "model": "auth.permission", "pk": 328}, {"fields": {"codename": "add_revisionplugin", "name": "Can add revision plugin", "content_type": 110}, "model": "auth.permission", "pk": 329}, {"fields": {"codename": "change_revisionplugin", "name": "Can change revision plugin", "content_type": 110}, "model": "auth.permission", "pk": 330}, {"fields": {"codename": "delete_revisionplugin", "name": "Can delete revision plugin", "content_type": 110}, "model": "auth.permission", "pk": 331}, {"fields": {"codename": "add_revisionpluginrevision", "name": "Can add revision plugin revision", "content_type": 111}, "model": "auth.permission", "pk": 332}, {"fields": {"codename": "change_revisionpluginrevision", "name": "Can change revision plugin revision", "content_type": 111}, "model": "auth.permission", "pk": 333}, {"fields": {"codename": "delete_revisionpluginrevision", "name": "Can delete revision plugin revision", "content_type": 111}, "model": "auth.permission", "pk": 334}, {"fields": {"codename": "add_image", "name": "Can add image", "content_type": 112}, "model": "auth.permission", "pk": 335}, {"fields": {"codename": "change_image", "name": "Can change image", "content_type": 112}, "model": "auth.permission", "pk": 336}, {"fields": {"codename": "delete_image", "name": "Can delete image", "content_type": 112}, "model": "auth.permission", "pk": 337}, {"fields": {"codename": "add_imagerevision", "name": "Can add image revision", "content_type": 113}, "model": "auth.permission", "pk": 338}, {"fields": {"codename": "change_imagerevision", "name": "Can change image revision", "content_type": 113}, "model": "auth.permission", "pk": 339}, {"fields": {"codename": "delete_imagerevision", "name": "Can delete image revision", "content_type": 113}, "model": "auth.permission", "pk": 340}, {"fields": {"codename": "add_attachment", "name": "Can add attachment", "content_type": 114}, "model": "auth.permission", "pk": 341}, {"fields": {"codename": "change_attachment", "name": "Can change attachment", "content_type": 114}, "model": "auth.permission", "pk": 342}, {"fields": {"codename": "delete_attachment", "name": "Can delete attachment", "content_type": 114}, "model": "auth.permission", "pk": 343}, {"fields": {"codename": "add_attachmentrevision", "name": "Can add attachment revision", "content_type": 115}, "model": "auth.permission", "pk": 344}, {"fields": {"codename": "change_attachmentrevision", "name": "Can change attachment revision", "content_type": 115}, "model": "auth.permission", "pk": 345}, {"fields": {"codename": "delete_attachmentrevision", "name": "Can delete attachment revision", "content_type": 115}, "model": "auth.permission", "pk": 346}, {"fields": {"codename": "add_notificationtype", "name": "Can add type", "content_type": 116}, "model": "auth.permission", "pk": 347}, {"fields": {"codename": "change_notificationtype", "name": "Can change type", "content_type": 116}, "model": "auth.permission", "pk": 348}, {"fields": {"codename": "delete_notificationtype", "name": "Can delete type", "content_type": 116}, "model": "auth.permission", "pk": 349}, {"fields": {"codename": "add_settings", "name": "Can add settings", "content_type": 117}, "model": "auth.permission", "pk": 350}, {"fields": {"codename": "change_settings", "name": "Can change settings", "content_type": 117}, "model": "auth.permission", "pk": 351}, {"fields": {"codename": "delete_settings", "name": "Can delete settings", "content_type": 117}, "model": "auth.permission", "pk": 352}, {"fields": {"codename": "add_subscription", "name": "Can add subscription", "content_type": 118}, "model": "auth.permission", "pk": 353}, {"fields": {"codename": "change_subscription", "name": "Can change subscription", "content_type": 118}, "model": "auth.permission", "pk": 354}, {"fields": {"codename": "delete_subscription", "name": "Can delete subscription", "content_type": 118}, "model": "auth.permission", "pk": 355}, {"fields": {"codename": "add_notification", "name": "Can add notification", "content_type": 119}, "model": "auth.permission", "pk": 356}, {"fields": {"codename": "change_notification", "name": "Can change notification", "content_type": 119}, "model": "auth.permission", "pk": 357}, {"fields": {"codename": "delete_notification", "name": "Can delete notification", "content_type": 119}, "model": "auth.permission", "pk": 358}, {"fields": {"codename": "add_logentry", "name": "Can add log entry", "content_type": 120}, "model": "auth.permission", "pk": 359}, {"fields": {"codename": "change_logentry", "name": "Can change log entry", "content_type": 120}, "model": "auth.permission", "pk": 360}, {"fields": {"codename": "delete_logentry", "name": "Can delete log entry", "content_type": 120}, "model": "auth.permission", "pk": 361}, {"fields": {"codename": "add_role", "name": "Can add role", "content_type": 121}, "model": "auth.permission", "pk": 362}, {"fields": {"codename": "change_role", "name": "Can change role", "content_type": 121}, "model": "auth.permission", "pk": 363}, {"fields": {"codename": "delete_role", "name": "Can delete role", "content_type": 121}, "model": "auth.permission", "pk": 364}, {"fields": {"codename": "add_permission", "name": "Can add permission", "content_type": 122}, "model": "auth.permission", "pk": 365}, {"fields": {"codename": "change_permission", "name": "Can change permission", "content_type": 122}, "model": "auth.permission", "pk": 366}, {"fields": {"codename": "delete_permission", "name": "Can delete permission", "content_type": 122}, "model": "auth.permission", "pk": 367}, {"fields": {"codename": "add_note", "name": "Can add note", "content_type": 123}, "model": "auth.permission", "pk": 368}, {"fields": {"codename": "change_note", "name": "Can change note", "content_type": 123}, "model": "auth.permission", "pk": 369}, {"fields": {"codename": "delete_note", "name": "Can delete note", "content_type": 123}, "model": "auth.permission", "pk": 370}, {"fields": {"codename": "add_splashconfig", "name": "Can add splash config", "content_type": 124}, "model": "auth.permission", "pk": 371}, {"fields": {"codename": "change_splashconfig", "name": "Can change splash config", "content_type": 124}, "model": "auth.permission", "pk": 372}, {"fields": {"codename": "delete_splashconfig", "name": "Can delete splash config", "content_type": 124}, "model": "auth.permission", "pk": 373}, {"fields": {"codename": "add_userpreference", "name": "Can add user preference", "content_type": 125}, "model": "auth.permission", "pk": 374}, {"fields": {"codename": "change_userpreference", "name": "Can change user preference", "content_type": 125}, "model": "auth.permission", "pk": 375}, {"fields": {"codename": "delete_userpreference", "name": "Can delete user preference", "content_type": 125}, "model": "auth.permission", "pk": 376}, {"fields": {"codename": "add_usercoursetag", "name": "Can add user course tag", "content_type": 126}, "model": "auth.permission", "pk": 377}, {"fields": {"codename": "change_usercoursetag", "name": "Can change user course tag", "content_type": 126}, "model": "auth.permission", "pk": 378}, {"fields": {"codename": "delete_usercoursetag", "name": "Can delete user course tag", "content_type": 126}, "model": "auth.permission", "pk": 379}, {"fields": {"codename": "add_userorgtag", "name": "Can add user org tag", "content_type": 127}, "model": "auth.permission", "pk": 380}, {"fields": {"codename": "change_userorgtag", "name": "Can change user org tag", "content_type": 127}, "model": "auth.permission", "pk": 381}, {"fields": {"codename": "delete_userorgtag", "name": "Can delete user org tag", "content_type": 127}, "model": "auth.permission", "pk": 382}, {"fields": {"codename": "add_order", "name": "Can add order", "content_type": 128}, "model": "auth.permission", "pk": 383}, {"fields": {"codename": "change_order", "name": "Can change order", "content_type": 128}, "model": "auth.permission", "pk": 384}, {"fields": {"codename": "delete_order", "name": "Can delete order", "content_type": 128}, "model": "auth.permission", "pk": 385}, {"fields": {"codename": "add_orderitem", "name": "Can add order item", "content_type": 129}, "model": "auth.permission", "pk": 386}, {"fields": {"codename": "change_orderitem", "name": "Can change order item", "content_type": 129}, "model": "auth.permission", "pk": 387}, {"fields": {"codename": "delete_orderitem", "name": "Can delete order item", "content_type": 129}, "model": "auth.permission", "pk": 388}, {"fields": {"codename": "add_invoice", "name": "Can add invoice", "content_type": 130}, "model": "auth.permission", "pk": 389}, {"fields": {"codename": "change_invoice", "name": "Can change invoice", "content_type": 130}, "model": "auth.permission", "pk": 390}, {"fields": {"codename": "delete_invoice", "name": "Can delete invoice", "content_type": 130}, "model": "auth.permission", "pk": 391}, {"fields": {"codename": "add_invoicetransaction", "name": "Can add invoice transaction", "content_type": 131}, "model": "auth.permission", "pk": 392}, {"fields": {"codename": "change_invoicetransaction", "name": "Can change invoice transaction", "content_type": 131}, "model": "auth.permission", "pk": 393}, {"fields": {"codename": "delete_invoicetransaction", "name": "Can delete invoice transaction", "content_type": 131}, "model": "auth.permission", "pk": 394}, {"fields": {"codename": "add_invoiceitem", "name": "Can add invoice item", "content_type": 132}, "model": "auth.permission", "pk": 395}, {"fields": {"codename": "change_invoiceitem", "name": "Can change invoice item", "content_type": 132}, "model": "auth.permission", "pk": 396}, {"fields": {"codename": "delete_invoiceitem", "name": "Can delete invoice item", "content_type": 132}, "model": "auth.permission", "pk": 397}, {"fields": {"codename": "add_courseregistrationcodeinvoiceitem", "name": "Can add course registration code invoice item", "content_type": 133}, "model": "auth.permission", "pk": 398}, {"fields": {"codename": "change_courseregistrationcodeinvoiceitem", "name": "Can change course registration code invoice item", "content_type": 133}, "model": "auth.permission", "pk": 399}, {"fields": {"codename": "delete_courseregistrationcodeinvoiceitem", "name": "Can delete course registration code invoice item", "content_type": 133}, "model": "auth.permission", "pk": 400}, {"fields": {"codename": "add_invoicehistory", "name": "Can add invoice history", "content_type": 134}, "model": "auth.permission", "pk": 401}, {"fields": {"codename": "change_invoicehistory", "name": "Can change invoice history", "content_type": 134}, "model": "auth.permission", "pk": 402}, {"fields": {"codename": "delete_invoicehistory", "name": "Can delete invoice history", "content_type": 134}, "model": "auth.permission", "pk": 403}, {"fields": {"codename": "add_courseregistrationcode", "name": "Can add course registration code", "content_type": 135}, "model": "auth.permission", "pk": 404}, {"fields": {"codename": "change_courseregistrationcode", "name": "Can change course registration code", "content_type": 135}, "model": "auth.permission", "pk": 405}, {"fields": {"codename": "delete_courseregistrationcode", "name": "Can delete course registration code", "content_type": 135}, "model": "auth.permission", "pk": 406}, {"fields": {"codename": "add_registrationcoderedemption", "name": "Can add registration code redemption", "content_type": 136}, "model": "auth.permission", "pk": 407}, {"fields": {"codename": "change_registrationcoderedemption", "name": "Can change registration code redemption", "content_type": 136}, "model": "auth.permission", "pk": 408}, {"fields": {"codename": "delete_registrationcoderedemption", "name": "Can delete registration code redemption", "content_type": 136}, "model": "auth.permission", "pk": 409}, {"fields": {"codename": "add_coupon", "name": "Can add coupon", "content_type": 137}, "model": "auth.permission", "pk": 410}, {"fields": {"codename": "change_coupon", "name": "Can change coupon", "content_type": 137}, "model": "auth.permission", "pk": 411}, {"fields": {"codename": "delete_coupon", "name": "Can delete coupon", "content_type": 137}, "model": "auth.permission", "pk": 412}, {"fields": {"codename": "add_couponredemption", "name": "Can add coupon redemption", "content_type": 138}, "model": "auth.permission", "pk": 413}, {"fields": {"codename": "change_couponredemption", "name": "Can change coupon redemption", "content_type": 138}, "model": "auth.permission", "pk": 414}, {"fields": {"codename": "delete_couponredemption", "name": "Can delete coupon redemption", "content_type": 138}, "model": "auth.permission", "pk": 415}, {"fields": {"codename": "add_paidcourseregistration", "name": "Can add paid course registration", "content_type": 139}, "model": "auth.permission", "pk": 416}, {"fields": {"codename": "change_paidcourseregistration", "name": "Can change paid course registration", "content_type": 139}, "model": "auth.permission", "pk": 417}, {"fields": {"codename": "delete_paidcourseregistration", "name": "Can delete paid course registration", "content_type": 139}, "model": "auth.permission", "pk": 418}, {"fields": {"codename": "add_courseregcodeitem", "name": "Can add course reg code item", "content_type": 140}, "model": "auth.permission", "pk": 419}, {"fields": {"codename": "change_courseregcodeitem", "name": "Can change course reg code item", "content_type": 140}, "model": "auth.permission", "pk": 420}, {"fields": {"codename": "delete_courseregcodeitem", "name": "Can delete course reg code item", "content_type": 140}, "model": "auth.permission", "pk": 421}, {"fields": {"codename": "add_courseregcodeitemannotation", "name": "Can add course reg code item annotation", "content_type": 141}, "model": "auth.permission", "pk": 422}, {"fields": {"codename": "change_courseregcodeitemannotation", "name": "Can change course reg code item annotation", "content_type": 141}, "model": "auth.permission", "pk": 423}, {"fields": {"codename": "delete_courseregcodeitemannotation", "name": "Can delete course reg code item annotation", "content_type": 141}, "model": "auth.permission", "pk": 424}, {"fields": {"codename": "add_paidcourseregistrationannotation", "name": "Can add paid course registration annotation", "content_type": 142}, "model": "auth.permission", "pk": 425}, {"fields": {"codename": "change_paidcourseregistrationannotation", "name": "Can change paid course registration annotation", "content_type": 142}, "model": "auth.permission", "pk": 426}, {"fields": {"codename": "delete_paidcourseregistrationannotation", "name": "Can delete paid course registration annotation", "content_type": 142}, "model": "auth.permission", "pk": 427}, {"fields": {"codename": "add_certificateitem", "name": "Can add certificate item", "content_type": 143}, "model": "auth.permission", "pk": 428}, {"fields": {"codename": "change_certificateitem", "name": "Can change certificate item", "content_type": 143}, "model": "auth.permission", "pk": 429}, {"fields": {"codename": "delete_certificateitem", "name": "Can delete certificate item", "content_type": 143}, "model": "auth.permission", "pk": 430}, {"fields": {"codename": "add_donationconfiguration", "name": "Can add donation configuration", "content_type": 144}, "model": "auth.permission", "pk": 431}, {"fields": {"codename": "change_donationconfiguration", "name": "Can change donation configuration", "content_type": 144}, "model": "auth.permission", "pk": 432}, {"fields": {"codename": "delete_donationconfiguration", "name": "Can delete donation configuration", "content_type": 144}, "model": "auth.permission", "pk": 433}, {"fields": {"codename": "add_donation", "name": "Can add donation", "content_type": 145}, "model": "auth.permission", "pk": 434}, {"fields": {"codename": "change_donation", "name": "Can change donation", "content_type": 145}, "model": "auth.permission", "pk": 435}, {"fields": {"codename": "delete_donation", "name": "Can delete donation", "content_type": 145}, "model": "auth.permission", "pk": 436}, {"fields": {"codename": "add_coursemode", "name": "Can add course mode", "content_type": 146}, "model": "auth.permission", "pk": 437}, {"fields": {"codename": "change_coursemode", "name": "Can change course mode", "content_type": 146}, "model": "auth.permission", "pk": 438}, {"fields": {"codename": "delete_coursemode", "name": "Can delete course mode", "content_type": 146}, "model": "auth.permission", "pk": 439}, {"fields": {"codename": "add_coursemodesarchive", "name": "Can add course modes archive", "content_type": 147}, "model": "auth.permission", "pk": 440}, {"fields": {"codename": "change_coursemodesarchive", "name": "Can change course modes archive", "content_type": 147}, "model": "auth.permission", "pk": 441}, {"fields": {"codename": "delete_coursemodesarchive", "name": "Can delete course modes archive", "content_type": 147}, "model": "auth.permission", "pk": 442}, {"fields": {"codename": "add_coursemodeexpirationconfig", "name": "Can add course mode expiration config", "content_type": 148}, "model": "auth.permission", "pk": 443}, {"fields": {"codename": "change_coursemodeexpirationconfig", "name": "Can change course mode expiration config", "content_type": 148}, "model": "auth.permission", "pk": 444}, {"fields": {"codename": "delete_coursemodeexpirationconfig", "name": "Can delete course mode expiration config", "content_type": 148}, "model": "auth.permission", "pk": 445}, {"fields": {"codename": "add_softwaresecurephotoverification", "name": "Can add software secure photo verification", "content_type": 149}, "model": "auth.permission", "pk": 446}, {"fields": {"codename": "change_softwaresecurephotoverification", "name": "Can change software secure photo verification", "content_type": 149}, "model": "auth.permission", "pk": 447}, {"fields": {"codename": "delete_softwaresecurephotoverification", "name": "Can delete software secure photo verification", "content_type": 149}, "model": "auth.permission", "pk": 448}, {"fields": {"codename": "add_historicalverificationdeadline", "name": "Can add historical verification deadline", "content_type": 150}, "model": "auth.permission", "pk": 449}, {"fields": {"codename": "change_historicalverificationdeadline", "name": "Can change historical verification deadline", "content_type": 150}, "model": "auth.permission", "pk": 450}, {"fields": {"codename": "delete_historicalverificationdeadline", "name": "Can delete historical verification deadline", "content_type": 150}, "model": "auth.permission", "pk": 451}, {"fields": {"codename": "add_verificationdeadline", "name": "Can add verification deadline", "content_type": 151}, "model": "auth.permission", "pk": 452}, {"fields": {"codename": "change_verificationdeadline", "name": "Can change verification deadline", "content_type": 151}, "model": "auth.permission", "pk": 453}, {"fields": {"codename": "delete_verificationdeadline", "name": "Can delete verification deadline", "content_type": 151}, "model": "auth.permission", "pk": 454}, {"fields": {"codename": "add_verificationcheckpoint", "name": "Can add verification checkpoint", "content_type": 152}, "model": "auth.permission", "pk": 455}, {"fields": {"codename": "change_verificationcheckpoint", "name": "Can change verification checkpoint", "content_type": 152}, "model": "auth.permission", "pk": 456}, {"fields": {"codename": "delete_verificationcheckpoint", "name": "Can delete verification checkpoint", "content_type": 152}, "model": "auth.permission", "pk": 457}, {"fields": {"codename": "add_verificationstatus", "name": "Can add Verification Status", "content_type": 153}, "model": "auth.permission", "pk": 458}, {"fields": {"codename": "change_verificationstatus", "name": "Can change Verification Status", "content_type": 153}, "model": "auth.permission", "pk": 459}, {"fields": {"codename": "delete_verificationstatus", "name": "Can delete Verification Status", "content_type": 153}, "model": "auth.permission", "pk": 460}, {"fields": {"codename": "add_incoursereverificationconfiguration", "name": "Can add in course reverification configuration", "content_type": 154}, "model": "auth.permission", "pk": 461}, {"fields": {"codename": "change_incoursereverificationconfiguration", "name": "Can change in course reverification configuration", "content_type": 154}, "model": "auth.permission", "pk": 462}, {"fields": {"codename": "delete_incoursereverificationconfiguration", "name": "Can delete in course reverification configuration", "content_type": 154}, "model": "auth.permission", "pk": 463}, {"fields": {"codename": "add_icrvstatusemailsconfiguration", "name": "Can add icrv status emails configuration", "content_type": 155}, "model": "auth.permission", "pk": 464}, {"fields": {"codename": "change_icrvstatusemailsconfiguration", "name": "Can change icrv status emails configuration", "content_type": 155}, "model": "auth.permission", "pk": 465}, {"fields": {"codename": "delete_icrvstatusemailsconfiguration", "name": "Can delete icrv status emails configuration", "content_type": 155}, "model": "auth.permission", "pk": 466}, {"fields": {"codename": "add_skippedreverification", "name": "Can add skipped reverification", "content_type": 156}, "model": "auth.permission", "pk": 467}, {"fields": {"codename": "change_skippedreverification", "name": "Can change skipped reverification", "content_type": 156}, "model": "auth.permission", "pk": 468}, {"fields": {"codename": "delete_skippedreverification", "name": "Can delete skipped reverification", "content_type": 156}, "model": "auth.permission", "pk": 469}, {"fields": {"codename": "add_darklangconfig", "name": "Can add dark lang config", "content_type": 157}, "model": "auth.permission", "pk": 470}, {"fields": {"codename": "change_darklangconfig", "name": "Can change dark lang config", "content_type": 157}, "model": "auth.permission", "pk": 471}, {"fields": {"codename": "delete_darklangconfig", "name": "Can delete dark lang config", "content_type": 157}, "model": "auth.permission", "pk": 472}, {"fields": {"codename": "add_microsite", "name": "Can add microsite", "content_type": 158}, "model": "auth.permission", "pk": 473}, {"fields": {"codename": "change_microsite", "name": "Can change microsite", "content_type": 158}, "model": "auth.permission", "pk": 474}, {"fields": {"codename": "delete_microsite", "name": "Can delete microsite", "content_type": 158}, "model": "auth.permission", "pk": 475}, {"fields": {"codename": "add_micrositehistory", "name": "Can add microsite history", "content_type": 159}, "model": "auth.permission", "pk": 476}, {"fields": {"codename": "change_micrositehistory", "name": "Can change microsite history", "content_type": 159}, "model": "auth.permission", "pk": 477}, {"fields": {"codename": "delete_micrositehistory", "name": "Can delete microsite history", "content_type": 159}, "model": "auth.permission", "pk": 478}, {"fields": {"codename": "add_historicalmicrositeorganizationmapping", "name": "Can add historical microsite organization mapping", "content_type": 160}, "model": "auth.permission", "pk": 479}, {"fields": {"codename": "change_historicalmicrositeorganizationmapping", "name": "Can change historical microsite organization mapping", "content_type": 160}, "model": "auth.permission", "pk": 480}, {"fields": {"codename": "delete_historicalmicrositeorganizationmapping", "name": "Can delete historical microsite organization mapping", "content_type": 160}, "model": "auth.permission", "pk": 481}, {"fields": {"codename": "add_micrositeorganizationmapping", "name": "Can add microsite organization mapping", "content_type": 161}, "model": "auth.permission", "pk": 482}, {"fields": {"codename": "change_micrositeorganizationmapping", "name": "Can change microsite organization mapping", "content_type": 161}, "model": "auth.permission", "pk": 483}, {"fields": {"codename": "delete_micrositeorganizationmapping", "name": "Can delete microsite organization mapping", "content_type": 161}, "model": "auth.permission", "pk": 484}, {"fields": {"codename": "add_historicalmicrositetemplate", "name": "Can add historical microsite template", "content_type": 162}, "model": "auth.permission", "pk": 485}, {"fields": {"codename": "change_historicalmicrositetemplate", "name": "Can change historical microsite template", "content_type": 162}, "model": "auth.permission", "pk": 486}, {"fields": {"codename": "delete_historicalmicrositetemplate", "name": "Can delete historical microsite template", "content_type": 162}, "model": "auth.permission", "pk": 487}, {"fields": {"codename": "add_micrositetemplate", "name": "Can add microsite template", "content_type": 163}, "model": "auth.permission", "pk": 488}, {"fields": {"codename": "change_micrositetemplate", "name": "Can change microsite template", "content_type": 163}, "model": "auth.permission", "pk": 489}, {"fields": {"codename": "delete_micrositetemplate", "name": "Can delete microsite template", "content_type": 163}, "model": "auth.permission", "pk": 490}, {"fields": {"codename": "add_whitelistedrssurl", "name": "Can add whitelisted rss url", "content_type": 164}, "model": "auth.permission", "pk": 491}, {"fields": {"codename": "change_whitelistedrssurl", "name": "Can change whitelisted rss url", "content_type": 164}, "model": "auth.permission", "pk": 492}, {"fields": {"codename": "delete_whitelistedrssurl", "name": "Can delete whitelisted rss url", "content_type": 164}, "model": "auth.permission", "pk": 493}, {"fields": {"codename": "add_embargoedcourse", "name": "Can add embargoed course", "content_type": 165}, "model": "auth.permission", "pk": 494}, {"fields": {"codename": "change_embargoedcourse", "name": "Can change embargoed course", "content_type": 165}, "model": "auth.permission", "pk": 495}, {"fields": {"codename": "delete_embargoedcourse", "name": "Can delete embargoed course", "content_type": 165}, "model": "auth.permission", "pk": 496}, {"fields": {"codename": "add_embargoedstate", "name": "Can add embargoed state", "content_type": 166}, "model": "auth.permission", "pk": 497}, {"fields": {"codename": "change_embargoedstate", "name": "Can change embargoed state", "content_type": 166}, "model": "auth.permission", "pk": 498}, {"fields": {"codename": "delete_embargoedstate", "name": "Can delete embargoed state", "content_type": 166}, "model": "auth.permission", "pk": 499}, {"fields": {"codename": "add_restrictedcourse", "name": "Can add restricted course", "content_type": 167}, "model": "auth.permission", "pk": 500}, {"fields": {"codename": "change_restrictedcourse", "name": "Can change restricted course", "content_type": 167}, "model": "auth.permission", "pk": 501}, {"fields": {"codename": "delete_restrictedcourse", "name": "Can delete restricted course", "content_type": 167}, "model": "auth.permission", "pk": 502}, {"fields": {"codename": "add_country", "name": "Can add country", "content_type": 168}, "model": "auth.permission", "pk": 503}, {"fields": {"codename": "change_country", "name": "Can change country", "content_type": 168}, "model": "auth.permission", "pk": 504}, {"fields": {"codename": "delete_country", "name": "Can delete country", "content_type": 168}, "model": "auth.permission", "pk": 505}, {"fields": {"codename": "add_countryaccessrule", "name": "Can add country access rule", "content_type": 169}, "model": "auth.permission", "pk": 506}, {"fields": {"codename": "change_countryaccessrule", "name": "Can change country access rule", "content_type": 169}, "model": "auth.permission", "pk": 507}, {"fields": {"codename": "delete_countryaccessrule", "name": "Can delete country access rule", "content_type": 169}, "model": "auth.permission", "pk": 508}, {"fields": {"codename": "add_courseaccessrulehistory", "name": "Can add course access rule history", "content_type": 170}, "model": "auth.permission", "pk": 509}, {"fields": {"codename": "change_courseaccessrulehistory", "name": "Can change course access rule history", "content_type": 170}, "model": "auth.permission", "pk": 510}, {"fields": {"codename": "delete_courseaccessrulehistory", "name": "Can delete course access rule history", "content_type": 170}, "model": "auth.permission", "pk": 511}, {"fields": {"codename": "add_ipfilter", "name": "Can add ip filter", "content_type": 171}, "model": "auth.permission", "pk": 512}, {"fields": {"codename": "change_ipfilter", "name": "Can change ip filter", "content_type": 171}, "model": "auth.permission", "pk": 513}, {"fields": {"codename": "delete_ipfilter", "name": "Can delete ip filter", "content_type": 171}, "model": "auth.permission", "pk": 514}, {"fields": {"codename": "add_coursererunstate", "name": "Can add course rerun state", "content_type": 172}, "model": "auth.permission", "pk": 515}, {"fields": {"codename": "change_coursererunstate", "name": "Can change course rerun state", "content_type": 172}, "model": "auth.permission", "pk": 516}, {"fields": {"codename": "delete_coursererunstate", "name": "Can delete course rerun state", "content_type": 172}, "model": "auth.permission", "pk": 517}, {"fields": {"codename": "add_mobileapiconfig", "name": "Can add mobile api config", "content_type": 173}, "model": "auth.permission", "pk": 518}, {"fields": {"codename": "change_mobileapiconfig", "name": "Can change mobile api config", "content_type": 173}, "model": "auth.permission", "pk": 519}, {"fields": {"codename": "delete_mobileapiconfig", "name": "Can delete mobile api config", "content_type": 173}, "model": "auth.permission", "pk": 520}, {"fields": {"codename": "add_appversionconfig", "name": "Can add app version config", "content_type": 174}, "model": "auth.permission", "pk": 521}, {"fields": {"codename": "change_appversionconfig", "name": "Can change app version config", "content_type": 174}, "model": "auth.permission", "pk": 522}, {"fields": {"codename": "delete_appversionconfig", "name": "Can delete app version config", "content_type": 174}, "model": "auth.permission", "pk": 523}, {"fields": {"codename": "add_usersocialauth", "name": "Can add user social auth", "content_type": 175}, "model": "auth.permission", "pk": 524}, {"fields": {"codename": "change_usersocialauth", "name": "Can change user social auth", "content_type": 175}, "model": "auth.permission", "pk": 525}, {"fields": {"codename": "delete_usersocialauth", "name": "Can delete user social auth", "content_type": 175}, "model": "auth.permission", "pk": 526}, {"fields": {"codename": "add_nonce", "name": "Can add nonce", "content_type": 176}, "model": "auth.permission", "pk": 527}, {"fields": {"codename": "change_nonce", "name": "Can change nonce", "content_type": 176}, "model": "auth.permission", "pk": 528}, {"fields": {"codename": "delete_nonce", "name": "Can delete nonce", "content_type": 176}, "model": "auth.permission", "pk": 529}, {"fields": {"codename": "add_association", "name": "Can add association", "content_type": 177}, "model": "auth.permission", "pk": 530}, {"fields": {"codename": "change_association", "name": "Can change association", "content_type": 177}, "model": "auth.permission", "pk": 531}, {"fields": {"codename": "delete_association", "name": "Can delete association", "content_type": 177}, "model": "auth.permission", "pk": 532}, {"fields": {"codename": "add_code", "name": "Can add code", "content_type": 178}, "model": "auth.permission", "pk": 533}, {"fields": {"codename": "change_code", "name": "Can change code", "content_type": 178}, "model": "auth.permission", "pk": 534}, {"fields": {"codename": "delete_code", "name": "Can delete code", "content_type": 178}, "model": "auth.permission", "pk": 535}, {"fields": {"codename": "add_surveyform", "name": "Can add survey form", "content_type": 179}, "model": "auth.permission", "pk": 536}, {"fields": {"codename": "change_surveyform", "name": "Can change survey form", "content_type": 179}, "model": "auth.permission", "pk": 537}, {"fields": {"codename": "delete_surveyform", "name": "Can delete survey form", "content_type": 179}, "model": "auth.permission", "pk": 538}, {"fields": {"codename": "add_surveyanswer", "name": "Can add survey answer", "content_type": 180}, "model": "auth.permission", "pk": 539}, {"fields": {"codename": "change_surveyanswer", "name": "Can change survey answer", "content_type": 180}, "model": "auth.permission", "pk": 540}, {"fields": {"codename": "delete_surveyanswer", "name": "Can delete survey answer", "content_type": 180}, "model": "auth.permission", "pk": 541}, {"fields": {"codename": "add_xblockasidesconfig", "name": "Can add x block asides config", "content_type": 181}, "model": "auth.permission", "pk": 542}, {"fields": {"codename": "change_xblockasidesconfig", "name": "Can change x block asides config", "content_type": 181}, "model": "auth.permission", "pk": 543}, {"fields": {"codename": "delete_xblockasidesconfig", "name": "Can delete x block asides config", "content_type": 181}, "model": "auth.permission", "pk": 544}, {"fields": {"codename": "add_courseoverview", "name": "Can add course overview", "content_type": 182}, "model": "auth.permission", "pk": 545}, {"fields": {"codename": "change_courseoverview", "name": "Can change course overview", "content_type": 182}, "model": "auth.permission", "pk": 546}, {"fields": {"codename": "delete_courseoverview", "name": "Can delete course overview", "content_type": 182}, "model": "auth.permission", "pk": 547}, {"fields": {"codename": "add_courseoverviewtab", "name": "Can add course overview tab", "content_type": 183}, "model": "auth.permission", "pk": 548}, {"fields": {"codename": "change_courseoverviewtab", "name": "Can change course overview tab", "content_type": 183}, "model": "auth.permission", "pk": 549}, {"fields": {"codename": "delete_courseoverviewtab", "name": "Can delete course overview tab", "content_type": 183}, "model": "auth.permission", "pk": 550}, {"fields": {"codename": "add_courseoverviewimageset", "name": "Can add course overview image set", "content_type": 184}, "model": "auth.permission", "pk": 551}, {"fields": {"codename": "change_courseoverviewimageset", "name": "Can change course overview image set", "content_type": 184}, "model": "auth.permission", "pk": 552}, {"fields": {"codename": "delete_courseoverviewimageset", "name": "Can delete course overview image set", "content_type": 184}, "model": "auth.permission", "pk": 553}, {"fields": {"codename": "add_courseoverviewimageconfig", "name": "Can add course overview image config", "content_type": 185}, "model": "auth.permission", "pk": 554}, {"fields": {"codename": "change_courseoverviewimageconfig", "name": "Can change course overview image config", "content_type": 185}, "model": "auth.permission", "pk": 555}, {"fields": {"codename": "delete_courseoverviewimageconfig", "name": "Can delete course overview image config", "content_type": 185}, "model": "auth.permission", "pk": 556}, {"fields": {"codename": "add_coursestructure", "name": "Can add course structure", "content_type": 186}, "model": "auth.permission", "pk": 557}, {"fields": {"codename": "change_coursestructure", "name": "Can change course structure", "content_type": 186}, "model": "auth.permission", "pk": 558}, {"fields": {"codename": "delete_coursestructure", "name": "Can delete course structure", "content_type": 186}, "model": "auth.permission", "pk": 559}, {"fields": {"codename": "add_corsmodel", "name": "Can add cors model", "content_type": 187}, "model": "auth.permission", "pk": 560}, {"fields": {"codename": "change_corsmodel", "name": "Can change cors model", "content_type": 187}, "model": "auth.permission", "pk": 561}, {"fields": {"codename": "delete_corsmodel", "name": "Can delete cors model", "content_type": 187}, "model": "auth.permission", "pk": 562}, {"fields": {"codename": "add_xdomainproxyconfiguration", "name": "Can add x domain proxy configuration", "content_type": 188}, "model": "auth.permission", "pk": 563}, {"fields": {"codename": "change_xdomainproxyconfiguration", "name": "Can change x domain proxy configuration", "content_type": 188}, "model": "auth.permission", "pk": 564}, {"fields": {"codename": "delete_xdomainproxyconfiguration", "name": "Can delete x domain proxy configuration", "content_type": 188}, "model": "auth.permission", "pk": 565}, {"fields": {"codename": "add_commerceconfiguration", "name": "Can add commerce configuration", "content_type": 189}, "model": "auth.permission", "pk": 566}, {"fields": {"codename": "change_commerceconfiguration", "name": "Can change commerce configuration", "content_type": 189}, "model": "auth.permission", "pk": 567}, {"fields": {"codename": "delete_commerceconfiguration", "name": "Can delete commerce configuration", "content_type": 189}, "model": "auth.permission", "pk": 568}, {"fields": {"codename": "add_creditprovider", "name": "Can add credit provider", "content_type": 190}, "model": "auth.permission", "pk": 569}, {"fields": {"codename": "change_creditprovider", "name": "Can change credit provider", "content_type": 190}, "model": "auth.permission", "pk": 570}, {"fields": {"codename": "delete_creditprovider", "name": "Can delete credit provider", "content_type": 190}, "model": "auth.permission", "pk": 571}, {"fields": {"codename": "add_creditcourse", "name": "Can add credit course", "content_type": 191}, "model": "auth.permission", "pk": 572}, {"fields": {"codename": "change_creditcourse", "name": "Can change credit course", "content_type": 191}, "model": "auth.permission", "pk": 573}, {"fields": {"codename": "delete_creditcourse", "name": "Can delete credit course", "content_type": 191}, "model": "auth.permission", "pk": 574}, {"fields": {"codename": "add_creditrequirement", "name": "Can add credit requirement", "content_type": 192}, "model": "auth.permission", "pk": 575}, {"fields": {"codename": "change_creditrequirement", "name": "Can change credit requirement", "content_type": 192}, "model": "auth.permission", "pk": 576}, {"fields": {"codename": "delete_creditrequirement", "name": "Can delete credit requirement", "content_type": 192}, "model": "auth.permission", "pk": 577}, {"fields": {"codename": "add_historicalcreditrequirementstatus", "name": "Can add historical credit requirement status", "content_type": 193}, "model": "auth.permission", "pk": 578}, {"fields": {"codename": "change_historicalcreditrequirementstatus", "name": "Can change historical credit requirement status", "content_type": 193}, "model": "auth.permission", "pk": 579}, {"fields": {"codename": "delete_historicalcreditrequirementstatus", "name": "Can delete historical credit requirement status", "content_type": 193}, "model": "auth.permission", "pk": 580}, {"fields": {"codename": "add_creditrequirementstatus", "name": "Can add credit requirement status", "content_type": 194}, "model": "auth.permission", "pk": 581}, {"fields": {"codename": "change_creditrequirementstatus", "name": "Can change credit requirement status", "content_type": 194}, "model": "auth.permission", "pk": 582}, {"fields": {"codename": "delete_creditrequirementstatus", "name": "Can delete credit requirement status", "content_type": 194}, "model": "auth.permission", "pk": 583}, {"fields": {"codename": "add_crediteligibility", "name": "Can add credit eligibility", "content_type": 195}, "model": "auth.permission", "pk": 584}, {"fields": {"codename": "change_crediteligibility", "name": "Can change credit eligibility", "content_type": 195}, "model": "auth.permission", "pk": 585}, {"fields": {"codename": "delete_crediteligibility", "name": "Can delete credit eligibility", "content_type": 195}, "model": "auth.permission", "pk": 586}, {"fields": {"codename": "add_historicalcreditrequest", "name": "Can add historical credit request", "content_type": 196}, "model": "auth.permission", "pk": 587}, {"fields": {"codename": "change_historicalcreditrequest", "name": "Can change historical credit request", "content_type": 196}, "model": "auth.permission", "pk": 588}, {"fields": {"codename": "delete_historicalcreditrequest", "name": "Can delete historical credit request", "content_type": 196}, "model": "auth.permission", "pk": 589}, {"fields": {"codename": "add_creditrequest", "name": "Can add credit request", "content_type": 197}, "model": "auth.permission", "pk": 590}, {"fields": {"codename": "change_creditrequest", "name": "Can change credit request", "content_type": 197}, "model": "auth.permission", "pk": 591}, {"fields": {"codename": "delete_creditrequest", "name": "Can delete credit request", "content_type": 197}, "model": "auth.permission", "pk": 592}, {"fields": {"codename": "add_creditconfig", "name": "Can add credit config", "content_type": 198}, "model": "auth.permission", "pk": 593}, {"fields": {"codename": "change_creditconfig", "name": "Can change credit config", "content_type": 198}, "model": "auth.permission", "pk": 594}, {"fields": {"codename": "delete_creditconfig", "name": "Can delete credit config", "content_type": 198}, "model": "auth.permission", "pk": 595}, {"fields": {"codename": "add_courseteam", "name": "Can add course team", "content_type": 199}, "model": "auth.permission", "pk": 596}, {"fields": {"codename": "change_courseteam", "name": "Can change course team", "content_type": 199}, "model": "auth.permission", "pk": 597}, {"fields": {"codename": "delete_courseteam", "name": "Can delete course team", "content_type": 199}, "model": "auth.permission", "pk": 598}, {"fields": {"codename": "add_courseteammembership", "name": "Can add course team membership", "content_type": 200}, "model": "auth.permission", "pk": 599}, {"fields": {"codename": "change_courseteammembership", "name": "Can change course team membership", "content_type": 200}, "model": "auth.permission", "pk": 600}, {"fields": {"codename": "delete_courseteammembership", "name": "Can delete course team membership", "content_type": 200}, "model": "auth.permission", "pk": 601}, {"fields": {"codename": "add_xblockdisableconfig", "name": "Can add x block disable config", "content_type": 201}, "model": "auth.permission", "pk": 602}, {"fields": {"codename": "change_xblockdisableconfig", "name": "Can change x block disable config", "content_type": 201}, "model": "auth.permission", "pk": 603}, {"fields": {"codename": "delete_xblockdisableconfig", "name": "Can delete x block disable config", "content_type": 201}, "model": "auth.permission", "pk": 604}, {"fields": {"codename": "add_bookmark", "name": "Can add bookmark", "content_type": 202}, "model": "auth.permission", "pk": 605}, {"fields": {"codename": "change_bookmark", "name": "Can change bookmark", "content_type": 202}, "model": "auth.permission", "pk": 606}, {"fields": {"codename": "delete_bookmark", "name": "Can delete bookmark", "content_type": 202}, "model": "auth.permission", "pk": 607}, {"fields": {"codename": "add_xblockcache", "name": "Can add x block cache", "content_type": 203}, "model": "auth.permission", "pk": 608}, {"fields": {"codename": "change_xblockcache", "name": "Can change x block cache", "content_type": 203}, "model": "auth.permission", "pk": 609}, {"fields": {"codename": "delete_xblockcache", "name": "Can delete x block cache", "content_type": 203}, "model": "auth.permission", "pk": 610}, {"fields": {"codename": "add_programsapiconfig", "name": "Can add programs api config", "content_type": 204}, "model": "auth.permission", "pk": 611}, {"fields": {"codename": "change_programsapiconfig", "name": "Can change programs api config", "content_type": 204}, "model": "auth.permission", "pk": 612}, {"fields": {"codename": "delete_programsapiconfig", "name": "Can delete programs api config", "content_type": 204}, "model": "auth.permission", "pk": 613}, {"fields": {"codename": "add_selfpacedconfiguration", "name": "Can add self paced configuration", "content_type": 205}, "model": "auth.permission", "pk": 614}, {"fields": {"codename": "change_selfpacedconfiguration", "name": "Can change self paced configuration", "content_type": 205}, "model": "auth.permission", "pk": 615}, {"fields": {"codename": "delete_selfpacedconfiguration", "name": "Can delete self paced configuration", "content_type": 205}, "model": "auth.permission", "pk": 616}, {"fields": {"codename": "add_kvstore", "name": "Can add kv store", "content_type": 206}, "model": "auth.permission", "pk": 617}, {"fields": {"codename": "change_kvstore", "name": "Can change kv store", "content_type": 206}, "model": "auth.permission", "pk": 618}, {"fields": {"codename": "delete_kvstore", "name": "Can delete kv store", "content_type": 206}, "model": "auth.permission", "pk": 619}, {"fields": {"codename": "add_credentialsapiconfig", "name": "Can add credentials api config", "content_type": 207}, "model": "auth.permission", "pk": 620}, {"fields": {"codename": "change_credentialsapiconfig", "name": "Can change credentials api config", "content_type": 207}, "model": "auth.permission", "pk": 621}, {"fields": {"codename": "delete_credentialsapiconfig", "name": "Can delete credentials api config", "content_type": 207}, "model": "auth.permission", "pk": 622}, {"fields": {"codename": "add_milestone", "name": "Can add milestone", "content_type": 208}, "model": "auth.permission", "pk": 623}, {"fields": {"codename": "change_milestone", "name": "Can change milestone", "content_type": 208}, "model": "auth.permission", "pk": 624}, {"fields": {"codename": "delete_milestone", "name": "Can delete milestone", "content_type": 208}, "model": "auth.permission", "pk": 625}, {"fields": {"codename": "add_milestonerelationshiptype", "name": "Can add milestone relationship type", "content_type": 209}, "model": "auth.permission", "pk": 626}, {"fields": {"codename": "change_milestonerelationshiptype", "name": "Can change milestone relationship type", "content_type": 209}, "model": "auth.permission", "pk": 627}, {"fields": {"codename": "delete_milestonerelationshiptype", "name": "Can delete milestone relationship type", "content_type": 209}, "model": "auth.permission", "pk": 628}, {"fields": {"codename": "add_coursemilestone", "name": "Can add course milestone", "content_type": 210}, "model": "auth.permission", "pk": 629}, {"fields": {"codename": "change_coursemilestone", "name": "Can change course milestone", "content_type": 210}, "model": "auth.permission", "pk": 630}, {"fields": {"codename": "delete_coursemilestone", "name": "Can delete course milestone", "content_type": 210}, "model": "auth.permission", "pk": 631}, {"fields": {"codename": "add_coursecontentmilestone", "name": "Can add course content milestone", "content_type": 211}, "model": "auth.permission", "pk": 632}, {"fields": {"codename": "change_coursecontentmilestone", "name": "Can change course content milestone", "content_type": 211}, "model": "auth.permission", "pk": 633}, {"fields": {"codename": "delete_coursecontentmilestone", "name": "Can delete course content milestone", "content_type": 211}, "model": "auth.permission", "pk": 634}, {"fields": {"codename": "add_usermilestone", "name": "Can add user milestone", "content_type": 212}, "model": "auth.permission", "pk": 635}, {"fields": {"codename": "change_usermilestone", "name": "Can change user milestone", "content_type": 212}, "model": "auth.permission", "pk": 636}, {"fields": {"codename": "delete_usermilestone", "name": "Can delete user milestone", "content_type": 212}, "model": "auth.permission", "pk": 637}, {"fields": {"codename": "add_coursetalkwidgetconfiguration", "name": "Can add course talk widget configuration", "content_type": 213}, "model": "auth.permission", "pk": 638}, {"fields": {"codename": "change_coursetalkwidgetconfiguration", "name": "Can change course talk widget configuration", "content_type": 213}, "model": "auth.permission", "pk": 639}, {"fields": {"codename": "delete_coursetalkwidgetconfiguration", "name": "Can delete course talk widget configuration", "content_type": 213}, "model": "auth.permission", "pk": 640}, {"fields": {"codename": "add_historicalapiaccessrequest", "name": "Can add historical api access request", "content_type": 214}, "model": "auth.permission", "pk": 641}, {"fields": {"codename": "change_historicalapiaccessrequest", "name": "Can change historical api access request", "content_type": 214}, "model": "auth.permission", "pk": 642}, {"fields": {"codename": "delete_historicalapiaccessrequest", "name": "Can delete historical api access request", "content_type": 214}, "model": "auth.permission", "pk": 643}, {"fields": {"codename": "add_apiaccessrequest", "name": "Can add api access request", "content_type": 1}, "model": "auth.permission", "pk": 644}, {"fields": {"codename": "change_apiaccessrequest", "name": "Can change api access request", "content_type": 1}, "model": "auth.permission", "pk": 645}, {"fields": {"codename": "delete_apiaccessrequest", "name": "Can delete api access request", "content_type": 1}, "model": "auth.permission", "pk": 646}, {"fields": {"codename": "add_apiaccessconfig", "name": "Can add api access config", "content_type": 215}, "model": "auth.permission", "pk": 647}, {"fields": {"codename": "change_apiaccessconfig", "name": "Can change api access config", "content_type": 215}, "model": "auth.permission", "pk": 648}, {"fields": {"codename": "delete_apiaccessconfig", "name": "Can delete api access config", "content_type": 215}, "model": "auth.permission", "pk": 649}, {"fields": {"codename": "add_catalog", "name": "Can add catalog", "content_type": 216}, "model": "auth.permission", "pk": 650}, {"fields": {"codename": "change_catalog", "name": "Can change catalog", "content_type": 216}, "model": "auth.permission", "pk": 651}, {"fields": {"codename": "delete_catalog", "name": "Can delete catalog", "content_type": 216}, "model": "auth.permission", "pk": 652}, {"fields": {"codename": "add_verifiedtrackcohortedcourse", "name": "Can add verified track cohorted course", "content_type": 217}, "model": "auth.permission", "pk": 653}, {"fields": {"codename": "change_verifiedtrackcohortedcourse", "name": "Can change verified track cohorted course", "content_type": 217}, "model": "auth.permission", "pk": 654}, {"fields": {"codename": "delete_verifiedtrackcohortedcourse", "name": "Can delete verified track cohorted course", "content_type": 217}, "model": "auth.permission", "pk": 655}, {"fields": {"codename": "add_badgeclass", "name": "Can add badge class", "content_type": 218}, "model": "auth.permission", "pk": 656}, {"fields": {"codename": "change_badgeclass", "name": "Can change badge class", "content_type": 218}, "model": "auth.permission", "pk": 657}, {"fields": {"codename": "delete_badgeclass", "name": "Can delete badge class", "content_type": 218}, "model": "auth.permission", "pk": 658}, {"fields": {"codename": "add_badgeassertion", "name": "Can add badge assertion", "content_type": 219}, "model": "auth.permission", "pk": 659}, {"fields": {"codename": "change_badgeassertion", "name": "Can change badge assertion", "content_type": 219}, "model": "auth.permission", "pk": 660}, {"fields": {"codename": "delete_badgeassertion", "name": "Can delete badge assertion", "content_type": 219}, "model": "auth.permission", "pk": 661}, {"fields": {"codename": "add_coursecompleteimageconfiguration", "name": "Can add course complete image configuration", "content_type": 220}, "model": "auth.permission", "pk": 662}, {"fields": {"codename": "change_coursecompleteimageconfiguration", "name": "Can change course complete image configuration", "content_type": 220}, "model": "auth.permission", "pk": 663}, {"fields": {"codename": "delete_coursecompleteimageconfiguration", "name": "Can delete course complete image configuration", "content_type": 220}, "model": "auth.permission", "pk": 664}, {"fields": {"codename": "add_courseeventbadgesconfiguration", "name": "Can add course event badges configuration", "content_type": 221}, "model": "auth.permission", "pk": 665}, {"fields": {"codename": "change_courseeventbadgesconfiguration", "name": "Can change course event badges configuration", "content_type": 221}, "model": "auth.permission", "pk": 666}, {"fields": {"codename": "delete_courseeventbadgesconfiguration", "name": "Can delete course event badges configuration", "content_type": 221}, "model": "auth.permission", "pk": 667}, {"fields": {"codename": "add_studentitem", "name": "Can add student item", "content_type": 222}, "model": "auth.permission", "pk": 668}, {"fields": {"codename": "change_studentitem", "name": "Can change student item", "content_type": 222}, "model": "auth.permission", "pk": 669}, {"fields": {"codename": "delete_studentitem", "name": "Can delete student item", "content_type": 222}, "model": "auth.permission", "pk": 670}, {"fields": {"codename": "add_submission", "name": "Can add submission", "content_type": 223}, "model": "auth.permission", "pk": 671}, {"fields": {"codename": "change_submission", "name": "Can change submission", "content_type": 223}, "model": "auth.permission", "pk": 672}, {"fields": {"codename": "delete_submission", "name": "Can delete submission", "content_type": 223}, "model": "auth.permission", "pk": 673}, {"fields": {"codename": "add_score", "name": "Can add score", "content_type": 224}, "model": "auth.permission", "pk": 674}, {"fields": {"codename": "change_score", "name": "Can change score", "content_type": 224}, "model": "auth.permission", "pk": 675}, {"fields": {"codename": "delete_score", "name": "Can delete score", "content_type": 224}, "model": "auth.permission", "pk": 676}, {"fields": {"codename": "add_scoresummary", "name": "Can add score summary", "content_type": 225}, "model": "auth.permission", "pk": 677}, {"fields": {"codename": "change_scoresummary", "name": "Can change score summary", "content_type": 225}, "model": "auth.permission", "pk": 678}, {"fields": {"codename": "delete_scoresummary", "name": "Can delete score summary", "content_type": 225}, "model": "auth.permission", "pk": 679}, {"fields": {"codename": "add_scoreannotation", "name": "Can add score annotation", "content_type": 226}, "model": "auth.permission", "pk": 680}, {"fields": {"codename": "change_scoreannotation", "name": "Can change score annotation", "content_type": 226}, "model": "auth.permission", "pk": 681}, {"fields": {"codename": "delete_scoreannotation", "name": "Can delete score annotation", "content_type": 226}, "model": "auth.permission", "pk": 682}, {"fields": {"codename": "add_rubric", "name": "Can add rubric", "content_type": 227}, "model": "auth.permission", "pk": 683}, {"fields": {"codename": "change_rubric", "name": "Can change rubric", "content_type": 227}, "model": "auth.permission", "pk": 684}, {"fields": {"codename": "delete_rubric", "name": "Can delete rubric", "content_type": 227}, "model": "auth.permission", "pk": 685}, {"fields": {"codename": "add_criterion", "name": "Can add criterion", "content_type": 228}, "model": "auth.permission", "pk": 686}, {"fields": {"codename": "change_criterion", "name": "Can change criterion", "content_type": 228}, "model": "auth.permission", "pk": 687}, {"fields": {"codename": "delete_criterion", "name": "Can delete criterion", "content_type": 228}, "model": "auth.permission", "pk": 688}, {"fields": {"codename": "add_criterionoption", "name": "Can add criterion option", "content_type": 229}, "model": "auth.permission", "pk": 689}, {"fields": {"codename": "change_criterionoption", "name": "Can change criterion option", "content_type": 229}, "model": "auth.permission", "pk": 690}, {"fields": {"codename": "delete_criterionoption", "name": "Can delete criterion option", "content_type": 229}, "model": "auth.permission", "pk": 691}, {"fields": {"codename": "add_assessment", "name": "Can add assessment", "content_type": 230}, "model": "auth.permission", "pk": 692}, {"fields": {"codename": "change_assessment", "name": "Can change assessment", "content_type": 230}, "model": "auth.permission", "pk": 693}, {"fields": {"codename": "delete_assessment", "name": "Can delete assessment", "content_type": 230}, "model": "auth.permission", "pk": 694}, {"fields": {"codename": "add_assessmentpart", "name": "Can add assessment part", "content_type": 231}, "model": "auth.permission", "pk": 695}, {"fields": {"codename": "change_assessmentpart", "name": "Can change assessment part", "content_type": 231}, "model": "auth.permission", "pk": 696}, {"fields": {"codename": "delete_assessmentpart", "name": "Can delete assessment part", "content_type": 231}, "model": "auth.permission", "pk": 697}, {"fields": {"codename": "add_assessmentfeedbackoption", "name": "Can add assessment feedback option", "content_type": 232}, "model": "auth.permission", "pk": 698}, {"fields": {"codename": "change_assessmentfeedbackoption", "name": "Can change assessment feedback option", "content_type": 232}, "model": "auth.permission", "pk": 699}, {"fields": {"codename": "delete_assessmentfeedbackoption", "name": "Can delete assessment feedback option", "content_type": 232}, "model": "auth.permission", "pk": 700}, {"fields": {"codename": "add_assessmentfeedback", "name": "Can add assessment feedback", "content_type": 233}, "model": "auth.permission", "pk": 701}, {"fields": {"codename": "change_assessmentfeedback", "name": "Can change assessment feedback", "content_type": 233}, "model": "auth.permission", "pk": 702}, {"fields": {"codename": "delete_assessmentfeedback", "name": "Can delete assessment feedback", "content_type": 233}, "model": "auth.permission", "pk": 703}, {"fields": {"codename": "add_peerworkflow", "name": "Can add peer workflow", "content_type": 234}, "model": "auth.permission", "pk": 704}, {"fields": {"codename": "change_peerworkflow", "name": "Can change peer workflow", "content_type": 234}, "model": "auth.permission", "pk": 705}, {"fields": {"codename": "delete_peerworkflow", "name": "Can delete peer workflow", "content_type": 234}, "model": "auth.permission", "pk": 706}, {"fields": {"codename": "add_peerworkflowitem", "name": "Can add peer workflow item", "content_type": 235}, "model": "auth.permission", "pk": 707}, {"fields": {"codename": "change_peerworkflowitem", "name": "Can change peer workflow item", "content_type": 235}, "model": "auth.permission", "pk": 708}, {"fields": {"codename": "delete_peerworkflowitem", "name": "Can delete peer workflow item", "content_type": 235}, "model": "auth.permission", "pk": 709}, {"fields": {"codename": "add_trainingexample", "name": "Can add training example", "content_type": 236}, "model": "auth.permission", "pk": 710}, {"fields": {"codename": "change_trainingexample", "name": "Can change training example", "content_type": 236}, "model": "auth.permission", "pk": 711}, {"fields": {"codename": "delete_trainingexample", "name": "Can delete training example", "content_type": 236}, "model": "auth.permission", "pk": 712}, {"fields": {"codename": "add_studenttrainingworkflow", "name": "Can add student training workflow", "content_type": 237}, "model": "auth.permission", "pk": 713}, {"fields": {"codename": "change_studenttrainingworkflow", "name": "Can change student training workflow", "content_type": 237}, "model": "auth.permission", "pk": 714}, {"fields": {"codename": "delete_studenttrainingworkflow", "name": "Can delete student training workflow", "content_type": 237}, "model": "auth.permission", "pk": 715}, {"fields": {"codename": "add_studenttrainingworkflowitem", "name": "Can add student training workflow item", "content_type": 238}, "model": "auth.permission", "pk": 716}, {"fields": {"codename": "change_studenttrainingworkflowitem", "name": "Can change student training workflow item", "content_type": 238}, "model": "auth.permission", "pk": 717}, {"fields": {"codename": "delete_studenttrainingworkflowitem", "name": "Can delete student training workflow item", "content_type": 238}, "model": "auth.permission", "pk": 718}, {"fields": {"codename": "add_aiclassifierset", "name": "Can add ai classifier set", "content_type": 239}, "model": "auth.permission", "pk": 719}, {"fields": {"codename": "change_aiclassifierset", "name": "Can change ai classifier set", "content_type": 239}, "model": "auth.permission", "pk": 720}, {"fields": {"codename": "delete_aiclassifierset", "name": "Can delete ai classifier set", "content_type": 239}, "model": "auth.permission", "pk": 721}, {"fields": {"codename": "add_aiclassifier", "name": "Can add ai classifier", "content_type": 240}, "model": "auth.permission", "pk": 722}, {"fields": {"codename": "change_aiclassifier", "name": "Can change ai classifier", "content_type": 240}, "model": "auth.permission", "pk": 723}, {"fields": {"codename": "delete_aiclassifier", "name": "Can delete ai classifier", "content_type": 240}, "model": "auth.permission", "pk": 724}, {"fields": {"codename": "add_aitrainingworkflow", "name": "Can add ai training workflow", "content_type": 241}, "model": "auth.permission", "pk": 725}, {"fields": {"codename": "change_aitrainingworkflow", "name": "Can change ai training workflow", "content_type": 241}, "model": "auth.permission", "pk": 726}, {"fields": {"codename": "delete_aitrainingworkflow", "name": "Can delete ai training workflow", "content_type": 241}, "model": "auth.permission", "pk": 727}, {"fields": {"codename": "add_aigradingworkflow", "name": "Can add ai grading workflow", "content_type": 242}, "model": "auth.permission", "pk": 728}, {"fields": {"codename": "change_aigradingworkflow", "name": "Can change ai grading workflow", "content_type": 242}, "model": "auth.permission", "pk": 729}, {"fields": {"codename": "delete_aigradingworkflow", "name": "Can delete ai grading workflow", "content_type": 242}, "model": "auth.permission", "pk": 730}, {"fields": {"codename": "add_staffworkflow", "name": "Can add staff workflow", "content_type": 243}, "model": "auth.permission", "pk": 731}, {"fields": {"codename": "change_staffworkflow", "name": "Can change staff workflow", "content_type": 243}, "model": "auth.permission", "pk": 732}, {"fields": {"codename": "delete_staffworkflow", "name": "Can delete staff workflow", "content_type": 243}, "model": "auth.permission", "pk": 733}, {"fields": {"codename": "add_assessmentworkflow", "name": "Can add assessment workflow", "content_type": 244}, "model": "auth.permission", "pk": 734}, {"fields": {"codename": "change_assessmentworkflow", "name": "Can change assessment workflow", "content_type": 244}, "model": "auth.permission", "pk": 735}, {"fields": {"codename": "delete_assessmentworkflow", "name": "Can delete assessment workflow", "content_type": 244}, "model": "auth.permission", "pk": 736}, {"fields": {"codename": "add_assessmentworkflowstep", "name": "Can add assessment workflow step", "content_type": 245}, "model": "auth.permission", "pk": 737}, {"fields": {"codename": "change_assessmentworkflowstep", "name": "Can change assessment workflow step", "content_type": 245}, "model": "auth.permission", "pk": 738}, {"fields": {"codename": "delete_assessmentworkflowstep", "name": "Can delete assessment workflow step", "content_type": 245}, "model": "auth.permission", "pk": 739}, {"fields": {"codename": "add_assessmentworkflowcancellation", "name": "Can add assessment workflow cancellation", "content_type": 246}, "model": "auth.permission", "pk": 740}, {"fields": {"codename": "change_assessmentworkflowcancellation", "name": "Can change assessment workflow cancellation", "content_type": 246}, "model": "auth.permission", "pk": 741}, {"fields": {"codename": "delete_assessmentworkflowcancellation", "name": "Can delete assessment workflow cancellation", "content_type": 246}, "model": "auth.permission", "pk": 742}, {"fields": {"codename": "add_profile", "name": "Can add profile", "content_type": 247}, "model": "auth.permission", "pk": 743}, {"fields": {"codename": "change_profile", "name": "Can change profile", "content_type": 247}, "model": "auth.permission", "pk": 744}, {"fields": {"codename": "delete_profile", "name": "Can delete profile", "content_type": 247}, "model": "auth.permission", "pk": 745}, {"fields": {"codename": "add_video", "name": "Can add video", "content_type": 248}, "model": "auth.permission", "pk": 746}, {"fields": {"codename": "change_video", "name": "Can change video", "content_type": 248}, "model": "auth.permission", "pk": 747}, {"fields": {"codename": "delete_video", "name": "Can delete video", "content_type": 248}, "model": "auth.permission", "pk": 748}, {"fields": {"codename": "add_coursevideo", "name": "Can add course video", "content_type": 249}, "model": "auth.permission", "pk": 749}, {"fields": {"codename": "change_coursevideo", "name": "Can change course video", "content_type": 249}, "model": "auth.permission", "pk": 750}, {"fields": {"codename": "delete_coursevideo", "name": "Can delete course video", "content_type": 249}, "model": "auth.permission", "pk": 751}, {"fields": {"codename": "add_encodedvideo", "name": "Can add encoded video", "content_type": 250}, "model": "auth.permission", "pk": 752}, {"fields": {"codename": "change_encodedvideo", "name": "Can change encoded video", "content_type": 250}, "model": "auth.permission", "pk": 753}, {"fields": {"codename": "delete_encodedvideo", "name": "Can delete encoded video", "content_type": 250}, "model": "auth.permission", "pk": 754}, {"fields": {"codename": "add_subtitle", "name": "Can add subtitle", "content_type": 251}, "model": "auth.permission", "pk": 755}, {"fields": {"codename": "change_subtitle", "name": "Can change subtitle", "content_type": 251}, "model": "auth.permission", "pk": 756}, {"fields": {"codename": "delete_subtitle", "name": "Can delete subtitle", "content_type": 251}, "model": "auth.permission", "pk": 757}, {"fields": {"codename": "add_proctoredexam", "name": "Can add proctored exam", "content_type": 252}, "model": "auth.permission", "pk": 758}, {"fields": {"codename": "change_proctoredexam", "name": "Can change proctored exam", "content_type": 252}, "model": "auth.permission", "pk": 759}, {"fields": {"codename": "delete_proctoredexam", "name": "Can delete proctored exam", "content_type": 252}, "model": "auth.permission", "pk": 760}, {"fields": {"codename": "add_proctoredexamreviewpolicy", "name": "Can add Proctored exam review policy", "content_type": 253}, "model": "auth.permission", "pk": 761}, {"fields": {"codename": "change_proctoredexamreviewpolicy", "name": "Can change Proctored exam review policy", "content_type": 253}, "model": "auth.permission", "pk": 762}, {"fields": {"codename": "delete_proctoredexamreviewpolicy", "name": "Can delete Proctored exam review policy", "content_type": 253}, "model": "auth.permission", "pk": 763}, {"fields": {"codename": "add_proctoredexamreviewpolicyhistory", "name": "Can add proctored exam review policy history", "content_type": 254}, "model": "auth.permission", "pk": 764}, {"fields": {"codename": "change_proctoredexamreviewpolicyhistory", "name": "Can change proctored exam review policy history", "content_type": 254}, "model": "auth.permission", "pk": 765}, {"fields": {"codename": "delete_proctoredexamreviewpolicyhistory", "name": "Can delete proctored exam review policy history", "content_type": 254}, "model": "auth.permission", "pk": 766}, {"fields": {"codename": "add_proctoredexamstudentattempt", "name": "Can add proctored exam attempt", "content_type": 255}, "model": "auth.permission", "pk": 767}, {"fields": {"codename": "change_proctoredexamstudentattempt", "name": "Can change proctored exam attempt", "content_type": 255}, "model": "auth.permission", "pk": 768}, {"fields": {"codename": "delete_proctoredexamstudentattempt", "name": "Can delete proctored exam attempt", "content_type": 255}, "model": "auth.permission", "pk": 769}, {"fields": {"codename": "add_proctoredexamstudentattempthistory", "name": "Can add proctored exam attempt history", "content_type": 256}, "model": "auth.permission", "pk": 770}, {"fields": {"codename": "change_proctoredexamstudentattempthistory", "name": "Can change proctored exam attempt history", "content_type": 256}, "model": "auth.permission", "pk": 771}, {"fields": {"codename": "delete_proctoredexamstudentattempthistory", "name": "Can delete proctored exam attempt history", "content_type": 256}, "model": "auth.permission", "pk": 772}, {"fields": {"codename": "add_proctoredexamstudentallowance", "name": "Can add proctored allowance", "content_type": 257}, "model": "auth.permission", "pk": 773}, {"fields": {"codename": "change_proctoredexamstudentallowance", "name": "Can change proctored allowance", "content_type": 257}, "model": "auth.permission", "pk": 774}, {"fields": {"codename": "delete_proctoredexamstudentallowance", "name": "Can delete proctored allowance", "content_type": 257}, "model": "auth.permission", "pk": 775}, {"fields": {"codename": "add_proctoredexamstudentallowancehistory", "name": "Can add proctored allowance history", "content_type": 258}, "model": "auth.permission", "pk": 776}, {"fields": {"codename": "change_proctoredexamstudentallowancehistory", "name": "Can change proctored allowance history", "content_type": 258}, "model": "auth.permission", "pk": 777}, {"fields": {"codename": "delete_proctoredexamstudentallowancehistory", "name": "Can delete proctored allowance history", "content_type": 258}, "model": "auth.permission", "pk": 778}, {"fields": {"codename": "add_proctoredexamsoftwaresecurereview", "name": "Can add Proctored exam software secure review", "content_type": 259}, "model": "auth.permission", "pk": 779}, {"fields": {"codename": "change_proctoredexamsoftwaresecurereview", "name": "Can change Proctored exam software secure review", "content_type": 259}, "model": "auth.permission", "pk": 780}, {"fields": {"codename": "delete_proctoredexamsoftwaresecurereview", "name": "Can delete Proctored exam software secure review", "content_type": 259}, "model": "auth.permission", "pk": 781}, {"fields": {"codename": "add_proctoredexamsoftwaresecurereviewhistory", "name": "Can add Proctored exam review archive", "content_type": 260}, "model": "auth.permission", "pk": 782}, {"fields": {"codename": "change_proctoredexamsoftwaresecurereviewhistory", "name": "Can change Proctored exam review archive", "content_type": 260}, "model": "auth.permission", "pk": 783}, {"fields": {"codename": "delete_proctoredexamsoftwaresecurereviewhistory", "name": "Can delete Proctored exam review archive", "content_type": 260}, "model": "auth.permission", "pk": 784}, {"fields": {"codename": "add_proctoredexamsoftwaresecurecomment", "name": "Can add proctored exam software secure comment", "content_type": 261}, "model": "auth.permission", "pk": 785}, {"fields": {"codename": "change_proctoredexamsoftwaresecurecomment", "name": "Can change proctored exam software secure comment", "content_type": 261}, "model": "auth.permission", "pk": 786}, {"fields": {"codename": "delete_proctoredexamsoftwaresecurecomment", "name": "Can delete proctored exam software secure comment", "content_type": 261}, "model": "auth.permission", "pk": 787}, {"fields": {"codename": "add_organization", "name": "Can add organization", "content_type": 262}, "model": "auth.permission", "pk": 788}, {"fields": {"codename": "change_organization", "name": "Can change organization", "content_type": 262}, "model": "auth.permission", "pk": 789}, {"fields": {"codename": "delete_organization", "name": "Can delete organization", "content_type": 262}, "model": "auth.permission", "pk": 790}, {"fields": {"codename": "add_organizationcourse", "name": "Can add Link Course", "content_type": 263}, "model": "auth.permission", "pk": 791}, {"fields": {"codename": "change_organizationcourse", "name": "Can change Link Course", "content_type": 263}, "model": "auth.permission", "pk": 792}, {"fields": {"codename": "delete_organizationcourse", "name": "Can delete Link Course", "content_type": 263}, "model": "auth.permission", "pk": 793}, {"fields": {"codename": "add_customcourseforedx", "name": "Can add custom course for ed x", "content_type": 264}, "model": "auth.permission", "pk": 794}, {"fields": {"codename": "change_customcourseforedx", "name": "Can change custom course for ed x", "content_type": 264}, "model": "auth.permission", "pk": 795}, {"fields": {"codename": "delete_customcourseforedx", "name": "Can delete custom course for ed x", "content_type": 264}, "model": "auth.permission", "pk": 796}, {"fields": {"codename": "add_ccxfieldoverride", "name": "Can add ccx field override", "content_type": 265}, "model": "auth.permission", "pk": 797}, {"fields": {"codename": "change_ccxfieldoverride", "name": "Can change ccx field override", "content_type": 265}, "model": "auth.permission", "pk": 798}, {"fields": {"codename": "delete_ccxfieldoverride", "name": "Can delete ccx field override", "content_type": 265}, "model": "auth.permission", "pk": 799}, {"fields": {"codename": "add_ccxcon", "name": "Can add CCX Connector", "content_type": 266}, "model": "auth.permission", "pk": 800}, {"fields": {"codename": "change_ccxcon", "name": "Can change CCX Connector", "content_type": 266}, "model": "auth.permission", "pk": 801}, {"fields": {"codename": "delete_ccxcon", "name": "Can delete CCX Connector", "content_type": 266}, "model": "auth.permission", "pk": 802}, {"fields": {"codename": "add_studentmodulehistoryextended", "name": "Can add student module history extended", "content_type": 267}, "model": "auth.permission", "pk": 803}, {"fields": {"codename": "change_studentmodulehistoryextended", "name": "Can change student module history extended", "content_type": 267}, "model": "auth.permission", "pk": 804}, {"fields": {"codename": "delete_studentmodulehistoryextended", "name": "Can delete student module history extended", "content_type": 267}, "model": "auth.permission", "pk": 805}, {"fields": {"codename": "add_videouploadconfig", "name": "Can add video upload config", "content_type": 268}, "model": "auth.permission", "pk": 806}, {"fields": {"codename": "change_videouploadconfig", "name": "Can change video upload config", "content_type": 268}, "model": "auth.permission", "pk": 807}, {"fields": {"codename": "delete_videouploadconfig", "name": "Can delete video upload config", "content_type": 268}, "model": "auth.permission", "pk": 808}, {"fields": {"codename": "add_pushnotificationconfig", "name": "Can add push notification config", "content_type": 269}, "model": "auth.permission", "pk": 809}, {"fields": {"codename": "change_pushnotificationconfig", "name": "Can change push notification config", "content_type": 269}, "model": "auth.permission", "pk": 810}, {"fields": {"codename": "delete_pushnotificationconfig", "name": "Can delete push notification config", "content_type": 269}, "model": "auth.permission", "pk": 811}, {"fields": {"codename": "add_coursecreator", "name": "Can add course creator", "content_type": 270}, "model": "auth.permission", "pk": 812}, {"fields": {"codename": "change_coursecreator", "name": "Can change course creator", "content_type": 270}, "model": "auth.permission", "pk": 813}, {"fields": {"codename": "delete_coursecreator", "name": "Can delete course creator", "content_type": 270}, "model": "auth.permission", "pk": 814}, {"fields": {"codename": "add_studioconfig", "name": "Can add studio config", "content_type": 271}, "model": "auth.permission", "pk": 815}, {"fields": {"codename": "change_studioconfig", "name": "Can change studio config", "content_type": 271}, "model": "auth.permission", "pk": 816}, {"fields": {"codename": "delete_studioconfig", "name": "Can delete studio config", "content_type": 271}, "model": "auth.permission", "pk": 817}, {"fields": {"codename": "add_tagcategories", "name": "Can add tag categories", "content_type": 272}, "model": "auth.permission", "pk": 818}, {"fields": {"codename": "change_tagcategories", "name": "Can change tag categories", "content_type": 272}, "model": "auth.permission", "pk": 819}, {"fields": {"codename": "delete_tagcategories", "name": "Can delete tag categories", "content_type": 272}, "model": "auth.permission", "pk": 820}, {"fields": {"codename": "add_tagavailablevalues", "name": "Can add tag available values", "content_type": 273}, "model": "auth.permission", "pk": 821}, {"fields": {"codename": "change_tagavailablevalues", "name": "Can change tag available values", "content_type": 273}, "model": "auth.permission", "pk": 822}, {"fields": {"codename": "delete_tagavailablevalues", "name": "Can delete tag available values", "content_type": 273}, "model": "auth.permission", "pk": 823}, {"fields": {"name": "API Access Request Approvers", "permissions": []}, "model": "auth.group", "pk": 1}, {"fields": {"username": "ecommerce_worker", "first_name": "", "last_name": "", "is_active": true, "is_superuser": false, "is_staff": false, "last_login": null, "groups": [], "user_permissions": [], "password": "!76Znbctke93mtIYpebT5Sah6gI1ozGdirz72MJkJ", "email": "ecommerce_worker@fake.email", "date_joined": "2016-05-10T17:00:38.127Z"}, "model": "auth.user", "pk": 1}, {"fields": {"change_date": "2016-05-10T17:02:21.634Z", "changed_by": null, "enabled": true}, "model": "util.ratelimitconfiguration", "pk": 1}, {"fields": {"change_date": "2016-05-10T17:00:35.106Z", "changed_by": null, "configuration": "{\"default\": {\"accomplishment_class_append\": \"accomplishment-certificate\", \"platform_name\": \"Your Platform Name Here\", \"logo_src\": \"/static/certificates/images/logo.png\", \"logo_url\": \"http://www.example.com\", \"company_verified_certificate_url\": \"http://www.example.com/verified-certificate\", \"company_privacy_url\": \"http://www.example.com/privacy-policy\", \"company_tos_url\": \"http://www.example.com/terms-service\", \"company_about_url\": \"http://www.example.com/about-us\"}, \"verified\": {\"certificate_type\": \"Verified\", \"certificate_title\": \"Verified Certificate of Achievement\"}, \"honor\": {\"certificate_type\": \"Honor Code\", \"certificate_title\": \"Certificate of Achievement\"}}", "enabled": false}, "model": "certificates.certificatehtmlviewconfiguration", "pk": 1}, {"fields": {"change_date": "2016-05-10T17:00:46.301Z", "changed_by": null, "enabled": true, "released_languages": ""}, "model": "dark_lang.darklangconfig", "pk": 1}] \ No newline at end of file diff --git a/common/test/db_cache/bok_choy_migrations_data_default.sql b/common/test/db_cache/bok_choy_migrations_data_default.sql index 0746152bda..f127acb4c9 100644 --- a/common/test/db_cache/bok_choy_migrations_data_default.sql +++ b/common/test/db_cache/bok_choy_migrations_data_default.sql @@ -1,8 +1,8 @@ --- MySQL dump 10.13 Distrib 5.6.24, for debian-linux-gnu (x86_64) +-- MySQL dump 10.13 Distrib 5.6.30, for Linux (x86_64) -- -- Host: localhost Database: edxtest -- ------------------------------------------------------ --- Server version 5.6.24-2+deb.sury.org~precise+2 +-- Server version 5.6.30 /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; @@ -21,7 +21,7 @@ LOCK TABLES `django_migrations` WRITE; /*!40000 ALTER TABLE `django_migrations` DISABLE KEYS */; -INSERT INTO `django_migrations` VALUES (1,'contenttypes','0001_initial','2016-04-01 20:18:16.984102'),(2,'auth','0001_initial','2016-04-01 20:18:17.329131'),(3,'admin','0001_initial','2016-04-01 20:18:17.452069'),(4,'contenttypes','0002_remove_content_type_name','2016-04-01 20:18:17.635765'),(5,'api_admin','0001_initial','2016-04-01 20:18:17.822518'),(6,'api_admin','0002_auto_20160325_1604','2016-04-01 20:18:17.846401'),(7,'assessment','0001_initial','2016-04-01 20:18:22.775505'),(8,'assessment','0002_staffworkflow','2016-04-01 20:18:22.975922'),(9,'auth','0002_alter_permission_name_max_length','2016-04-01 20:18:23.039496'),(10,'auth','0003_alter_user_email_max_length','2016-04-01 20:18:23.099682'),(11,'auth','0004_alter_user_username_opts','2016-04-01 20:18:23.140537'),(12,'auth','0005_alter_user_last_login_null','2016-04-01 20:18:23.208370'),(13,'auth','0006_require_contenttypes_0002','2016-04-01 20:18:23.215678'),(14,'instructor_task','0001_initial','2016-04-01 20:18:23.391727'),(15,'certificates','0001_initial','2016-04-01 20:18:24.391163'),(16,'certificates','0002_data__certificatehtmlviewconfiguration_data','2016-04-01 20:18:24.414742'),(17,'certificates','0003_data__default_modes','2016-04-01 20:18:24.492249'),(18,'certificates','0004_certificategenerationhistory','2016-04-01 20:18:24.652676'),(19,'certificates','0005_auto_20151208_0801','2016-04-01 20:18:24.757556'),(20,'certificates','0006_certificatetemplateasset_asset_slug','2016-04-01 20:18:24.827868'),(21,'certificates','0007_certificateinvalidation','2016-04-01 20:18:24.971764'),(22,'badges','0001_initial','2016-04-01 20:18:25.444283'),(23,'badges','0002_data__migrate_assertions','2016-04-01 20:18:25.475063'),(24,'badges','0003_schema__add_event_configuration','2016-04-01 20:18:25.659050'),(25,'bookmarks','0001_initial','2016-04-01 20:18:26.125201'),(26,'branding','0001_initial','2016-04-01 20:18:26.369402'),(27,'bulk_email','0001_initial','2016-04-01 20:18:26.860654'),(28,'bulk_email','0002_data__load_course_email_template','2016-04-01 20:18:26.936967'),(29,'certificates','0008_schema__remove_badges','2016-04-01 20:18:27.201515'),(30,'commerce','0001_data__add_ecommerce_service_user','2016-04-01 20:18:27.232035'),(31,'commerce','0002_commerceconfiguration','2016-04-01 20:18:27.371235'),(32,'contentserver','0001_initial','2016-04-01 20:18:27.509042'),(33,'cors_csrf','0001_initial','2016-04-01 20:18:27.657156'),(34,'course_action_state','0001_initial','2016-04-01 20:18:28.027539'),(35,'course_groups','0001_initial','2016-04-01 20:18:29.212952'),(36,'course_modes','0001_initial','2016-04-01 20:18:29.390666'),(37,'course_modes','0002_coursemode_expiration_datetime_is_explicit','2016-04-01 20:18:29.499637'),(38,'course_modes','0003_auto_20151113_1443','2016-04-01 20:18:29.532551'),(39,'course_modes','0004_auto_20151113_1457','2016-04-01 20:18:29.691311'),(40,'course_modes','0005_auto_20151217_0958','2016-04-01 20:18:29.722828'),(41,'course_modes','0006_auto_20160208_1407','2016-04-01 20:18:29.853115'),(42,'course_overviews','0001_initial','2016-04-01 20:18:29.957246'),(43,'course_overviews','0002_add_course_catalog_fields','2016-04-01 20:18:30.234249'),(44,'course_overviews','0003_courseoverviewgeneratedhistory','2016-04-01 20:18:30.271266'),(45,'course_overviews','0004_courseoverview_org','2016-04-01 20:18:30.341930'),(46,'course_overviews','0005_delete_courseoverviewgeneratedhistory','2016-04-01 20:18:30.370650'),(47,'course_overviews','0006_courseoverviewimageset','2016-04-01 20:18:30.455129'),(48,'course_overviews','0007_courseoverviewimageconfig','2016-04-01 20:18:30.632587'),(49,'course_overviews','0008_remove_courseoverview_facebook_url','2016-04-01 20:18:30.642375'),(50,'course_overviews','0009_readd_facebook_url','2016-04-01 20:18:30.650323'),(51,'course_overviews','0010_auto_20160329_2317','2016-04-01 20:18:30.790081'),(52,'course_structures','0001_initial','2016-04-01 20:18:30.839934'),(53,'coursetalk','0001_initial','2016-04-01 20:18:31.015518'),(54,'courseware','0001_initial','2016-04-01 20:18:33.433778'),(55,'coursewarehistoryextended','0001_initial','2016-04-01 20:18:33.606210'),(56,'coursewarehistoryextended','0002_force_studentmodule_index','2016-04-01 20:18:33.766829'),(57,'credentials','0001_initial','2016-04-01 20:18:33.969527'),(58,'credit','0001_initial','2016-04-01 20:18:35.734177'),(59,'credit','0002_creditconfig','2016-04-01 20:18:35.977843'),(60,'dark_lang','0001_initial','2016-04-01 20:18:36.222423'),(61,'dark_lang','0002_data__enable_on_install','2016-04-01 20:18:36.258509'),(62,'default','0001_initial','2016-04-01 20:18:38.134179'),(63,'default','0002_add_related_name','2016-04-01 20:18:38.359118'),(64,'default','0003_alter_email_max_length','2016-04-01 20:18:38.434952'),(65,'django_comment_common','0001_initial','2016-04-01 20:18:39.010864'),(66,'django_notify','0001_initial','2016-04-01 20:18:40.016330'),(67,'django_openid_auth','0001_initial','2016-04-01 20:18:40.399500'),(68,'oauth2','0001_initial','2016-04-01 20:18:42.026061'),(69,'edx_oauth2_provider','0001_initial','2016-04-01 20:18:42.310181'),(70,'edx_proctoring','0001_initial','2016-04-01 20:18:47.069704'),(71,'edx_proctoring','0002_proctoredexamstudentattempt_is_status_acknowledged','2016-04-01 20:18:47.528512'),(72,'edx_proctoring','0003_auto_20160101_0525','2016-04-01 20:18:48.364095'),(73,'edx_proctoring','0004_auto_20160201_0523','2016-04-01 20:18:48.818095'),(74,'edxval','0001_initial','2016-04-01 20:18:49.663807'),(75,'edxval','0002_data__default_profiles','2016-04-01 20:18:49.709543'),(76,'embargo','0001_initial','2016-04-01 20:18:51.997586'),(77,'embargo','0002_data__add_countries','2016-04-01 20:18:52.555084'),(78,'external_auth','0001_initial','2016-04-01 20:18:53.268092'),(79,'lms_xblock','0001_initial','2016-04-01 20:18:53.622926'),(80,'sites','0001_initial','2016-04-01 20:18:53.684282'),(81,'microsite_configuration','0001_initial','2016-04-01 20:18:56.089882'),(82,'microsite_configuration','0002_auto_20160202_0228','2016-04-01 20:18:56.901590'),(83,'milestones','0001_initial','2016-04-01 20:18:58.087536'),(84,'milestones','0002_data__seed_relationship_types','2016-04-01 20:18:58.143417'),(85,'milestones','0003_coursecontentmilestone_requirements','2016-04-01 20:18:58.274037'),(86,'milestones','0004_auto_20151221_1445','2016-04-01 20:18:58.582836'),(87,'mobile_api','0001_initial','2016-04-01 20:18:59.055379'),(88,'notes','0001_initial','2016-04-01 20:18:59.680285'),(89,'oauth2_provider','0001_initial','2016-04-01 20:19:02.037555'),(90,'oauth2_provider','0002_08_updates','2016-04-01 20:19:03.771804'),(91,'oauth_provider','0001_initial','2016-04-01 20:19:06.029589'),(92,'organizations','0001_initial','2016-04-01 20:19:06.301290'),(93,'organizations','0002_auto_20151119_2048','2016-04-01 20:19:06.361983'),(94,'problem_builder','0001_initial','2016-04-01 20:19:06.569638'),(95,'problem_builder','0002_auto_20160121_1525','2016-04-01 20:19:07.402373'),(96,'programs','0001_initial','2016-04-01 20:19:07.997665'),(97,'programs','0002_programsapiconfig_cache_ttl','2016-04-01 20:19:08.450010'),(98,'programs','0003_auto_20151120_1613','2016-04-01 20:19:10.448765'),(99,'programs','0004_programsapiconfig_enable_certification','2016-04-01 20:19:11.015001'),(100,'programs','0005_programsapiconfig_max_retries','2016-04-01 20:19:11.626050'),(101,'programs','0006_programsapiconfig_xseries_ad_enabled','2016-04-01 20:19:12.205642'),(102,'rss_proxy','0001_initial','2016-04-01 20:19:12.280936'),(103,'self_paced','0001_initial','2016-04-01 20:19:12.861616'),(104,'sessions','0001_initial','2016-04-01 20:19:12.953118'),(105,'student','0001_initial','2016-04-01 20:19:29.057371'),(106,'shoppingcart','0001_initial','2016-04-01 20:19:44.118969'),(107,'shoppingcart','0002_auto_20151208_1034','2016-04-01 20:19:45.609155'),(108,'shoppingcart','0003_auto_20151217_0958','2016-04-01 20:19:47.138304'),(109,'site_configuration','0001_initial','2016-04-01 20:19:48.924517'),(110,'splash','0001_initial','2016-04-01 20:19:49.822908'),(111,'static_replace','0001_initial','2016-04-01 20:19:50.800016'),(112,'static_replace','0002_assetexcludedextensionsconfig','2016-04-01 20:19:52.958650'),(113,'status','0001_initial','2016-04-01 20:19:54.147937'),(114,'student','0002_auto_20151208_1034','2016-04-01 20:19:55.172470'),(115,'submissions','0001_initial','2016-04-01 20:19:56.124231'),(116,'submissions','0002_auto_20151119_0913','2016-04-01 20:19:56.337073'),(117,'submissions','0003_submission_status','2016-04-01 20:19:56.549082'),(118,'survey','0001_initial','2016-04-01 20:19:57.500164'),(119,'teams','0001_initial','2016-04-01 20:19:59.718889'),(120,'theming','0001_initial','2016-04-01 20:20:00.367449'),(121,'third_party_auth','0001_initial','2016-04-01 20:20:04.673025'),(122,'third_party_auth','0002_schema__provider_icon_image','2016-04-01 20:20:10.250436'),(123,'track','0001_initial','2016-04-01 20:20:10.347222'),(124,'user_api','0001_initial','2016-04-01 20:20:15.546635'),(125,'util','0001_initial','2016-04-01 20:20:16.427420'),(126,'util','0002_data__default_rate_limit_config','2016-04-01 20:20:16.493890'),(127,'verified_track_content','0001_initial','2016-04-01 20:20:16.578070'),(128,'verify_student','0001_initial','2016-04-01 20:20:26.474025'),(129,'verify_student','0002_auto_20151124_1024','2016-04-01 20:20:27.517337'),(130,'verify_student','0003_auto_20151113_1443','2016-04-01 20:20:28.462197'),(131,'wiki','0001_initial','2016-04-01 20:20:55.518932'),(132,'wiki','0002_remove_article_subscription','2016-04-01 20:20:55.595581'),(133,'workflow','0001_initial','2016-04-01 20:20:57.382153'),(134,'xblock_django','0001_initial','2016-04-01 20:20:58.083122'),(135,'xblock_django','0002_auto_20160204_0809','2016-04-01 20:20:58.772282'),(136,'contentstore','0001_initial','2016-04-01 20:21:27.559015'),(137,'course_creators','0001_initial','2016-04-01 20:21:27.654969'),(138,'xblock_config','0001_initial','2016-04-01 20:21:27.977686'); +INSERT INTO `django_migrations` VALUES (1,'contenttypes','0001_initial','2016-05-10 17:00:31.379243'),(2,'auth','0001_initial','2016-05-10 17:00:31.549545'),(3,'admin','0001_initial','2016-05-10 17:00:31.599232'),(4,'sites','0001_initial','2016-05-10 17:00:31.616627'),(5,'contenttypes','0002_remove_content_type_name','2016-05-10 17:00:31.700684'),(6,'api_admin','0001_initial','2016-05-10 17:00:31.792676'),(7,'api_admin','0002_auto_20160325_1604','2016-05-10 17:00:31.811254'),(8,'api_admin','0003_auto_20160404_1618','2016-05-10 17:00:32.061760'),(9,'api_admin','0004_auto_20160412_1506','2016-05-10 17:00:32.252856'),(10,'api_admin','0005_auto_20160414_1232','2016-05-10 17:00:32.309129'),(11,'api_admin','0006_catalog','2016-05-10 17:00:32.320389'),(12,'assessment','0001_initial','2016-05-10 17:00:34.026390'),(13,'assessment','0002_staffworkflow','2016-05-10 17:00:34.091613'),(14,'auth','0002_alter_permission_name_max_length','2016-05-10 17:00:34.153498'),(15,'auth','0003_alter_user_email_max_length','2016-05-10 17:00:34.215502'),(16,'auth','0004_alter_user_username_opts','2016-05-10 17:00:34.256211'),(17,'auth','0005_alter_user_last_login_null','2016-05-10 17:00:34.321706'),(18,'auth','0006_require_contenttypes_0002','2016-05-10 17:00:34.331280'),(19,'instructor_task','0001_initial','2016-05-10 17:00:34.442243'),(20,'certificates','0001_initial','2016-05-10 17:00:35.093959'),(21,'certificates','0002_data__certificatehtmlviewconfiguration_data','2016-05-10 17:00:35.110472'),(22,'certificates','0003_data__default_modes','2016-05-10 17:00:35.149486'),(23,'certificates','0004_certificategenerationhistory','2016-05-10 17:00:35.234078'),(24,'certificates','0005_auto_20151208_0801','2016-05-10 17:00:35.290297'),(25,'certificates','0006_certificatetemplateasset_asset_slug','2016-05-10 17:00:35.316687'),(26,'certificates','0007_certificateinvalidation','2016-05-10 17:00:35.403891'),(27,'badges','0001_initial','2016-05-10 17:00:35.626591'),(28,'badges','0002_data__migrate_assertions','2016-05-10 17:00:35.648673'),(29,'badges','0003_schema__add_event_configuration','2016-05-10 17:00:35.801432'),(30,'bookmarks','0001_initial','2016-05-10 17:00:36.093641'),(31,'branding','0001_initial','2016-05-10 17:00:36.285426'),(32,'bulk_email','0001_initial','2016-05-10 17:00:36.626726'),(33,'bulk_email','0002_data__load_course_email_template','2016-05-10 17:00:36.678245'),(34,'bulk_email','0003_config_model_feature_flag','2016-05-10 17:00:36.786808'),(35,'verified_track_content','0001_initial','2016-05-10 17:00:36.814064'),(36,'course_overviews','0001_initial','2016-05-10 17:00:36.871326'),(37,'course_overviews','0002_add_course_catalog_fields','2016-05-10 17:00:37.015124'),(38,'course_overviews','0003_courseoverviewgeneratedhistory','2016-05-10 17:00:37.039363'),(39,'course_overviews','0004_courseoverview_org','2016-05-10 17:00:37.071830'),(40,'course_overviews','0005_delete_courseoverviewgeneratedhistory','2016-05-10 17:00:37.091358'),(41,'course_overviews','0006_courseoverviewimageset','2016-05-10 17:00:37.158817'),(42,'course_overviews','0007_courseoverviewimageconfig','2016-05-10 17:00:37.269744'),(43,'course_overviews','0008_remove_courseoverview_facebook_url','2016-05-10 17:00:37.277653'),(44,'course_overviews','0009_readd_facebook_url','2016-05-10 17:00:37.283133'),(45,'course_overviews','0010_auto_20160329_2317','2016-05-10 17:00:37.359198'),(46,'ccx','0001_initial','2016-05-10 17:00:37.741085'),(47,'ccx','0002_customcourseforedx_structure_json','2016-05-10 17:00:37.836491'),(48,'ccx','0003_add_master_course_staff_in_ccx','2016-05-10 17:00:37.852217'),(49,'ccxcon','0001_initial_ccxcon_model','2016-05-10 17:00:37.883441'),(50,'ccxcon','0002_auto_20160325_0407','2016-05-10 17:00:37.900676'),(51,'certificates','0008_schema__remove_badges','2016-05-10 17:00:38.115158'),(52,'commerce','0001_data__add_ecommerce_service_user','2016-05-10 17:00:38.137945'),(53,'commerce','0002_commerceconfiguration','2016-05-10 17:00:38.246836'),(54,'commerce','0003_auto_20160329_0709','2016-05-10 17:00:38.325799'),(55,'contentserver','0001_initial','2016-05-10 17:00:38.445320'),(56,'contentserver','0002_cdnuseragentsconfig','2016-05-10 17:00:38.557615'),(57,'cors_csrf','0001_initial','2016-05-10 17:00:38.676447'),(58,'course_action_state','0001_initial','2016-05-10 17:00:38.914052'),(59,'course_groups','0001_initial','2016-05-10 17:00:39.964529'),(60,'course_modes','0001_initial','2016-05-10 17:00:40.046580'),(61,'course_modes','0002_coursemode_expiration_datetime_is_explicit','2016-05-10 17:00:40.078030'),(62,'course_modes','0003_auto_20151113_1443','2016-05-10 17:00:40.105616'),(63,'course_modes','0004_auto_20151113_1457','2016-05-10 17:00:40.263187'),(64,'course_modes','0005_auto_20151217_0958','2016-05-10 17:00:40.286519'),(65,'course_modes','0006_auto_20160208_1407','2016-05-10 17:00:42.111363'),(66,'course_structures','0001_initial','2016-05-10 17:00:42.142570'),(67,'coursetalk','0001_initial','2016-05-10 17:00:42.257500'),(68,'coursetalk','0002_auto_20160325_0631','2016-05-10 17:00:42.355814'),(69,'courseware','0001_initial','2016-05-10 17:00:43.907231'),(70,'coursewarehistoryextended','0001_initial','2016-05-10 17:00:44.052676'),(71,'coursewarehistoryextended','0002_force_studentmodule_index','2016-05-10 17:00:44.175581'),(72,'credentials','0001_initial','2016-05-10 17:00:44.318938'),(73,'credentials','0002_auto_20160325_0631','2016-05-10 17:00:44.447064'),(74,'credit','0001_initial','2016-05-10 17:00:45.826731'),(75,'credit','0002_creditconfig','2016-05-10 17:00:46.059131'),(76,'dark_lang','0001_initial','2016-05-10 17:00:46.281698'),(77,'dark_lang','0002_data__enable_on_install','2016-05-10 17:00:46.306748'),(78,'default','0001_initial','2016-05-10 17:00:46.826753'),(79,'default','0002_add_related_name','2016-05-10 17:00:47.053431'),(80,'default','0003_alter_email_max_length','2016-05-10 17:00:47.088211'),(81,'django_comment_common','0001_initial','2016-05-10 17:00:47.563332'),(82,'django_notify','0001_initial','2016-05-10 17:00:48.515785'),(83,'django_openid_auth','0001_initial','2016-05-10 17:00:48.811728'),(84,'oauth2','0001_initial','2016-05-10 17:00:50.182185'),(85,'edx_oauth2_provider','0001_initial','2016-05-10 17:00:50.524675'),(86,'edx_proctoring','0001_initial','2016-05-10 17:00:55.228084'),(87,'edx_proctoring','0002_proctoredexamstudentattempt_is_status_acknowledged','2016-05-10 17:00:55.506696'),(88,'edx_proctoring','0003_auto_20160101_0525','2016-05-10 17:00:56.030334'),(89,'edx_proctoring','0004_auto_20160201_0523','2016-05-10 17:00:56.320666'),(90,'edx_proctoring','0005_proctoredexam_hide_after_due','2016-05-10 17:00:56.625470'),(91,'edxval','0001_initial','2016-05-10 17:00:57.062813'),(92,'edxval','0002_data__default_profiles','2016-05-10 17:00:57.098856'),(93,'embargo','0001_initial','2016-05-10 17:00:58.224307'),(94,'embargo','0002_data__add_countries','2016-05-10 17:00:58.593312'),(95,'external_auth','0001_initial','2016-05-10 17:00:59.425828'),(96,'lms_xblock','0001_initial','2016-05-10 17:00:59.855398'),(97,'microsite_configuration','0001_initial','2016-05-10 17:01:05.399624'),(98,'microsite_configuration','0002_auto_20160202_0228','2016-05-10 17:01:06.068675'),(99,'milestones','0001_initial','2016-05-10 17:01:06.761642'),(100,'milestones','0002_data__seed_relationship_types','2016-05-10 17:01:06.801264'),(101,'milestones','0003_coursecontentmilestone_requirements','2016-05-10 17:01:06.865837'),(102,'milestones','0004_auto_20151221_1445','2016-05-10 17:01:07.056675'),(103,'mobile_api','0001_initial','2016-05-10 17:01:07.397680'),(104,'mobile_api','0002_auto_20160406_0904','2016-05-10 17:01:07.474369'),(105,'notes','0001_initial','2016-05-10 17:01:07.837571'),(106,'oauth2','0002_auto_20160404_0813','2016-05-10 17:01:09.037647'),(107,'oauth2_provider','0001_initial','2016-05-10 17:01:11.061230'),(108,'oauth2_provider','0002_08_updates','2016-05-10 17:01:12.619002'),(109,'oauth_provider','0001_initial','2016-05-10 17:01:13.831330'),(110,'organizations','0001_initial','2016-05-10 17:01:14.019845'),(111,'programs','0001_initial','2016-05-10 17:01:14.655879'),(112,'programs','0002_programsapiconfig_cache_ttl','2016-05-10 17:01:15.249910'),(113,'programs','0003_auto_20151120_1613','2016-05-10 17:01:18.572556'),(114,'programs','0004_programsapiconfig_enable_certification','2016-05-10 17:01:18.950503'),(115,'programs','0005_programsapiconfig_max_retries','2016-05-10 17:01:19.448741'),(116,'programs','0006_programsapiconfig_xseries_ad_enabled','2016-05-10 17:01:19.960404'),(117,'programs','0007_programsapiconfig_program_listing_enabled','2016-05-10 17:01:20.545835'),(118,'rss_proxy','0001_initial','2016-05-10 17:01:20.599669'),(119,'self_paced','0001_initial','2016-05-10 17:01:21.154858'),(120,'sessions','0001_initial','2016-05-10 17:01:21.219383'),(121,'student','0001_initial','2016-05-10 17:01:36.802423'),(122,'shoppingcart','0001_initial','2016-05-10 17:01:51.757102'),(123,'shoppingcart','0002_auto_20151208_1034','2016-05-10 17:01:52.830422'),(124,'shoppingcart','0003_auto_20151217_0958','2016-05-10 17:01:54.178828'),(125,'site_configuration','0001_initial','2016-05-10 17:01:55.747993'),(126,'splash','0001_initial','2016-05-10 17:01:56.627703'),(127,'static_replace','0001_initial','2016-05-10 17:01:57.404354'),(128,'static_replace','0002_assetexcludedextensionsconfig','2016-05-10 17:01:58.136147'),(129,'status','0001_initial','2016-05-10 17:01:59.671839'),(130,'student','0002_auto_20151208_1034','2016-05-10 17:02:01.503769'),(131,'submissions','0001_initial','2016-05-10 17:02:02.049811'),(132,'submissions','0002_auto_20151119_0913','2016-05-10 17:02:02.232425'),(133,'submissions','0003_submission_status','2016-05-10 17:02:02.326210'),(134,'survey','0001_initial','2016-05-10 17:02:04.366524'),(135,'teams','0001_initial','2016-05-10 17:02:05.684727'),(136,'third_party_auth','0001_initial','2016-05-10 17:02:09.301445'),(137,'third_party_auth','0002_schema__provider_icon_image','2016-05-10 17:02:14.697989'),(138,'track','0001_initial','2016-05-10 17:02:14.766542'),(139,'user_api','0001_initial','2016-05-10 17:02:20.942944'),(140,'util','0001_initial','2016-05-10 17:02:21.590529'),(141,'util','0002_data__default_rate_limit_config','2016-05-10 17:02:21.645521'),(142,'verified_track_content','0002_verifiedtrackcohortedcourse_verified_cohort_name','2016-05-10 17:02:21.718831'),(143,'verify_student','0001_initial','2016-05-10 17:02:30.291380'),(144,'verify_student','0002_auto_20151124_1024','2016-05-10 17:02:31.358080'),(145,'verify_student','0003_auto_20151113_1443','2016-05-10 17:02:32.380795'),(146,'wiki','0001_initial','2016-05-10 17:02:57.515269'),(147,'wiki','0002_remove_article_subscription','2016-05-10 17:02:57.568635'),(148,'workflow','0001_initial','2016-05-10 17:02:57.786047'),(149,'xblock_django','0001_initial','2016-05-10 17:02:58.731321'),(150,'xblock_django','0002_auto_20160204_0809','2016-05-10 17:02:59.619281'),(151,'contentstore','0001_initial','2016-05-10 17:03:23.124342'),(152,'course_creators','0001_initial','2016-05-10 17:03:23.180683'),(153,'tagging','0001_initial','2016-05-10 17:03:23.288675'),(154,'xblock_config','0001_initial','2016-05-10 17:03:23.547189'); /*!40000 ALTER TABLE `django_migrations` ENABLE KEYS */; UNLOCK TABLES; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; @@ -34,4 +34,4 @@ UNLOCK TABLES; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; --- Dump completed on 2016-04-01 20:21:34 +-- Dump completed on 2016-05-10 17:03:28 diff --git a/common/test/db_cache/bok_choy_migrations_data_student_module_history.sql b/common/test/db_cache/bok_choy_migrations_data_student_module_history.sql index b7a43c07b4..1d85e5a16c 100644 --- a/common/test/db_cache/bok_choy_migrations_data_student_module_history.sql +++ b/common/test/db_cache/bok_choy_migrations_data_student_module_history.sql @@ -1,8 +1,8 @@ --- MySQL dump 10.13 Distrib 5.6.24, for debian-linux-gnu (x86_64) +-- MySQL dump 10.13 Distrib 5.6.30, for Linux (x86_64) -- -- Host: localhost Database: student_module_history_test -- ------------------------------------------------------ --- Server version 5.6.24-2+deb.sury.org~precise+2 +-- Server version 5.6.30 /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; @@ -21,7 +21,7 @@ LOCK TABLES `django_migrations` WRITE; /*!40000 ALTER TABLE `django_migrations` DISABLE KEYS */; -INSERT INTO `django_migrations` VALUES (1,'contenttypes','0001_initial','2016-04-01 20:23:25.257657'),(2,'auth','0001_initial','2016-04-01 20:23:25.328855'),(3,'admin','0001_initial','2016-04-01 20:23:25.375182'),(4,'contenttypes','0002_remove_content_type_name','2016-04-01 20:23:25.495343'),(5,'api_admin','0001_initial','2016-04-01 20:23:25.555979'),(6,'api_admin','0002_auto_20160325_1604','2016-04-01 20:23:25.580028'),(7,'assessment','0001_initial','2016-04-01 20:23:27.895489'),(8,'assessment','0002_staffworkflow','2016-04-01 20:23:27.911631'),(9,'auth','0002_alter_permission_name_max_length','2016-04-01 20:23:27.949865'),(10,'auth','0003_alter_user_email_max_length','2016-04-01 20:23:27.983967'),(11,'auth','0004_alter_user_username_opts','2016-04-01 20:23:28.019774'),(12,'auth','0005_alter_user_last_login_null','2016-04-01 20:23:28.054434'),(13,'auth','0006_require_contenttypes_0002','2016-04-01 20:23:28.059572'),(14,'instructor_task','0001_initial','2016-04-01 20:23:28.101547'),(15,'certificates','0001_initial','2016-04-01 20:23:28.526500'),(16,'certificates','0002_data__certificatehtmlviewconfiguration_data','2016-04-01 20:23:28.543408'),(17,'certificates','0003_data__default_modes','2016-04-01 20:23:28.557636'),(18,'certificates','0004_certificategenerationhistory','2016-04-01 20:23:28.608769'),(19,'certificates','0005_auto_20151208_0801','2016-04-01 20:23:28.662964'),(20,'certificates','0006_certificatetemplateasset_asset_slug','2016-04-01 20:23:28.681093'),(21,'certificates','0007_certificateinvalidation','2016-04-01 20:23:28.739316'),(22,'badges','0001_initial','2016-04-01 20:23:28.897350'),(23,'badges','0002_data__migrate_assertions','2016-04-01 20:23:28.914542'),(24,'badges','0003_schema__add_event_configuration','2016-04-01 20:23:29.057318'),(25,'bookmarks','0001_initial','2016-04-01 20:23:29.359707'),(26,'branding','0001_initial','2016-04-01 20:23:29.548719'),(27,'bulk_email','0001_initial','2016-04-01 20:23:29.859921'),(28,'bulk_email','0002_data__load_course_email_template','2016-04-01 20:23:29.879338'),(29,'certificates','0008_schema__remove_badges','2016-04-01 20:23:30.093163'),(30,'commerce','0001_data__add_ecommerce_service_user','2016-04-01 20:23:30.111885'),(31,'commerce','0002_commerceconfiguration','2016-04-01 20:23:30.195573'),(32,'contentserver','0001_initial','2016-04-01 20:23:30.284902'),(33,'cors_csrf','0001_initial','2016-04-01 20:23:30.382067'),(34,'course_action_state','0001_initial','2016-04-01 20:23:30.567099'),(35,'course_groups','0001_initial','2016-04-01 20:23:31.310764'),(36,'course_modes','0001_initial','2016-04-01 20:23:31.367748'),(37,'course_modes','0002_coursemode_expiration_datetime_is_explicit','2016-04-01 20:23:31.390935'),(38,'course_modes','0003_auto_20151113_1443','2016-04-01 20:23:31.414987'),(39,'course_modes','0004_auto_20151113_1457','2016-04-01 20:23:31.524740'),(40,'course_modes','0005_auto_20151217_0958','2016-04-01 20:23:31.548824'),(41,'course_modes','0006_auto_20160208_1407','2016-04-01 20:23:31.661634'),(42,'course_overviews','0001_initial','2016-04-01 20:23:31.704145'),(43,'course_overviews','0002_add_course_catalog_fields','2016-04-01 20:23:31.825399'),(44,'course_overviews','0003_courseoverviewgeneratedhistory','2016-04-01 20:23:31.846457'),(45,'course_overviews','0004_courseoverview_org','2016-04-01 20:23:31.873351'),(46,'course_overviews','0005_delete_courseoverviewgeneratedhistory','2016-04-01 20:23:31.894080'),(47,'course_overviews','0006_courseoverviewimageset','2016-04-01 20:23:31.928057'),(48,'course_overviews','0007_courseoverviewimageconfig','2016-04-01 20:23:32.058242'),(49,'course_overviews','0008_remove_courseoverview_facebook_url','2016-04-01 20:23:32.061633'),(50,'course_overviews','0009_readd_facebook_url','2016-04-01 20:23:32.092127'),(51,'course_overviews','0010_auto_20160329_2317','2016-04-01 20:23:32.151783'),(52,'course_structures','0001_initial','2016-04-01 20:23:32.172191'),(53,'coursetalk','0001_initial','2016-04-01 20:23:32.290450'),(54,'courseware','0001_initial','2016-04-01 20:23:33.802403'),(55,'coursewarehistoryextended','0001_initial','2016-04-01 20:23:34.029183'),(56,'coursewarehistoryextended','0002_force_studentmodule_index','2016-04-01 20:23:34.225580'),(57,'credentials','0001_initial','2016-04-01 20:23:34.393557'),(58,'credit','0001_initial','2016-04-01 20:23:35.843537'),(59,'credit','0002_creditconfig','2016-04-01 20:23:36.073513'),(60,'dark_lang','0001_initial','2016-04-01 20:23:36.266659'),(61,'dark_lang','0002_data__enable_on_install','2016-04-01 20:23:36.291959'),(62,'default','0001_initial','2016-04-01 20:23:37.996810'),(63,'default','0002_add_related_name','2016-04-01 20:23:38.159637'),(64,'default','0003_alter_email_max_length','2016-04-01 20:23:38.194980'),(65,'django_comment_common','0001_initial','2016-04-01 20:23:38.587489'),(66,'django_notify','0001_initial','2016-04-01 20:23:39.447548'),(67,'django_openid_auth','0001_initial','2016-04-01 20:23:39.730879'),(68,'oauth2','0001_initial','2016-04-01 20:23:41.108025'),(69,'edx_oauth2_provider','0001_initial','2016-04-01 20:23:41.375305'),(70,'edx_proctoring','0001_initial','2016-04-01 20:23:45.451478'),(71,'edx_proctoring','0002_proctoredexamstudentattempt_is_status_acknowledged','2016-04-01 20:23:45.894479'),(72,'edx_proctoring','0003_auto_20160101_0525','2016-04-01 20:23:46.873218'),(73,'edx_proctoring','0004_auto_20160201_0523','2016-04-01 20:23:47.359158'),(74,'edxval','0001_initial','2016-04-01 20:23:47.725762'),(75,'edxval','0002_data__default_profiles','2016-04-01 20:23:47.760467'),(76,'embargo','0001_initial','2016-04-01 20:23:49.787639'),(77,'embargo','0002_data__add_countries','2016-04-01 20:23:50.063932'),(78,'external_auth','0001_initial','2016-04-01 20:23:50.643681'),(79,'lms_xblock','0001_initial','2016-04-01 20:23:50.939454'),(80,'sites','0001_initial','2016-04-01 20:23:50.977028'),(81,'microsite_configuration','0001_initial','2016-04-01 20:23:52.861572'),(82,'microsite_configuration','0002_auto_20160202_0228','2016-04-01 20:23:53.732340'),(83,'milestones','0001_initial','2016-04-01 20:23:54.394312'),(84,'milestones','0002_data__seed_relationship_types','2016-04-01 20:23:54.444925'),(85,'milestones','0003_coursecontentmilestone_requirements','2016-04-01 20:23:54.500542'),(86,'milestones','0004_auto_20151221_1445','2016-04-01 20:23:54.743448'),(87,'mobile_api','0001_initial','2016-04-01 20:23:55.208358'),(88,'notes','0001_initial','2016-04-01 20:23:55.665630'),(89,'oauth2_provider','0001_initial','2016-04-01 20:23:57.596213'),(90,'oauth2_provider','0002_08_updates','2016-04-01 20:24:00.192133'),(91,'oauth_provider','0001_initial','2016-04-01 20:24:00.980840'),(92,'organizations','0001_initial','2016-04-01 20:24:01.105830'),(93,'organizations','0002_auto_20151119_2048','2016-04-01 20:24:01.147190'),(94,'problem_builder','0001_initial','2016-04-01 20:24:01.223166'),(95,'problem_builder','0002_auto_20160121_1525','2016-04-01 20:24:01.951771'),(96,'programs','0001_initial','2016-04-01 20:24:02.393154'),(97,'programs','0002_programsapiconfig_cache_ttl','2016-04-01 20:24:02.855609'),(98,'programs','0003_auto_20151120_1613','2016-04-01 20:24:04.915517'),(99,'programs','0004_programsapiconfig_enable_certification','2016-04-01 20:24:05.474292'),(100,'programs','0005_programsapiconfig_max_retries','2016-04-01 20:24:06.011275'),(101,'programs','0006_programsapiconfig_xseries_ad_enabled','2016-04-01 20:24:06.559753'),(102,'rss_proxy','0001_initial','2016-04-01 20:24:06.604771'),(103,'self_paced','0001_initial','2016-04-01 20:24:07.155964'),(104,'sessions','0001_initial','2016-04-01 20:24:07.199408'),(105,'student','0001_initial','2016-04-01 20:24:22.541699'),(106,'shoppingcart','0001_initial','2016-04-01 20:24:36.960350'),(107,'shoppingcart','0002_auto_20151208_1034','2016-04-01 20:24:38.681722'),(108,'shoppingcart','0003_auto_20151217_0958','2016-04-01 20:24:40.418352'),(109,'site_configuration','0001_initial','2016-04-01 20:24:42.266613'),(110,'splash','0001_initial','2016-04-01 20:24:43.078347'),(111,'static_replace','0001_initial','2016-04-01 20:24:45.053501'),(112,'static_replace','0002_assetexcludedextensionsconfig','2016-04-01 20:24:45.524460'),(113,'status','0001_initial','2016-04-01 20:24:46.580484'),(114,'student','0002_auto_20151208_1034','2016-04-01 20:24:47.676332'),(115,'submissions','0001_initial','2016-04-01 20:24:48.119931'),(116,'submissions','0002_auto_20151119_0913','2016-04-01 20:24:48.240737'),(117,'submissions','0003_submission_status','2016-04-01 20:24:48.304955'),(118,'survey','0001_initial','2016-04-01 20:24:49.047197'),(119,'teams','0001_initial','2016-04-01 20:24:51.063444'),(120,'theming','0001_initial','2016-04-01 20:24:51.707545'),(121,'third_party_auth','0001_initial','2016-04-01 20:24:57.000999'),(122,'third_party_auth','0002_schema__provider_icon_image','2016-04-01 20:25:01.027765'),(123,'track','0001_initial','2016-04-01 20:25:01.087377'),(124,'user_api','0001_initial','2016-04-01 20:25:06.804588'),(125,'util','0001_initial','2016-04-01 20:25:07.738916'),(126,'util','0002_data__default_rate_limit_config','2016-04-01 20:25:07.790010'),(127,'verified_track_content','0001_initial','2016-04-01 20:25:07.837950'),(128,'verify_student','0001_initial','2016-04-01 20:25:18.742039'),(129,'verify_student','0002_auto_20151124_1024','2016-04-01 20:25:19.744637'),(130,'verify_student','0003_auto_20151113_1443','2016-04-01 20:25:20.777804'),(131,'wiki','0001_initial','2016-04-01 20:25:46.581571'),(132,'wiki','0002_remove_article_subscription','2016-04-01 20:25:46.646359'),(133,'workflow','0001_initial','2016-04-01 20:25:46.841872'),(134,'xblock_django','0001_initial','2016-04-01 20:25:47.499764'),(135,'xblock_django','0002_auto_20160204_0809','2016-04-01 20:25:48.147525'),(136,'contentstore','0001_initial','2016-04-01 20:26:15.367178'),(137,'course_creators','0001_initial','2016-04-01 20:26:15.407639'),(138,'xblock_config','0001_initial','2016-04-01 20:26:15.703805'); +INSERT INTO `django_migrations` VALUES (1,'contenttypes','0001_initial','2016-05-10 17:05:12.724026'),(2,'auth','0001_initial','2016-05-10 17:05:12.762446'),(3,'admin','0001_initial','2016-05-10 17:05:12.783052'),(4,'sites','0001_initial','2016-05-10 17:05:12.792595'),(5,'contenttypes','0002_remove_content_type_name','2016-05-10 17:05:12.847299'),(6,'api_admin','0001_initial','2016-05-10 17:05:12.895161'),(7,'api_admin','0002_auto_20160325_1604','2016-05-10 17:05:12.912727'),(8,'api_admin','0003_auto_20160404_1618','2016-05-10 17:05:13.053507'),(9,'api_admin','0004_auto_20160412_1506','2016-05-10 17:05:13.165116'),(10,'api_admin','0005_auto_20160414_1232','2016-05-10 17:05:13.197301'),(11,'api_admin','0006_catalog','2016-05-10 17:05:13.210993'),(12,'assessment','0001_initial','2016-05-10 17:05:13.913473'),(13,'assessment','0002_staffworkflow','2016-05-10 17:05:13.925333'),(14,'auth','0002_alter_permission_name_max_length','2016-05-10 17:05:13.957002'),(15,'auth','0003_alter_user_email_max_length','2016-05-10 17:05:13.984032'),(16,'auth','0004_alter_user_username_opts','2016-05-10 17:05:14.015488'),(17,'auth','0005_alter_user_last_login_null','2016-05-10 17:05:14.044731'),(18,'auth','0006_require_contenttypes_0002','2016-05-10 17:05:14.047361'),(19,'instructor_task','0001_initial','2016-05-10 17:05:14.076586'),(20,'certificates','0001_initial','2016-05-10 17:05:14.401640'),(21,'certificates','0002_data__certificatehtmlviewconfiguration_data','2016-05-10 17:05:14.413374'),(22,'certificates','0003_data__default_modes','2016-05-10 17:05:14.423828'),(23,'certificates','0004_certificategenerationhistory','2016-05-10 17:05:14.467897'),(24,'certificates','0005_auto_20151208_0801','2016-05-10 17:05:14.514553'),(25,'certificates','0006_certificatetemplateasset_asset_slug','2016-05-10 17:05:14.526905'),(26,'certificates','0007_certificateinvalidation','2016-05-10 17:05:14.580725'),(27,'badges','0001_initial','2016-05-10 17:05:14.681013'),(28,'badges','0002_data__migrate_assertions','2016-05-10 17:05:14.692506'),(29,'badges','0003_schema__add_event_configuration','2016-05-10 17:05:14.795172'),(30,'bookmarks','0001_initial','2016-05-10 17:05:14.986713'),(31,'branding','0001_initial','2016-05-10 17:05:15.133105'),(32,'bulk_email','0001_initial','2016-05-10 17:05:15.350258'),(33,'bulk_email','0002_data__load_course_email_template','2016-05-10 17:05:15.361001'),(34,'bulk_email','0003_config_model_feature_flag','2016-05-10 17:05:15.435202'),(35,'verified_track_content','0001_initial','2016-05-10 17:05:15.452630'),(36,'course_overviews','0001_initial','2016-05-10 17:05:15.487701'),(37,'course_overviews','0002_add_course_catalog_fields','2016-05-10 17:05:15.579327'),(38,'course_overviews','0003_courseoverviewgeneratedhistory','2016-05-10 17:05:15.595397'),(39,'course_overviews','0004_courseoverview_org','2016-05-10 17:05:15.621044'),(40,'course_overviews','0005_delete_courseoverviewgeneratedhistory','2016-05-10 17:05:15.633505'),(41,'course_overviews','0006_courseoverviewimageset','2016-05-10 17:05:15.654627'),(42,'course_overviews','0007_courseoverviewimageconfig','2016-05-10 17:05:15.737562'),(43,'course_overviews','0008_remove_courseoverview_facebook_url','2016-05-10 17:05:15.740497'),(44,'course_overviews','0009_readd_facebook_url','2016-05-10 17:05:15.761893'),(45,'course_overviews','0010_auto_20160329_2317','2016-05-10 17:05:15.804187'),(46,'ccx','0001_initial','2016-05-10 17:05:16.077070'),(47,'ccx','0002_customcourseforedx_structure_json','2016-05-10 17:05:16.167665'),(48,'ccx','0003_add_master_course_staff_in_ccx','2016-05-10 17:05:16.183301'),(49,'ccxcon','0001_initial_ccxcon_model','2016-05-10 17:05:16.198246'),(50,'ccxcon','0002_auto_20160325_0407','2016-05-10 17:05:16.216986'),(51,'certificates','0008_schema__remove_badges','2016-05-10 17:05:16.408597'),(52,'commerce','0001_data__add_ecommerce_service_user','2016-05-10 17:05:16.434220'),(53,'commerce','0002_commerceconfiguration','2016-05-10 17:05:16.539185'),(54,'commerce','0003_auto_20160329_0709','2016-05-10 17:05:16.638626'),(55,'contentserver','0001_initial','2016-05-10 17:05:16.736919'),(56,'contentserver','0002_cdnuseragentsconfig','2016-05-10 17:05:16.833884'),(57,'cors_csrf','0001_initial','2016-05-10 17:05:16.935477'),(58,'course_action_state','0001_initial','2016-05-10 17:05:17.156265'),(59,'course_groups','0001_initial','2016-05-10 17:05:17.894875'),(60,'course_modes','0001_initial','2016-05-10 17:05:17.941030'),(61,'course_modes','0002_coursemode_expiration_datetime_is_explicit','2016-05-10 17:05:17.959535'),(62,'course_modes','0003_auto_20151113_1443','2016-05-10 17:05:17.977640'),(63,'course_modes','0004_auto_20151113_1457','2016-05-10 17:05:18.094732'),(64,'course_modes','0005_auto_20151217_0958','2016-05-10 17:05:19.567635'),(65,'course_modes','0006_auto_20160208_1407','2016-05-10 17:05:19.667839'),(66,'course_structures','0001_initial','2016-05-10 17:05:19.687608'),(67,'coursetalk','0001_initial','2016-05-10 17:05:19.786259'),(68,'coursetalk','0002_auto_20160325_0631','2016-05-10 17:05:19.881583'),(69,'courseware','0001_initial','2016-05-10 17:05:21.125428'),(70,'coursewarehistoryextended','0001_initial','2016-05-10 17:05:21.291797'),(71,'coursewarehistoryextended','0002_force_studentmodule_index','2016-05-10 17:05:21.433089'),(72,'credentials','0001_initial','2016-05-10 17:05:21.575516'),(73,'credentials','0002_auto_20160325_0631','2016-05-10 17:05:21.723097'),(74,'credit','0001_initial','2016-05-10 17:05:22.896323'),(75,'credit','0002_creditconfig','2016-05-10 17:05:23.057158'),(76,'dark_lang','0001_initial','2016-05-10 17:05:23.223156'),(77,'dark_lang','0002_data__enable_on_install','2016-05-10 17:05:23.243110'),(78,'default','0001_initial','2016-05-10 17:05:23.673267'),(79,'default','0002_add_related_name','2016-05-10 17:05:23.851663'),(80,'default','0003_alter_email_max_length','2016-05-10 17:05:23.870858'),(81,'django_comment_common','0001_initial','2016-05-10 17:05:24.240737'),(82,'django_notify','0001_initial','2016-05-10 17:05:25.027611'),(83,'django_openid_auth','0001_initial','2016-05-10 17:05:25.265068'),(84,'oauth2','0001_initial','2016-05-10 17:05:26.621679'),(85,'edx_oauth2_provider','0001_initial','2016-05-10 17:05:26.965646'),(86,'edx_proctoring','0001_initial','2016-05-10 17:05:31.463721'),(87,'edx_proctoring','0002_proctoredexamstudentattempt_is_status_acknowledged','2016-05-10 17:05:31.762544'),(88,'edx_proctoring','0003_auto_20160101_0525','2016-05-10 17:05:32.325092'),(89,'edx_proctoring','0004_auto_20160201_0523','2016-05-10 17:05:32.623524'),(90,'edx_proctoring','0005_proctoredexam_hide_after_due','2016-05-10 17:05:32.967470'),(91,'edxval','0001_initial','2016-05-10 17:05:33.256215'),(92,'edxval','0002_data__default_profiles','2016-05-10 17:05:33.279787'),(93,'embargo','0001_initial','2016-05-10 17:05:34.336626'),(94,'embargo','0002_data__add_countries','2016-05-10 17:05:34.514603'),(95,'external_auth','0001_initial','2016-05-10 17:05:35.304962'),(96,'lms_xblock','0001_initial','2016-05-10 17:05:35.709195'),(97,'microsite_configuration','0001_initial','2016-05-10 17:05:40.605693'),(98,'microsite_configuration','0002_auto_20160202_0228','2016-05-10 17:05:41.136579'),(99,'milestones','0001_initial','2016-05-10 17:05:41.602538'),(100,'milestones','0002_data__seed_relationship_types','2016-05-10 17:05:41.629716'),(101,'milestones','0003_coursecontentmilestone_requirements','2016-05-10 17:05:41.669518'),(102,'milestones','0004_auto_20151221_1445','2016-05-10 17:05:41.825815'),(103,'mobile_api','0001_initial','2016-05-10 17:05:42.136856'),(104,'mobile_api','0002_auto_20160406_0904','2016-05-10 17:05:42.193078'),(105,'notes','0001_initial','2016-05-10 17:05:42.487327'),(106,'oauth2','0002_auto_20160404_0813','2016-05-10 17:05:43.513716'),(107,'oauth2_provider','0001_initial','2016-05-10 17:05:45.460676'),(108,'oauth2_provider','0002_08_updates','2016-05-10 17:05:46.894618'),(109,'oauth_provider','0001_initial','2016-05-10 17:05:48.025472'),(110,'organizations','0001_initial','2016-05-10 17:05:48.131189'),(111,'programs','0001_initial','2016-05-10 17:05:48.655061'),(112,'programs','0002_programsapiconfig_cache_ttl','2016-05-10 17:05:49.183466'),(113,'programs','0003_auto_20151120_1613','2016-05-10 17:05:52.275658'),(114,'programs','0004_programsapiconfig_enable_certification','2016-05-10 17:05:52.712711'),(115,'programs','0005_programsapiconfig_max_retries','2016-05-10 17:05:53.175110'),(116,'programs','0006_programsapiconfig_xseries_ad_enabled','2016-05-10 17:05:53.680207'),(117,'programs','0007_programsapiconfig_program_listing_enabled','2016-05-10 17:05:54.173149'),(118,'rss_proxy','0001_initial','2016-05-10 17:05:54.214779'),(119,'self_paced','0001_initial','2016-05-10 17:05:54.735912'),(120,'sessions','0001_initial','2016-05-10 17:05:54.779542'),(121,'student','0001_initial','2016-05-10 17:06:09.277379'),(122,'shoppingcart','0001_initial','2016-05-10 17:06:22.575525'),(123,'shoppingcart','0002_auto_20151208_1034','2016-05-10 17:06:23.581082'),(124,'shoppingcart','0003_auto_20151217_0958','2016-05-10 17:06:24.954961'),(125,'site_configuration','0001_initial','2016-05-10 17:06:26.323508'),(126,'splash','0001_initial','2016-05-10 17:06:27.028497'),(127,'static_replace','0001_initial','2016-05-10 17:06:27.725887'),(128,'static_replace','0002_assetexcludedextensionsconfig','2016-05-10 17:06:28.452414'),(129,'status','0001_initial','2016-05-10 17:06:29.966205'),(130,'student','0002_auto_20151208_1034','2016-05-10 17:06:31.534327'),(131,'submissions','0001_initial','2016-05-10 17:06:31.899386'),(132,'submissions','0002_auto_20151119_0913','2016-05-10 17:06:33.539295'),(133,'submissions','0003_submission_status','2016-05-10 17:06:33.593658'),(134,'survey','0001_initial','2016-05-10 17:06:34.144656'),(135,'teams','0001_initial','2016-05-10 17:06:35.636681'),(136,'third_party_auth','0001_initial','2016-05-10 17:06:38.781516'),(137,'third_party_auth','0002_schema__provider_icon_image','2016-05-10 17:06:43.058942'),(138,'track','0001_initial','2016-05-10 17:06:43.094932'),(139,'user_api','0001_initial','2016-05-10 17:06:48.448448'),(140,'util','0001_initial','2016-05-10 17:06:48.981682'),(141,'util','0002_data__default_rate_limit_config','2016-05-10 17:06:49.020179'),(142,'verified_track_content','0002_verifiedtrackcohortedcourse_verified_cohort_name','2016-05-10 17:06:49.064765'),(143,'verify_student','0001_initial','2016-05-10 17:06:57.794820'),(144,'verify_student','0002_auto_20151124_1024','2016-05-10 17:06:58.909085'),(145,'verify_student','0003_auto_20151113_1443','2016-05-10 17:06:59.970985'),(146,'wiki','0001_initial','2016-05-10 17:07:23.919153'),(147,'wiki','0002_remove_article_subscription','2016-05-10 17:07:23.958734'),(148,'workflow','0001_initial','2016-05-10 17:07:24.101828'),(149,'xblock_django','0001_initial','2016-05-10 17:07:24.923112'),(150,'xblock_django','0002_auto_20160204_0809','2016-05-10 17:07:25.768605'),(151,'contentstore','0001_initial','2016-05-10 17:07:47.921258'),(152,'course_creators','0001_initial','2016-05-10 17:07:47.956742'),(153,'tagging','0001_initial','2016-05-10 17:07:48.024677'),(154,'xblock_config','0001_initial','2016-05-10 17:07:48.229198'); /*!40000 ALTER TABLE `django_migrations` ENABLE KEYS */; UNLOCK TABLES; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; @@ -34,4 +34,4 @@ UNLOCK TABLES; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; --- Dump completed on 2016-04-01 20:26:19 +-- Dump completed on 2016-05-10 17:07:51 diff --git a/common/test/db_cache/bok_choy_schema_default.sql b/common/test/db_cache/bok_choy_schema_default.sql index 7e0d942dfc..05f69c65e1 100644 --- a/common/test/db_cache/bok_choy_schema_default.sql +++ b/common/test/db_cache/bok_choy_schema_default.sql @@ -9,6 +9,19 @@ /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; +DROP TABLE IF EXISTS `api_admin_apiaccessconfig`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `api_admin_apiaccessconfig` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `change_date` datetime(6) NOT NULL, + `enabled` tinyint(1) NOT NULL, + `changed_by_id` int(11) DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `api_admin_apiacce_changed_by_id_771a504ee92a076c_fk_auth_user_id` (`changed_by_id`), + CONSTRAINT `api_admin_apiacce_changed_by_id_771a504ee92a076c_fk_auth_user_id` FOREIGN KEY (`changed_by_id`) REFERENCES `auth_user` (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; +/*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `api_admin_apiaccessrequest`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; @@ -20,9 +33,15 @@ CREATE TABLE `api_admin_apiaccessrequest` ( `website` varchar(200) NOT NULL, `reason` longtext NOT NULL, `user_id` int(11) NOT NULL, + `company_address` varchar(255) NOT NULL, + `company_name` varchar(255) NOT NULL, + `contacted` tinyint(1) NOT NULL, + `site_id` int(11) NOT NULL, PRIMARY KEY (`id`), - KEY `api_admin_apiaccessrequ_user_id_6753e50e296cabc7_fk_auth_user_id` (`user_id`), + UNIQUE KEY `api_admin_apiaccessrequest_user_id_6753e50e296cabc7_uniq` (`user_id`), KEY `api_admin_apiaccessrequest_9acb4454` (`status`), + KEY `api_admin_apiaccessrequest_9365d6e7` (`site_id`), + CONSTRAINT `api_admin_apiaccessre_site_id_7963330a765f8041_fk_django_site_id` FOREIGN KEY (`site_id`) REFERENCES `django_site` (`id`), CONSTRAINT `api_admin_apiaccessrequ_user_id_6753e50e296cabc7_fk_auth_user_id` FOREIGN KEY (`user_id`) REFERENCES `auth_user` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; @@ -41,10 +60,15 @@ CREATE TABLE `api_admin_historicalapiaccessrequest` ( `history_type` varchar(1) NOT NULL, `history_user_id` int(11) DEFAULT NULL, `user_id` int(11) DEFAULT NULL, + `company_address` varchar(255) NOT NULL, + `company_name` varchar(255) NOT NULL, + `contacted` tinyint(1) NOT NULL, + `site_id` int(11), PRIMARY KEY (`history_id`), KEY `api_admin_histo_history_user_id_73c59297a81bcd02_fk_auth_user_id` (`history_user_id`), KEY `api_admin_historicalapiaccessrequest_b80bb774` (`id`), KEY `api_admin_historicalapiaccessrequest_9acb4454` (`status`), + KEY `api_admin_historicalapiaccessrequest_9365d6e7` (`site_id`), CONSTRAINT `api_admin_histo_history_user_id_73c59297a81bcd02_fk_auth_user_id` FOREIGN KEY (`history_user_id`) REFERENCES `auth_user` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; @@ -451,7 +475,7 @@ CREATE TABLE `auth_permission` ( PRIMARY KEY (`id`), UNIQUE KEY `content_type_id` (`content_type_id`,`codename`), CONSTRAINT `auth__content_type_id_508cf46651277a81_fk_django_content_type_id` FOREIGN KEY (`content_type_id`) REFERENCES `django_content_type` (`id`) -) ENGINE=InnoDB AUTO_INCREMENT=806 DEFAULT CHARSET=utf8; +) ENGINE=InnoDB AUTO_INCREMENT=824 DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `auth_registration`; /*!40101 SET @saved_cs_client = @@character_set_client */; @@ -677,6 +701,20 @@ CREATE TABLE `branding_brandinginfoconfig` ( CONSTRAINT `branding_branding_changed_by_id_298e4241fae118cc_fk_auth_user_id` FOREIGN KEY (`changed_by_id`) REFERENCES `auth_user` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; +DROP TABLE IF EXISTS `bulk_email_bulkemailflag`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `bulk_email_bulkemailflag` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `change_date` datetime(6) NOT NULL, + `enabled` tinyint(1) NOT NULL, + `require_course_email_auth` tinyint(1) NOT NULL, + `changed_by_id` int(11) DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `bulk_email_bulkem_changed_by_id_67960d6511f876aa_fk_auth_user_id` (`changed_by_id`), + CONSTRAINT `bulk_email_bulkem_changed_by_id_67960d6511f876aa_fk_auth_user_id` FOREIGN KEY (`changed_by_id`) REFERENCES `auth_user` (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; +/*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `bulk_email_courseauthorization`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; @@ -736,6 +774,50 @@ CREATE TABLE `bulk_email_optout` ( CONSTRAINT `bulk_email_optout_user_id_5d6e4a037bcf14bd_fk_auth_user_id` FOREIGN KEY (`user_id`) REFERENCES `auth_user` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; +DROP TABLE IF EXISTS `ccx_ccxfieldoverride`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `ccx_ccxfieldoverride` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `location` varchar(255) NOT NULL, + `field` varchar(255) NOT NULL, + `value` longtext NOT NULL, + `ccx_id` int(11) NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `ccx_ccxfieldoverride_ccx_id_432b832e71334ab2_uniq` (`ccx_id`,`location`,`field`), + KEY `ccx_ccxfieldoverride_d5189de0` (`location`), + KEY `ccx_ccxfieldoverride_5b9c1ccd` (`ccx_id`), + CONSTRAINT `ccx_ccxfield_ccx_id_9266d91ee561fcc_fk_ccx_customcourseforedx_id` FOREIGN KEY (`ccx_id`) REFERENCES `ccx_customcourseforedx` (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; +/*!40101 SET character_set_client = @saved_cs_client */; +DROP TABLE IF EXISTS `ccx_customcourseforedx`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `ccx_customcourseforedx` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `course_id` varchar(255) NOT NULL, + `display_name` varchar(255) NOT NULL, + `coach_id` int(11) NOT NULL, + `structure_json` longtext, + PRIMARY KEY (`id`), + KEY `ccx_customcourseforedx_coach_id_ad6ec0656b3bae_fk_auth_user_id` (`coach_id`), + KEY `ccx_customcourseforedx_ea134da7` (`course_id`), + CONSTRAINT `ccx_customcourseforedx_coach_id_ad6ec0656b3bae_fk_auth_user_id` FOREIGN KEY (`coach_id`) REFERENCES `auth_user` (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; +/*!40101 SET character_set_client = @saved_cs_client */; +DROP TABLE IF EXISTS `ccxcon_ccxcon`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `ccxcon_ccxcon` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `url` varchar(200) NOT NULL, + `oauth_client_id` varchar(255) NOT NULL, + `oauth_client_secret` varchar(255) NOT NULL, + `title` varchar(255) NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `url` (`url`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; +/*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `celery_taskmeta`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; @@ -967,6 +1049,20 @@ CREATE TABLE `commerce_commerceconfiguration` ( CONSTRAINT `commerce_commerce_changed_by_id_7441951d1c97c1d7_fk_auth_user_id` FOREIGN KEY (`changed_by_id`) REFERENCES `auth_user` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; +DROP TABLE IF EXISTS `contentserver_cdnuseragentsconfig`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `contentserver_cdnuseragentsconfig` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `change_date` datetime(6) NOT NULL, + `enabled` tinyint(1) NOT NULL, + `cdn_user_agents` longtext NOT NULL, + `changed_by_id` int(11) DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `contentserver_cdn_changed_by_id_36fe2b67b2c7f0ba_fk_auth_user_id` (`changed_by_id`), + CONSTRAINT `contentserver_cdn_changed_by_id_36fe2b67b2c7f0ba_fk_auth_user_id` FOREIGN KEY (`changed_by_id`) REFERENCES `auth_user` (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; +/*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `contentserver_courseassetcachettlconfig`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; @@ -1755,7 +1851,7 @@ CREATE TABLE `django_content_type` ( `model` varchar(100) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `django_content_type_app_label_45f3b1d93ec8c61c_uniq` (`app_label`,`model`) -) ENGINE=InnoDB AUTO_INCREMENT=268 DEFAULT CHARSET=utf8; +) ENGINE=InnoDB AUTO_INCREMENT=274 DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `django_migrations`; /*!40101 SET @saved_cs_client = @@character_set_client */; @@ -1766,7 +1862,7 @@ CREATE TABLE `django_migrations` ( `name` varchar(255) NOT NULL, `applied` datetime(6) NOT NULL, PRIMARY KEY (`id`) -) ENGINE=InnoDB AUTO_INCREMENT=139 DEFAULT CHARSET=utf8; +) ENGINE=InnoDB AUTO_INCREMENT=155 DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `django_openid_auth_association`; /*!40101 SET @saved_cs_client = @@character_set_client */; @@ -2012,7 +2108,7 @@ CREATE TABLE `embargo_country` ( `country` varchar(2) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `country` (`country`) -) ENGINE=InnoDB AUTO_INCREMENT=250 DEFAULT CHARSET=utf8; +) ENGINE=InnoDB AUTO_INCREMENT=251 DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `embargo_countryaccessrule`; /*!40101 SET @saved_cs_client = @@character_set_client */; @@ -2160,24 +2256,6 @@ CREATE TABLE `lms_xblock_xblockasidesconfig` ( CONSTRAINT `lms_xblock_xblocka_changed_by_id_eabf5ef3e34dfb8_fk_auth_user_id` FOREIGN KEY (`changed_by_id`) REFERENCES `auth_user` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -DROP TABLE IF EXISTS `mentoring_answer`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `mentoring_answer` ( - `id` int(11) NOT NULL AUTO_INCREMENT, - `name` varchar(50) NOT NULL, - `student_id` varchar(32) NOT NULL, - `course_id` varchar(50) NOT NULL, - `student_input` longtext NOT NULL, - `created_on` datetime(6) NOT NULL, - `modified_on` datetime(6) NOT NULL, - PRIMARY KEY (`id`), - UNIQUE KEY `student_id` (`student_id`,`course_id`,`name`), - KEY `mentoring_answer_b068931c` (`name`), - KEY `mentoring_answer_30a811f6` (`student_id`), - KEY `mentoring_answer_ea134da7` (`course_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; -/*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `microsite_configuration_historicalmicrositeorganizationmapping`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; @@ -2371,6 +2449,24 @@ CREATE TABLE `milestones_usermilestone` ( CONSTRAINT `milesto_milestone_id_4fe38e3e9994f15c_fk_milestones_milestone_id` FOREIGN KEY (`milestone_id`) REFERENCES `milestones_milestone` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; +DROP TABLE IF EXISTS `mobile_api_appversionconfig`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `mobile_api_appversionconfig` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `platform` varchar(50) NOT NULL, + `version` varchar(50) NOT NULL, + `major_version` int(11) NOT NULL, + `minor_version` int(11) NOT NULL, + `patch_version` int(11) NOT NULL, + `expire_at` datetime(6) DEFAULT NULL, + `enabled` tinyint(1) NOT NULL, + `created_at` datetime(6) NOT NULL, + `updated_at` datetime(6) NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `mobile_api_appversionconfig_platform_d34993f68d46008_uniq` (`platform`,`version`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; +/*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `mobile_api_mobileapiconfig`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; @@ -2726,43 +2822,6 @@ CREATE TABLE `organizations_organizationcourse` ( CONSTRAINT `a7b04b16eba98e518fbe21d390bd8e3e` FOREIGN KEY (`organization_id`) REFERENCES `organizations_organization` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -DROP TABLE IF EXISTS `problem_builder_answer`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `problem_builder_answer` ( - `id` int(11) NOT NULL AUTO_INCREMENT, - `name` varchar(50) NOT NULL, - `student_id` varchar(32) NOT NULL, - `course_id` varchar(50) NOT NULL, - `student_input` longtext NOT NULL, - `created_on` datetime(6) NOT NULL, - `modified_on` datetime(6) NOT NULL, - PRIMARY KEY (`id`), - UNIQUE KEY `problem_builder_answer_student_id_2f6847a9fb3e9385_uniq` (`student_id`,`course_id`,`name`), - KEY `problem_builder_answer_b068931c` (`name`), - KEY `problem_builder_answer_30a811f6` (`student_id`), - KEY `problem_builder_answer_ea134da7` (`course_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; -/*!40101 SET character_set_client = @saved_cs_client */; -DROP TABLE IF EXISTS `problem_builder_share`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `problem_builder_share` ( - `id` int(11) NOT NULL AUTO_INCREMENT, - `submission_uid` varchar(32) NOT NULL, - `block_id` varchar(255) NOT NULL, - `notified` tinyint(1) NOT NULL, - `shared_by_id` int(11) NOT NULL, - `shared_with_id` int(11) NOT NULL, - PRIMARY KEY (`id`), - UNIQUE KEY `problem_builder_share_shared_by_id_4e845ea266d66e1_uniq` (`shared_by_id`,`shared_with_id`,`block_id`), - KEY `problem_builder__shared_with_id_573844d7dca07647_fk_auth_user_id` (`shared_with_id`), - KEY `problem_builder_share_7e53bca2` (`block_id`), - KEY `problem_builder_share_e559ad34` (`notified`), - CONSTRAINT `problem_builder__shared_with_id_573844d7dca07647_fk_auth_user_id` FOREIGN KEY (`shared_with_id`) REFERENCES `auth_user` (`id`), - CONSTRAINT `problem_builder_sh_shared_by_id_35201b15adc664ce_fk_auth_user_id` FOREIGN KEY (`shared_by_id`) REFERENCES `auth_user` (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; -/*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `proctoring_proctoredexam`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; @@ -2779,6 +2838,7 @@ CREATE TABLE `proctoring_proctoredexam` ( `is_proctored` tinyint(1) NOT NULL, `is_practice_exam` tinyint(1) NOT NULL, `is_active` tinyint(1) NOT NULL, + `hide_after_due` tinyint(1) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `proctoring_proctoredexam_course_id_7d8ab189323890c0_uniq` (`course_id`,`content_id`), KEY `proctoring_proctoredexam_ea134da7` (`course_id`), @@ -3007,6 +3067,7 @@ CREATE TABLE `programs_programsapiconfig` ( `enable_certification` tinyint(1) NOT NULL, `max_retries` int(10) unsigned NOT NULL, `xseries_ad_enabled` tinyint(1) NOT NULL, + `program_listing_enabled` tinyint(1) NOT NULL, PRIMARY KEY (`id`), KEY `programs_programsa_changed_by_id_b7c3b49d5c0dcd3_fk_auth_user_id` (`changed_by_id`), CONSTRAINT `programs_programsa_changed_by_id_b7c3b49d5c0dcd3_fk_auth_user_id` FOREIGN KEY (`changed_by_id`) REFERENCES `auth_user` (`id`) @@ -3948,6 +4009,29 @@ CREATE TABLE `survey_surveyform` ( UNIQUE KEY `name` (`name`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; +DROP TABLE IF EXISTS `tagging_tagavailablevalues`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `tagging_tagavailablevalues` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `value` varchar(255) NOT NULL, + `category_id` int(11) NOT NULL, + PRIMARY KEY (`id`), + KEY `tagging_tagavailablevalues_b583a629` (`category_id`), + CONSTRAINT `tagging_category_id_40780d45c76e4f97_fk_tagging_tagcategories_id` FOREIGN KEY (`category_id`) REFERENCES `tagging_tagcategories` (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; +/*!40101 SET character_set_client = @saved_cs_client */; +DROP TABLE IF EXISTS `tagging_tagcategories`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `tagging_tagcategories` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(255) NOT NULL, + `title` varchar(255) NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `name` (`name`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; +/*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `teams_courseteam`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; @@ -3990,18 +4074,6 @@ CREATE TABLE `teams_courseteammembership` ( CONSTRAINT `teams_courseteammembers_user_id_2d93b28be22c3c40_fk_auth_user_id` FOREIGN KEY (`user_id`) REFERENCES `auth_user` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -DROP TABLE IF EXISTS `theming_sitetheme`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `theming_sitetheme` ( - `id` int(11) NOT NULL AUTO_INCREMENT, - `theme_dir_name` varchar(255) NOT NULL, - `site_id` int(11) NOT NULL, - PRIMARY KEY (`id`), - KEY `theming_sitetheme_site_id_4fccdacaebfeb01f_fk_django_site_id` (`site_id`), - CONSTRAINT `theming_sitetheme_site_id_4fccdacaebfeb01f_fk_django_site_id` FOREIGN KEY (`site_id`) REFERENCES `django_site` (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; -/*!40101 SET character_set_client = @saved_cs_client */; DROP TABLE IF EXISTS `third_party_auth_ltiproviderconfig`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; @@ -4222,6 +4294,7 @@ CREATE TABLE `verified_track_content_verifiedtrackcohortedcourse` ( `id` int(11) NOT NULL AUTO_INCREMENT, `course_key` varchar(255) NOT NULL, `enabled` tinyint(1) NOT NULL, + `verified_cohort_name` varchar(100) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `course_key` (`course_key`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; diff --git a/common/test/db_cache/bok_choy_schema_student_module_history.sql b/common/test/db_cache/bok_choy_schema_student_module_history.sql index 26f60f3064..22b17648ea 100644 --- a/common/test/db_cache/bok_choy_schema_student_module_history.sql +++ b/common/test/db_cache/bok_choy_schema_student_module_history.sql @@ -35,7 +35,7 @@ CREATE TABLE `django_migrations` ( `name` varchar(255) NOT NULL, `applied` datetime(6) NOT NULL, PRIMARY KEY (`id`) -) ENGINE=InnoDB AUTO_INCREMENT=139 DEFAULT CHARSET=utf8; +) ENGINE=InnoDB AUTO_INCREMENT=155 DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; diff --git a/common/test/db_cache/lettuce.db b/common/test/db_cache/lettuce.db index 38163fcd109a50173720b73c74232900fa217665..a446bc42378114d64c2e34afcc669f369191e271 100644 GIT binary patch delta 81685 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%0D_)m>c(8YCiDykj_JPVruJErvsa-Ugm{KO`T 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 z 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 delta 80658 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

Ygll!zOBZf4Td_2@BMThR7tElOJ8%@(C9 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�FPWZs eSe_CqXH&^%!E{>nPPC8Sctm!xAHO%&|Nj6p|L|b| diff --git a/common/test/db_cache/lettuce_student_module_history.db b/common/test/db_cache/lettuce_student_module_history.db index ad36e86d8428ea522a4669e3e8c728cbe90fb2f8..f951d0fca90356b9899535f7a98b281b53708090 100644 GIT binary patch literal 21504 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 diff --git a/common/test/db_fixtures/bulk_email_flag.json b/common/test/db_fixtures/bulk_email_flag.json new file mode 100644 index 0000000000..e4361e7cb8 --- /dev/null +++ b/common/test/db_fixtures/bulk_email_flag.json @@ -0,0 +1,11 @@ +[ + { + "pk": 1, + "model": "bulk_email.bulkemailflag", + "fields": { + "enabled": true, + "require_course_email_auth": false, + "change_date": "2016-05-01" + } + } +] diff --git a/lms/djangoapps/bulk_email/admin.py b/lms/djangoapps/bulk_email/admin.py index a17699f500..95c05c5747 100644 --- a/lms/djangoapps/bulk_email/admin.py +++ b/lms/djangoapps/bulk_email/admin.py @@ -3,7 +3,9 @@ Django admin page for bulk email models """ from django.contrib import admin -from bulk_email.models import CourseEmail, Optout, CourseEmailTemplate, CourseAuthorization +from config_models.admin import ConfigurationModelAdmin + +from bulk_email.models import CourseEmail, Optout, CourseEmailTemplate, CourseAuthorization, BulkEmailFlag from bulk_email.forms import CourseEmailTemplateForm, CourseAuthorizationAdminForm @@ -80,3 +82,4 @@ admin.site.register(CourseEmail, CourseEmailAdmin) admin.site.register(Optout, OptoutAdmin) admin.site.register(CourseEmailTemplate, CourseEmailTemplateAdmin) admin.site.register(CourseAuthorization, CourseAuthorizationAdmin) +admin.site.register(BulkEmailFlag, ConfigurationModelAdmin) diff --git a/lms/djangoapps/bulk_email/migrations/0003_config_model_feature_flag.py b/lms/djangoapps/bulk_email/migrations/0003_config_model_feature_flag.py new file mode 100644 index 0000000000..ee26fce7bc --- /dev/null +++ b/lms/djangoapps/bulk_email/migrations/0003_config_model_feature_flag.py @@ -0,0 +1,27 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion +from django.conf import settings + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('bulk_email', '0002_data__load_course_email_template'), + ] + + operations = [ + migrations.CreateModel( + name='BulkEmailFlag', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('change_date', models.DateTimeField(auto_now_add=True, verbose_name='Change date')), + ('enabled', models.BooleanField(default=False, verbose_name='Enabled')), + ('require_course_email_auth', models.BooleanField(default=True)), + ('changed_by', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, editable=False, to=settings.AUTH_USER_MODEL, null=True, verbose_name='Changed by')), + ], + ), + ] diff --git a/lms/djangoapps/bulk_email/models.py b/lms/djangoapps/bulk_email/models.py index 488ba9700b..5470de8b43 100644 --- a/lms/djangoapps/bulk_email/models.py +++ b/lms/djangoapps/bulk_email/models.py @@ -20,6 +20,8 @@ from django.db import models from openedx.core.lib.html_to_text import html_to_text from openedx.core.lib.mail_utils import wrap_message +from config_models.models import ConfigurationModel + from xmodule_django.models import CourseKeyField from util.keyword_substitution import substitute_keywords_with_data @@ -240,14 +242,7 @@ class CourseAuthorization(models.Model): def instructor_email_enabled(cls, course_id): """ Returns whether or not email is enabled for the given course id. - - If email has not been explicitly enabled, returns False. """ - # If settings.FEATURES['REQUIRE_COURSE_EMAIL_AUTH'] is - # set to False, then we enable email for every course. - if not settings.FEATURES['REQUIRE_COURSE_EMAIL_AUTH']: - return True - try: record = cls.objects.get(course_id=course_id) return record.email_enabled @@ -260,3 +255,47 @@ class CourseAuthorization(models.Model): not_en = "" # pylint: disable=no-member return u"Course '{}': Instructor Email {}Enabled".format(self.course_id.to_deprecated_string(), not_en) + + +class BulkEmailFlag(ConfigurationModel): + """ + Enables site-wide configuration for the bulk_email feature. + + Staff can only send bulk email for a course if all the following conditions are true: + 1. BulkEmailFlag is enabled. + 2. Course-specific authorization not required, or course authorized to use bulk email. + """ + # boolean field 'enabled' inherited from parent ConfigurationModel + require_course_email_auth = models.BooleanField(default=True) + + @classmethod + def feature_enabled(cls, course_id=None): + """ + Looks at the currently active configuration model to determine whether the bulk email feature is available. + + If the flag is not enabled, the feature is not available. + If the flag is enabled, course-specific authorization is required, and the course_id is either not provided + or not authorixed, the feature is not available. + If the flag is enabled, course-specific authorization is required, and the provided course_id is authorized, + the feature is available. + If the flag is enabled and course-specific authorization is not required, the feature is available. + """ + if not BulkEmailFlag.is_enabled(): + return False + elif BulkEmailFlag.current().require_course_email_auth: + if course_id is None: + return False + else: + return CourseAuthorization.instructor_email_enabled(course_id) + else: # implies enabled == True and require_course_email == False, so email is globally enabled + return True + + class Meta(object): + app_label = "bulk_email" + + def __unicode__(self): + current_model = BulkEmailFlag.current() + return u"".format( + current_model.is_enabled(), + current_model.require_course_email_auth + ) diff --git a/lms/djangoapps/bulk_email/tests/test_course_optout.py b/lms/djangoapps/bulk_email/tests/test_course_optout.py index 68567e3b0e..4618fb7268 100644 --- a/lms/djangoapps/bulk_email/tests/test_course_optout.py +++ b/lms/djangoapps/bulk_email/tests/test_course_optout.py @@ -15,6 +15,7 @@ from student.tests.factories import UserFactory, AdminFactory, CourseEnrollmentF from student.models import CourseEnrollment from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase from xmodule.modulestore.tests.factories import CourseFactory +from bulk_email.models import BulkEmailFlag @attr('shard_1') @@ -42,6 +43,11 @@ class TestOptoutCourseEmails(ModuleStoreTestCase): 'course_id': self.course.id.to_deprecated_string(), 'success': True, } + BulkEmailFlag.objects.create(enabled=True, require_course_email_auth=False) + + def tearDown(self): + super(TestOptoutCourseEmails, self).tearDown() + BulkEmailFlag.objects.all().delete() def navigate_to_email_view(self): """Navigate to the instructor dash's email view""" @@ -49,10 +55,9 @@ class TestOptoutCourseEmails(ModuleStoreTestCase): url = reverse('instructor_dashboard', kwargs={'course_id': self.course.id.to_deprecated_string()}) response = self.client.get(url) email_section = '

' - # If this fails, it is likely because ENABLE_INSTRUCTOR_EMAIL is set to False + # If this fails, it is likely because BulkEmailFlag.is_enabled() is set to False self.assertTrue(email_section in response.content) - @patch.dict(settings.FEATURES, {'ENABLE_INSTRUCTOR_EMAIL': True, 'REQUIRE_COURSE_EMAIL_AUTH': False}) def test_optout_course(self): """ Make sure student does not receive course email after opting out. @@ -80,7 +85,6 @@ class TestOptoutCourseEmails(ModuleStoreTestCase): # Assert that self.student.email not in mail.to, outbox should be empty self.assertEqual(len(mail.outbox), 0) - @patch.dict(settings.FEATURES, {'ENABLE_INSTRUCTOR_EMAIL': True, 'REQUIRE_COURSE_EMAIL_AUTH': False}) def test_optin_course(self): """ Make sure student receives course email after opting in. diff --git a/lms/djangoapps/bulk_email/tests/test_email.py b/lms/djangoapps/bulk_email/tests/test_email.py index e772dccad2..8909cd3bc2 100644 --- a/lms/djangoapps/bulk_email/tests/test_email.py +++ b/lms/djangoapps/bulk_email/tests/test_email.py @@ -15,7 +15,7 @@ from django.core.urlresolvers import reverse from django.core.management import call_command from django.test.utils import override_settings -from bulk_email.models import Optout +from bulk_email.models import Optout, BulkEmailFlag from bulk_email.tasks import _get_source_address from courseware.tests.factories import StaffFactory, InstructorFactory from instructor_task.subtasks import update_subtask_status @@ -79,7 +79,6 @@ class EmailSendFromDashboardTestCase(SharedModuleStoreTestCase): """ self.client.login(username=user.username, password="test") - @patch.dict(settings.FEATURES, {'ENABLE_INSTRUCTOR_EMAIL': True, 'REQUIRE_COURSE_EMAIL_AUTH': False}) def goto_instructor_dash_email_view(self): """ Goes to the instructor dashboard to verify that the email section is @@ -90,7 +89,7 @@ class EmailSendFromDashboardTestCase(SharedModuleStoreTestCase): # navigate to a particular email section response = self.client.get(url) email_section = '
' - # If this fails, it is likely because ENABLE_INSTRUCTOR_EMAIL is set to False + # If this fails, it is likely because BulkEmailFlag.is_enabled() is set to False self.assertIn(email_section, response.content) @classmethod @@ -104,6 +103,7 @@ class EmailSendFromDashboardTestCase(SharedModuleStoreTestCase): def setUp(self): super(EmailSendFromDashboardTestCase, self).setUp() + BulkEmailFlag.objects.create(enabled=True, require_course_email_auth=False) self.create_staff_and_instructor() self.create_students() @@ -121,19 +121,22 @@ class EmailSendFromDashboardTestCase(SharedModuleStoreTestCase): 'success': True, } + def tearDown(self): + super(EmailSendFromDashboardTestCase, self).tearDown() + BulkEmailFlag.objects.all().delete() + @attr('shard_1') -@patch.dict(settings.FEATURES, {'ENABLE_INSTRUCTOR_EMAIL': True, 'REQUIRE_COURSE_EMAIL_AUTH': False}) @patch('bulk_email.models.html_to_text', Mock(return_value='Mocking CourseEmail.text_message', autospec=True)) class TestEmailSendFromDashboardMockedHtmlToText(EmailSendFromDashboardTestCase): """ Tests email sending with mocked html_to_text. """ - @patch.dict(settings.FEATURES, {'ENABLE_INSTRUCTOR_EMAIL': True, 'REQUIRE_COURSE_EMAIL_AUTH': True}) def test_email_disabled(self): """ Test response when email is disabled for course. """ + BulkEmailFlag.objects.create(enabled=True, require_course_email_auth=True) test_email = { 'action': 'Send email', 'send_to': 'myself', @@ -402,7 +405,6 @@ class TestEmailSendFromDashboardMockedHtmlToText(EmailSendFromDashboardTestCase) @attr('shard_1') -@patch.dict(settings.FEATURES, {'ENABLE_INSTRUCTOR_EMAIL': True, 'REQUIRE_COURSE_EMAIL_AUTH': False}) @skipIf(os.environ.get("TRAVIS") == 'true', "Skip this test in Travis CI.") class TestEmailSendFromDashboard(EmailSendFromDashboardTestCase): """ diff --git a/lms/djangoapps/bulk_email/tests/test_err_handling.py b/lms/djangoapps/bulk_email/tests/test_err_handling.py index d6788e6817..189dfdf050 100644 --- a/lms/djangoapps/bulk_email/tests/test_err_handling.py +++ b/lms/djangoapps/bulk_email/tests/test_err_handling.py @@ -14,7 +14,7 @@ from mock import patch, Mock from nose.plugins.attrib import attr from smtplib import SMTPDataError, SMTPServerDisconnected, SMTPConnectError -from bulk_email.models import CourseEmail, SEND_TO_ALL +from bulk_email.models import CourseEmail, SEND_TO_ALL, BulkEmailFlag from bulk_email.tasks import perform_delegate_email_batches, send_course_email from instructor_task.models import InstructorTask from instructor_task.subtasks import ( @@ -38,7 +38,6 @@ class EmailTestException(Exception): @attr('shard_1') @patch('bulk_email.models.html_to_text', Mock(return_value='Mocking CourseEmail.text_message', autospec=True)) -@patch.dict(settings.FEATURES, {'ENABLE_INSTRUCTOR_EMAIL': True, 'REQUIRE_COURSE_EMAIL_AUTH': False}) class TestEmailErrors(ModuleStoreTestCase): """ Test that errors from sending email are handled properly. @@ -61,6 +60,11 @@ class TestEmailErrors(ModuleStoreTestCase): 'course_id': self.course.id.to_deprecated_string(), 'success': True, } + BulkEmailFlag.objects.create(enabled=True, require_course_email_auth=False) + + def tearDown(self): + super(TestEmailErrors, self).tearDown() + BulkEmailFlag.objects.all().delete() @patch('bulk_email.tasks.get_connection', autospec=True) @patch('bulk_email.tasks.send_course_email.retry') diff --git a/lms/djangoapps/bulk_email/tests/test_forms.py b/lms/djangoapps/bulk_email/tests/test_forms.py index 5d465a05ec..d70cdc5be6 100644 --- a/lms/djangoapps/bulk_email/tests/test_forms.py +++ b/lms/djangoapps/bulk_email/tests/test_forms.py @@ -3,10 +3,9 @@ Unit tests for bulk-email-related forms. """ from django.conf import settings -from mock import patch from nose.plugins.attrib import attr -from bulk_email.models import CourseAuthorization, CourseEmailTemplate +from bulk_email.models import CourseEmailTemplate, BulkEmailFlag from bulk_email.forms import CourseAuthorizationAdminForm, CourseEmailTemplateForm from opaque_keys.edx.locations import SlashSeparatedCourseKey from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase @@ -23,11 +22,15 @@ class CourseAuthorizationFormTest(ModuleStoreTestCase): super(CourseAuthorizationFormTest, self).setUp() course_title = u"ẗëṡẗ title イ乇丂イ ᄊ乇丂丂ムg乇 キo尺 ムレレ тэѕт мэѕѕаБэ" self.course = CourseFactory.create(display_name=course_title) + BulkEmailFlag.objects.create(enabled=True, require_course_email_auth=True) + + def tearDown(self): + super(CourseAuthorizationFormTest, self).tearDown() + BulkEmailFlag.objects.all().delete() - @patch.dict(settings.FEATURES, {'ENABLE_INSTRUCTOR_EMAIL': True, 'REQUIRE_COURSE_EMAIL_AUTH': True}) def test_authorize_mongo_course(self): # Initially course shouldn't be authorized - self.assertFalse(CourseAuthorization.instructor_email_enabled(self.course.id)) + self.assertFalse(BulkEmailFlag.feature_enabled(self.course.id)) # Test authorizing the course, which should totally work form_data = {'course_id': self.course.id.to_deprecated_string(), 'email_enabled': True} form = CourseAuthorizationAdminForm(data=form_data) @@ -35,12 +38,11 @@ class CourseAuthorizationFormTest(ModuleStoreTestCase): self.assertTrue(form.is_valid()) form.save() # Check that this course is authorized - self.assertTrue(CourseAuthorization.instructor_email_enabled(self.course.id)) + self.assertTrue(BulkEmailFlag.feature_enabled(self.course.id)) - @patch.dict(settings.FEATURES, {'ENABLE_INSTRUCTOR_EMAIL': True, 'REQUIRE_COURSE_EMAIL_AUTH': True}) def test_repeat_course(self): # Initially course shouldn't be authorized - self.assertFalse(CourseAuthorization.instructor_email_enabled(self.course.id)) + self.assertFalse(BulkEmailFlag.feature_enabled(self.course.id)) # Test authorizing the course, which should totally work form_data = {'course_id': self.course.id.to_deprecated_string(), 'email_enabled': True} form = CourseAuthorizationAdminForm(data=form_data) @@ -48,7 +50,7 @@ class CourseAuthorizationFormTest(ModuleStoreTestCase): self.assertTrue(form.is_valid()) form.save() # Check that this course is authorized - self.assertTrue(CourseAuthorization.instructor_email_enabled(self.course.id)) + self.assertTrue(BulkEmailFlag.feature_enabled(self.course.id)) # Now make a new course authorization with the same course id that tries to turn email off form_data = {'course_id': self.course.id.to_deprecated_string(), 'email_enabled': False} @@ -66,9 +68,8 @@ class CourseAuthorizationFormTest(ModuleStoreTestCase): form.save() # Course should still be authorized (invalid attempt had no effect) - self.assertTrue(CourseAuthorization.instructor_email_enabled(self.course.id)) + self.assertTrue(BulkEmailFlag.feature_enabled(self.course.id)) - @patch.dict(settings.FEATURES, {'ENABLE_INSTRUCTOR_EMAIL': True, 'REQUIRE_COURSE_EMAIL_AUTH': True}) def test_form_typo(self): # Munge course id bad_id = SlashSeparatedCourseKey(u'Broken{}'.format(self.course.id.org), 'hello', self.course.id.run + '_typo') @@ -89,7 +90,6 @@ class CourseAuthorizationFormTest(ModuleStoreTestCase): ): form.save() - @patch.dict(settings.FEATURES, {'ENABLE_INSTRUCTOR_EMAIL': True, 'REQUIRE_COURSE_EMAIL_AUTH': True}) def test_form_invalid_key(self): form_data = {'course_id': "asd::**!@#$%^&*())//foobar!!", 'email_enabled': True} form = CourseAuthorizationAdminForm(data=form_data) @@ -107,7 +107,6 @@ class CourseAuthorizationFormTest(ModuleStoreTestCase): ): form.save() - @patch.dict(settings.FEATURES, {'ENABLE_INSTRUCTOR_EMAIL': True, 'REQUIRE_COURSE_EMAIL_AUTH': True}) def test_course_name_only(self): # Munge course id - common form_data = {'course_id': self.course.id.run, 'email_enabled': True} diff --git a/lms/djangoapps/bulk_email/tests/test_models.py b/lms/djangoapps/bulk_email/tests/test_models.py index f382071f68..67a51db1b0 100644 --- a/lms/djangoapps/bulk_email/tests/test_models.py +++ b/lms/djangoapps/bulk_email/tests/test_models.py @@ -10,7 +10,7 @@ from student.tests.factories import UserFactory from mock import patch, Mock from nose.plugins.attrib import attr -from bulk_email.models import CourseEmail, SEND_TO_STAFF, CourseEmailTemplate, CourseAuthorization +from bulk_email.models import CourseEmail, SEND_TO_STAFF, CourseEmailTemplate, CourseAuthorization, BulkEmailFlag from opaque_keys.edx.locations import SlashSeparatedCourseKey @@ -173,17 +173,21 @@ class CourseEmailTemplateTest(TestCase): class CourseAuthorizationTest(TestCase): """Test the CourseAuthorization model.""" - @patch.dict(settings.FEATURES, {'REQUIRE_COURSE_EMAIL_AUTH': True}) + def tearDown(self): + super(CourseAuthorizationTest, self).tearDown() + BulkEmailFlag.objects.all().delete() + def test_creation_auth_on(self): + BulkEmailFlag.objects.create(enabled=True, require_course_email_auth=True) course_id = SlashSeparatedCourseKey('abc', '123', 'doremi') # Test that course is not authorized by default - self.assertFalse(CourseAuthorization.instructor_email_enabled(course_id)) + self.assertFalse(BulkEmailFlag.feature_enabled(course_id)) # Authorize cauth = CourseAuthorization(course_id=course_id, email_enabled=True) cauth.save() # Now, course should be authorized - self.assertTrue(CourseAuthorization.instructor_email_enabled(course_id)) + self.assertTrue(BulkEmailFlag.feature_enabled(course_id)) self.assertEquals( cauth.__unicode__(), "Course 'abc/123/doremi': Instructor Email Enabled" @@ -193,21 +197,21 @@ class CourseAuthorizationTest(TestCase): cauth.email_enabled = False cauth.save() # Test that course is now unauthorized - self.assertFalse(CourseAuthorization.instructor_email_enabled(course_id)) + self.assertFalse(BulkEmailFlag.feature_enabled(course_id)) self.assertEquals( cauth.__unicode__(), "Course 'abc/123/doremi': Instructor Email Not Enabled" ) - @patch.dict(settings.FEATURES, {'REQUIRE_COURSE_EMAIL_AUTH': False}) def test_creation_auth_off(self): + BulkEmailFlag.objects.create(enabled=True, require_course_email_auth=False) course_id = SlashSeparatedCourseKey('blahx', 'blah101', 'ehhhhhhh') # Test that course is authorized by default, since auth is turned off - self.assertTrue(CourseAuthorization.instructor_email_enabled(course_id)) + self.assertTrue(BulkEmailFlag.feature_enabled(course_id)) # Use the admin interface to unauthorize the course cauth = CourseAuthorization(course_id=course_id, email_enabled=False) cauth.save() # Now, course should STILL be authorized! - self.assertTrue(CourseAuthorization.instructor_email_enabled(course_id)) + self.assertTrue(BulkEmailFlag.feature_enabled(course_id)) diff --git a/lms/djangoapps/instructor/features/bulk_email.feature b/lms/djangoapps/instructor/features/bulk_email.feature deleted file mode 100644 index 39d2c00c83..0000000000 --- a/lms/djangoapps/instructor/features/bulk_email.feature +++ /dev/null @@ -1,20 +0,0 @@ -@shard_2 -Feature: LMS.Instructor Dash Bulk Email - As an instructor or course staff, - In order to communicate with students and staff - I want to send email to staff and students in a course. - - Scenario: Send bulk email - Given there is a course with a staff, instructor and student - And I am logged in to the course as "" - When I send email to "" - Then Email is sent to "" - - Examples: - | Role | Recipient | - | instructor | myself | - | instructor | course staff | - | instructor | students, staff, and instructors | - | staff | myself | - | staff | course staff | - | staff | students, staff, and instructors | diff --git a/lms/djangoapps/instructor/features/bulk_email.py b/lms/djangoapps/instructor/features/bulk_email.py deleted file mode 100644 index ebef8a8808..0000000000 --- a/lms/djangoapps/instructor/features/bulk_email.py +++ /dev/null @@ -1,196 +0,0 @@ -""" -Define steps for bulk email acceptance test. -""" - -# pylint: disable=missing-docstring -# pylint: disable=redefined-outer-name - -from lettuce import world, step -from lettuce.django import mail -from nose.tools import assert_in, assert_equal -from django.core.management import call_command -from django.conf import settings - -from courseware.tests.factories import StaffFactory, InstructorFactory - - -@step(u'Given there is a course with a staff, instructor and student') -def make_populated_course(step): # pylint: disable=unused-argument - ## This is different than the function defined in common.py because it enrolls - ## a staff, instructor, and student member regardless of what `role` is, then - ## logs `role` in. This is to ensure we have 3 class participants to email. - - # Clear existing courses to avoid conflicts - world.clear_courses() - - # Create a new course - course = world.CourseFactory.create( - org='edx', - number='888', - display_name='Bulk Email Test Course' - ) - world.bulk_email_course_key = course.id - - try: - # See if we've defined the instructor & staff user yet - world.bulk_email_instructor - except AttributeError: - # Make & register an instructor for the course - world.bulk_email_instructor = InstructorFactory(course_key=world.bulk_email_course_key) - world.enroll_user(world.bulk_email_instructor, world.bulk_email_course_key) - - # Make & register a staff member - world.bulk_email_staff = StaffFactory(course_key=course.id) - world.enroll_user(world.bulk_email_staff, world.bulk_email_course_key) - - # Make & register a student - world.register_by_course_key( - course.id, - username='student', - password='test', - is_staff=False - ) - - # Store the expected recipients - # given each "send to" option - staff_emails = [world.bulk_email_staff.email, world.bulk_email_instructor.email] - world.expected_addresses = { - 'course staff': staff_emails, - 'students, staff, and instructors': staff_emails + ['student@edx.org'] - } - - -# Dictionary mapping a description of the email recipient -# to the corresponding