私はMoodle 2.7
を使用していますし、Quiz activity
に概要ページが学習者のすべての試みがのためにそこにあります。 テーブルは今能力を持つ唯一の管理ユーザーやユーザー'mod/quiz:viewreports'
がテーブルを参照することができmymoodle/mod/quiz/report.php?id=50&mode=overview
表示データ
の下にあります。 を使用しないでユーザーを追加するには、このレポートを見ることができますか?
今の機能を持たないすべてのユーザーが、report.php
からエラーを取得します。
$reportlist = quiz_report_list($context);
if (empty($reportlist) !totara_is_manager($userid)) {
print_error('erroraccessingreport', 'quiz');
}
// Validate the requested report name.
if ($mode == '') {
// Default to first accessible report and redirect.
$url->param('mode', reset($reportlist));
redirect($url);
} else if (!in_array($mode, $reportlist)) {
print_error('erroraccessingreport', 'quiz');
}
if (!is_readable("report/$mode/report.php")) {
print_error('reportnotfound', 'quiz', '', $mode);
}
テーブル機能はreportlib.php
の下にある:
function quiz_report_list($context) {
global $DB;
static $reportlist = null;
if (!is_null($reportlist)) {
return $reportlist;
}
$reports = $DB->get_records('quiz_reports', null, 'displayorder DESC', 'name, capability');
$reportdirs = core_component::get_plugin_list('quiz');
// Order the reports tab in descending order of displayorder.
$reportcaps = array();
foreach ($reports as $key => $report) {
if (array_key_exists($report->name, $reportdirs)) {
$reportcaps[$report->name] = $report->capability;
}
}
// Add any other reports, which are on disc but not in the DB, on the end.
foreach ($reportdirs as $reportname => $notused) {
if (!isset($reportcaps[$reportname])) {
$reportcaps[$reportname] = null;
}
}
$reportlist = array();
foreach ($reportcaps as $name => $capability) {
if (empty($capability)) {
$capability = 'mod/quiz:viewreports';
}
if (has_capability($capability, $context)) {
$reportlist[] = $name;
}
}
return $reportlist;
}
私はで指定された人々を追加しますid、の管理者。
ありがとうございました。私は結果を試して比較し、ここでフィードバックをします。 – StartVader