fix: make new field in xblock json serializable and don't assign due dates to ORAs
feat: display warning message in Studio if the relative date input is more than 18 weeks for custom pacing in self paced course
fix: handle due dates for mix of ORA and non ORA problems under a subsection and other styling fixes
feat: add a minimum restriction for self paced courses due date editor input
fix: naming of warning id divs to be more specific and exclude children of ORA problems in setting due dates
test: extracting dates for a self paced course with custom pacing
test: frontend for self paced custom pacing modal in studio and clean up its backend tests
fix: remove an unused line when getting children of custom pacing subsection, reorganize testing for custom pacing
fix: more specific comments to testing for custom PLS and remove a test case course
fix: more cleanup for self paced custom pacing PLS backend tests
The course settings `certificate_available_date` (CAD) and
`certificates_display_behavior` (CDB) were previously acting indedependantly
of one another. They now work in tandem. This change:
- limits CDB to a dropdown
- removes "early_with_info" and adds "end_with_date"
- only takes CAD into account if "end_with_date" is selected
- Moves CDB to the main course schedule settings page
- updates CourseOverview to validate these fields and choose sane
defaults if they aren't expected values
Certificates will now show under the following circumstances:
"Immediately upon passing"
certificate_availability_date = null
certificates_display_behavior = "early_no_info"
"End date of course"
certificate_availability_date = null
certificates_display_behavior = "end"
"A date after the course end date"
certificate_availability_date = <date>
certificates_display_behavior = "end_with_date"
The Pages and Resources view in the Course Autoring MFE is in development and
this flag allows enabling a link to it from the existing Pages view in Studio
using a waffle flag.
By "useless" due dates I'm specifically talking about due dates which
are erroneously set in the course strucutre, but which don't matter
because the entire course is self-paced, rather than instructor-paced.
JIRA:EDUCATOR-5713
If we are seeing an anonymous user, but the segment user id is still
set, we believe the segment user id is coming from a different user on
the same machine. This will make sure we clear out that storage and
then the indentify call will make a new anonymous id
This commit removes several waffle toggles that have been enabled
on edx.org for years. It's time to remove the rollout gating for
these features and enable them by default.
This doesn't directly change any behavior. But it does create new
database objects by default now and allows for enabling other
schedule based features more easily.
Specifically, the following toggles were affected.
schedules.create_schedules_for_course
- Waffle flag removed as always-enabled
- We now always create a schedule when an enrollment is created
schedules.send_updates_for_course
- Waffle flag removed as always-enabled
- Course update emails are sent as long as the ScheduleConfig
allows it.
- This is not a change in default behavior, because ScheduleConfig
is off by default.
dynamic_pacing.studio_course_update
- Waffle switch removed as always-enabled
- Course teams can now always edit course updates directly in Studio
ScheduleConfig.create_schedules
ScheduleConfig.hold_back_ratio
- Model fields for rolling out the schedules feature
- Schedules are now always created
- This commit only removes references to these fields, they still
exist in the database. A future commit will remove them entirely
This commit also adds a new has_highlights field to CourseOverview.
This is used to cache whether a course has highlights, used to
decide which course update email behavior they get. Previously every
enrollment had to dig into the modulestore to determine that.