This commit puts a limit on the size of files that
course staff can upload to MongoDB. The limit is
enforced on the frontend in javascript as well
as backend via the /upload endpoint.
The limit is hard-coded in cms/envs/common.py and
may be changed according to the user's custom
needs.
If the user tries to upload a file that's too
large, an error message will pop up, with a
customizable url that pointing the user to an
external page with an alternate upload procedure.
This url is specified im cms/envs/common.py.
If not set, this url will not be displayed.
This commit adds validation for course advanced settings. Currently when course
administrators make invalid changes in the Settings/Advanced Settings tab,
they're not notified through a new modal window of the list of invalid settings
changes.
* Extending CourseMetadata
- Previously, we only had update_from_json method in CourseMetadata.py,
and it was only validating one field every POST request.
- Now we have validate_and_update_from_json method that encapsulates the
functionality of update_from_json into a validation call
- To avoid discrepancy of validation standards between modules, validation
uses the from_json method implemented to each field in xblock.
* Different Response in advanced settings ajax requests
- After receiving a POST ajax request, course.py calls
validate_and_update_from_json, and sends a json object of either:
1) valid course metadata model
2) error objects
* Error Messages shown in validation-error-modal
- error objects passed through ajax are shown in a separate modal.
TNL-46
I've changed Studio to catch JavaScript errors when rendering xblocks, log the error, but to then continue as normal. This means that the user is still able to interact with the xblock to delete, duplicate etc. This seems reasonable as the xblock is only rendered as a WYSIWYG representation so if it isn't fully interactive that shouldn't be a big problem.
Studio: adding course re-run-centric static template rendering
* initial HTML for dashboard states
* initial HTML for new course re-run view/form
* initial HTML placeholder for outline alert UI
Conflicts:
cms/templates/index.html
Studio: adding styling for course re-run-centric views
* adding new view/page mast-wizard type
* refactoring create course/element form styling
* adding course re-run view specific styling
* adding courses processing styling (w/ alerts and status)
Course rerun server-side updates: support display_name and DuplicateCourseError.
Studio: further design revisions and tweaks from feedback
* removing new window attribute from re-run control
* removing links from processing courses
* revising look/feel of dismiss action on dashboard + alert
* correcting font-weight of dashboard processing title
* adding extra space to course rerun action on dashboard
* re-wording secondary cancel action on rerun view
Conflicts:
cms/templates/index.html
Added interation on unsucceeded courses in dashboard
Studio: removing 'rel=external' property from course re-run actions
Studio: removing hover styles for processing courses
Fixed value bug in split and set course listing to display run
moved task.py for rerun
STUD-1856
Display "IS VISIBLE TO" when released and published
Reword staff lock prompt and notifications
Change "View Published Version" to "View Live Version"
Change "Unit Tree Location" to "Unit Location in Course"
Switch live content warning based on unpublished changes
Reword discard changes confirmation prompt
Reword unit location tip
Add "Edit the name" popup text for sections and subsections
Fix popup text for section and subsection titles
Add popup text for new section, subsection, and unit buttons
Reword popup for View Live button and add tests
Reword notification when removing staff lock
Update MessageView when has_changes changed
Change "Published" to "Published (not yet released)"
Change "Unpublished (Staff only)" to "Visible to Staff Only"
Fix bok_choy test by changing course separator.
Change format of the modal title to '[Subsection/Section Name] Settings'.
Improve bok_choy test stability.
Studio: correcting modal window size name for outline settings editor
Specify full date in bok_choy tests.
Refactor bok_choy tests.
Remove .modal-editor from basic-modal.underscore
Set classes in modal window dynamically.
Studio: revising outline edit modal tip content and overall size
Rename isEditable to isEditableOnCourseOutline.
Interpolate display name.
Use graded instead of format as flag.
Studio: revising outline settings edit modal size
Fix selectors in bok_choy tests.