MDL-57607 mod_assign: Make assign_refresh_events refresh overrides
Part of MDL-55611 epic.
This commit is contained in:
committed by
Dan Poltawski
parent
2229368a3c
commit
3651c22b75
+16
-10
@@ -118,19 +118,25 @@ function assign_refresh_events($courseid = 0) {
|
||||
}
|
||||
}
|
||||
foreach ($assigns as $assign) {
|
||||
// Use assignment's course column if courseid parameter is not given.
|
||||
if (!$courseid) {
|
||||
$courseid = $assign->course;
|
||||
if (!$course = $DB->get_record('course', array('id' => $courseid), '*')) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
if (!$cm = get_coursemodule_from_instance('assign', $assign->id, $courseid, false)) {
|
||||
continue;
|
||||
}
|
||||
// Get course and course module for the assignment.
|
||||
list($course, $cm) = get_course_and_cm_from_instance($assign->id, 'assign', $assign->course);
|
||||
|
||||
// Refresh the assignment's calendar events.
|
||||
$context = context_module::instance($cm->id);
|
||||
$assignment = new assign($context, $cm, $course);
|
||||
$assignment->update_calendar($cm->id);
|
||||
|
||||
// Refresh the calendar events also for the assignment overrides.
|
||||
$overrides = $DB->get_records('assign_overrides', ['assignid' => $assign->id], '', 'id, groupid, userid');
|
||||
foreach ($overrides as $override) {
|
||||
if (empty($override->userid)) {
|
||||
unset($override->userid);
|
||||
}
|
||||
if (empty($override->groupid)) {
|
||||
unset($override->groupid);
|
||||
}
|
||||
assign_update_events($assignment, $override);
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
|
||||
Reference in New Issue
Block a user