MDL-72771 core_course: Set module visibility after moving it

Move a module to another section needs to update its visibility after
placing it into the new section. Otherwise an invalid database state
prevents the system to move any module with a completion rule
involving grades.
This commit is contained in:
Marc Català
2022-01-07 14:27:24 +01:00
committed by Marc Català
parent d6688ad206
commit d98bf4c5ff
+3 -2
View File
@@ -1744,6 +1744,9 @@ function moveto_module($mod, $section, $beforemod=NULL) {
echo $OUTPUT->notification("Could not delete module from existing section");
}
// Add the module into the new section.
course_add_cm_to_section($section->course, $mod->id, $section->section, $beforemod);
// If moving to a hidden section then hide module.
if ($mod->section != $section->id) {
if (!$section->visible && $mod->visible) {
@@ -1760,8 +1763,6 @@ function moveto_module($mod, $section, $beforemod=NULL) {
}
}
// Add the module into the new section.
course_add_cm_to_section($section->course, $mod->id, $section->section, $beforemod);
return $modvisible;
}