When an unknown content type is encountered, it's imported as a
RawDescriptor, which will preserve the OLX and export it back out. But
if we import a course while an XBlock is installed and then export it
after that XBlock is removed, we export RawDescriptors that never got to
save the original OLX and have a blank "data" field. Attempting to
export this used to fail and break export altogether. We now test that
the export continues to complete, and just skips over anything it can't
serialize out.
Note that this will stil export pointers in the export, so if you
uninstalled a "AmazingBlock" and exported, you might see something like
the following in a vertical's XML::
<vertical display_name="Unit">
<amazing url_name="2edebb68d5734395a06b8a62b9bb677e"/>
</vertical>
However there would be no corresponding file at:
/amazing/2edebb68d5734395a06b8a62b9bb677e.xml
In fact, there would be no /amazing directory at all in the export.
The better long term solution is probably to leave the pointer as-is
and export some generic file that can't be mistaken for OLX (say a
JSON file) that represents the raw key-value data we have in
Modulstore for the now unknown XBlock type. However, this commit at
least keeps export from crashing out entirely.
This prevents the Feature-Based Enrollments groups from showing
in Group Configurations unless the studio_override_enabled flag
is enabled. It also fixes a bug where FBE group configurations were
displaying usage as though they were Track-based group configurations.
REVMI-78
Add more parameters to COURSE_ENROLLMENT_MODES to allow to display friendly mode name and more options
Fix python tests of PR #18557
PR #18557: Fix Diff Quality test line too long
PR #18557: Fix Diff Quality test unused-variable
Use six.iteritems() in COURSE_MODE_SLUG_CHOICES for future Python 3 compatibility
Initial changes to gate section based on completion percentage
code refactoring and added evaluation of completion milestone
Fixed broken unit tests and added new tests
Fixed broken tests and quality violations
Fixed Pep8 violation
Fixed eslint quality violations
Test changes as suggested by reviewer
changes after feedbacy from reviewer
Update the docstring with suggested changes
excluding chapter from the blocks
Disallow empty values for min score and min completion
Changes afte feedback from UX/Accessibility
removed blank line
Open edit image modal via a custom signal
Send img tag attributes in open signal
Send natural image dimensions if no attr specified
Add new modal button in addition to old button
Also load built CSS when waffle switch on
Swap out TinyMCE toolbar button on waffle switch
Pass LANGUAGE_CODE from Django to template to studio-frontend
Define request.LANGUAGE_CODE in test_container_page.py