Merge branch 'MDL-68683-master' of git://github.com/lameze/moodle

This commit is contained in:
Adrian Greeve 2020-08-19 12:51:23 +08:00
commit 93eb0e5402

View File

@ -2194,8 +2194,11 @@ function xmldb_main_upgrade($oldversion) {
$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);
if ($record = $DB->get_record('context', ['contextlevel' => CONTEXT_USER, 'instanceid' => $userevidence->userid],
'*', IGNORE_MISSING)) {
// Delete all orphaned user evidences files.
$fs->delete_area_files($record->id, 'core_competency', 'userevidence', $userevidence->userid);
}
}
$sql = "SELECT cp.id
@ -2539,5 +2542,24 @@ function xmldb_main_upgrade($oldversion) {
upgrade_main_savepoint(true, 2020072300.01);
}
if ($oldversion < 2020081400.01) {
// Delete all user evidence files from users that have been deleted.
$sql = "SELECT DISTINCT f.*
FROM {files} f
LEFT JOIN {context} c ON f.contextid = c.id
LEFT JOIN {user} u ON c.instanceid = u.id
WHERE f.component = :component
AND f.filearea = :filearea
AND u.deleted = 1";
$stalefiles = $DB->get_records_sql($sql, ['component' => 'core_competency', 'filearea' => 'userevidence']);
$fs = get_file_storage();
foreach ($stalefiles as $stalefile) {
$fs->get_file_instance($stalefile)->delete();
}
upgrade_main_savepoint(true, 2020081400.01);
}
return true;
}