diff --git a/plugin/migrationmoodle/admin.php b/plugin/migrationmoodle/admin.php index 5adf3064a3..5ac9469f20 100644 --- a/plugin/migrationmoodle/admin.php +++ b/plugin/migrationmoodle/admin.php @@ -100,6 +100,10 @@ $menu = [ 'action' => 'quizzes', 'parent' => 6, ], + 22 => [ + 'action' => 'files_for_quizzes', + 'parent' => 21, + ], ]; Display::display_header($plugin->get_title()); diff --git a/plugin/migrationmoodle/lang/english.php b/plugin/migrationmoodle/lang/english.php index c878f7fdb2..5b161c31f6 100644 --- a/plugin/migrationmoodle/lang/english.php +++ b/plugin/migrationmoodle/lang/english.php @@ -29,3 +29,4 @@ $strings['CourseModulesQuizTask'] = 'Course modules: Quizzes'; $strings['CQuizTask'] = 'C Quiz'; $strings['RoleAssignmentsTask'] = 'Role assignments'; $strings['QuizzesTask'] = 'Quizzes'; +$strings['FilesForQuizzesTask'] = 'Files for quizzes'; diff --git a/plugin/migrationmoodle/src/Task/FilesForQuizzesTask.php b/plugin/migrationmoodle/src/Task/FilesForQuizzesTask.php new file mode 100644 index 0000000000..bbe84861ec --- /dev/null +++ b/plugin/migrationmoodle/src/Task/FilesForQuizzesTask.php @@ -0,0 +1,40 @@ + BaseExtractor::class, + 'query' => "SELECT + f.id, + f.contenthash, + f.filepath, + f.filename, + f.filesize, + f.mimetype, + cm.course + FROM mdl_files f + INNER JOIN mdl_context c ON f.contextid = c.id + INNER JOIN mdl_course_modules cm ON c.instanceid = cm.id + WHERE f.component = 'mod_quiz' + AND f.filearea = 'intro' + AND c.contextlevel = 70 + AND f.filename NOT IN ('.', '..')", + ]; + } +}