mirror of
https://github.com/moodle/moodle.git
synced 2025-04-21 08:22:07 +02:00
MDL-61870 mod_assign: Conditionally backup groups
When group info is not backed up, do not backup assignment submissions or overrides that related to a specific group. We are already correctly not restoring them, but it is more robust not to include them in the backup file at all.
This commit is contained in:
parent
8ea4df50c9
commit
192e48bb90
@ -61,6 +61,7 @@ class backup_assign_activity_structure_step extends backup_activity_structure_st
|
||||
|
||||
// To know if we are including userinfo.
|
||||
$userinfo = $this->get_setting_value('userinfo');
|
||||
$groupinfo = $this->get_setting_value('groups');
|
||||
|
||||
// Define each element separated.
|
||||
$assign = new backup_nested_element('assign', array('id'),
|
||||
@ -159,8 +160,12 @@ class backup_assign_activity_structure_step extends backup_activity_structure_st
|
||||
$userflag->set_source_table('assign_user_flags',
|
||||
array('assignment' => backup::VAR_PARENTID));
|
||||
|
||||
$submission->set_source_table('assign_submission',
|
||||
array('assignment' => backup::VAR_PARENTID));
|
||||
$submissionparams = array('assignment' => backup::VAR_PARENTID);
|
||||
if (!$groupinfo) {
|
||||
// Without group info, skip group submissions.
|
||||
$submissionparams['groupid'] = backup_helper::is_sqlparam(0);
|
||||
}
|
||||
$submission->set_source_table('assign_submission', $submissionparams);
|
||||
|
||||
$grade->set_source_table('assign_grades',
|
||||
array('assignment' => backup::VAR_PARENTID));
|
||||
@ -172,6 +177,10 @@ class backup_assign_activity_structure_step extends backup_activity_structure_st
|
||||
$overrideparams['userid'] = backup_helper::is_sqlparam(null); // Without userinfo, skip user overrides.
|
||||
}
|
||||
|
||||
if (!$groupinfo) {
|
||||
// Without group info, skip group overrides.
|
||||
$overrideparams['groupid'] = backup_helper::is_sqlparam(0);
|
||||
}
|
||||
$override->set_source_table('assign_overrides', $overrideparams);
|
||||
|
||||
// Define id annotations.
|
||||
|
Loading…
x
Reference in New Issue
Block a user