MDL-60126 core: upgrade step to clean user comp

This commit is contained in:
Simey Lameze
2020-02-04 08:51:45 +08:00
committed by Mihail Geshoski
parent c852a0d308
commit 75c21efdea
2 changed files with 44 additions and 1 deletions
+43
View File
@@ -3808,5 +3808,48 @@ function xmldb_main_upgrade($oldversion) {
upgrade_main_savepoint(true, 2019111801.02);
}
if ($oldversion < 2019111801.05) {
global $DB;
// Delete any associated files.
$fs = get_file_storage();
$sql = "SELECT cuc.id, cuc.userid
FROM {competency_usercomp} cuc
LEFT JOIN {user} u ON cuc.userid = u.id
WHERE u.deleted = 1";
$usercompetencies = $DB->get_records_sql($sql);
foreach ($usercompetencies as $usercomp) {
$DB->delete_records('competency_evidence', ['usercompetencyid' => $usercomp->id]);
$DB->delete_records('competency_usercompcourse', ['userid' => $usercomp->userid]);
$DB->delete_records('competency_usercompplan', ['userid' => $usercomp->userid]);
$DB->delete_records('competency_usercomp', ['userid' => $usercomp->userid]);
}
$sql = "SELECT cue.id, cue.userid
FROM {competency_userevidence} cue
LEFT JOIN {user} u ON cue.userid = u.id
WHERE u.deleted = 1";
$userevidences = $DB->get_records_sql($sql);
foreach ($userevidences as $userevidence) {
$DB->delete_records('competency_userevidencecomp', ['userevidenceid' => $userevidence->id]);
$DB->delete_records('competency_userevidence', ['id' => $userevidence->id]);
$context = context_user::instance($userevidence->userid);
$fs->delete_area_files($context->id, 'core_competency', 'userevidence', $userevidence->id);
}
$sql = "SELECT cp.id
FROM {competency_plan} cp
LEFT JOIN {user} u ON cp.userid = u.id
WHERE u.deleted = 1";
$userplans = $DB->get_records_sql($sql);
foreach ($userplans as $userplan) {
$DB->delete_records('competency_plancomp', ['planid' => $userplan->id]);
$DB->delete_records('competency_plan', ['id' => $userplan->id]);
}
// Main savepoint reached.
upgrade_main_savepoint(true, 2019111801.05);
}
return true;
}
+1 -1
View File
@@ -29,7 +29,7 @@
defined('MOODLE_INTERNAL') || die();
$version = 2019111801.04; // 20191118 = branching date YYYYMMDD - do not modify!
$version = 2019111801.05; // 20191118 = branching date YYYYMMDD - do not modify!
// RR = release increments - 00 in DEV branches.
// .XX = incremental changes.
$release = '3.8.1+ (Build: 20200130)'; // Human-friendly version name