diff --git a/mod/quiz/lib.php b/mod/quiz/lib.php index 3f7422b0688..dd23884a583 100644 --- a/mod/quiz/lib.php +++ b/mod/quiz/lib.php @@ -821,11 +821,25 @@ function quiz_get_post_actions() { /** * Returns an array of names of quizzes that use this question * - * TODO: write this * @param object $questionid * @return array of strings */ function quiz_question_list_instances($questionid) { + global $CFG; + + // TODO: we should also consider other questions that are used by + // random questions in this quiz, but that is very hard. + + $sql = "SELECT q.id, q.name + FROM {$CFG->prefix}quiz q + INNER JOIN + {$CFG->prefix}quiz_question_instances qqi + ON q.id = qqi.quiz + WHERE qqi.question = '$questionid'"; + + if ($instances = get_records_sql_menu($sql)) { + return $instances; + } return array(); }