MDL-43697 backup: Archived badges are restored during course restore

This commit is contained in:
Daniel Kristian Steffensen 2020-12-07 13:22:23 +01:00 committed by Jacob Christiansen
parent 713b28c2a5
commit 8b16724fef

View file

@ -832,6 +832,9 @@ class backup_badges_structure_step extends backup_structure_step {
}
protected function define_structure() {
global $CFG;
require_once($CFG->libdir . '/badgeslib.php');
// Define each element separated.
@ -883,7 +886,15 @@ class backup_badges_structure_step extends backup_structure_step {
// Define sources.
$badge->set_source_table('badge', array('courseid' => backup::VAR_COURSEID));
$parametersql = '
SELECT *
FROM {badge}
WHERE courseid = :courseid
AND status != ' . BADGE_STATUS_ARCHIVED;
$parameterparams = [
'courseid' => backup::VAR_COURSEID
];
$badge->set_source_sql($parametersql, $parameterparams);
$criterion->set_source_table('badge_criteria', array('badgeid' => backup::VAR_PARENTID));
$endorsement->set_source_table('badge_endorsement', array('badgeid' => backup::VAR_PARENTID));