画面が真っ白(ヘッダーのナビメニュー等も一切表示されない)とすると,mod/assignment/lib.phpのfunction display_submissions()の
$tabindex = 1; //tabindex for quick grading tabbing; Not working for dropdowns yet
add_to_log($course->id, 'assignment', 'view submission', 'submissions.php?id='.$this->assignment->id, $this->assignment->id, $this->cm->id);
$navigation = build_navigation($this->strsubmissions, $this->cm);
print_header_simple(format_string($this->assignment->name,true), "", $navigation,
'', '', true, update_module_button($cm->id, $course->id, $this->strassignment), navmenu($course, $cm));
このprint_header_simple()の前までに何かが起きているということですね. ここまで到達しているならば,Moodleの課題のログに"assignment view submission"と記録されているはずです.
このfunction display_submissions()へは,同じmod/assignment/lib.phpのfunction submissions()から,($modeが'all'と仮定すれば)ダイレクトに呼ばれていますので,原因が予想しにくいですね.
function submissions($mode) {
global $USER;
$mailinfo = optional_param('mailinfo', null, PARAM_BOOL);
if (is_null($mailinfo)) {
$mailinfo = get_user_preferences('assignment_mailinfo', 0);
} else {
set_user_preference('assignment_mailinfo', $mailinfo);
}
switch ($mode) {
case 'grade': // We are in a popup window grading
(略)
break;
case 'single': // We are in a popup window displaying submission
$this->display_submission();
break;
case 'all': // Main window, display everything
$this->display_submissions();
break;
このfunction submissions()は,mod/assignment/submissions.phpから,ほぼ直接呼び出されています.
require_login($course->id, false, $cm);
require_capability('mod/assignment:grade', get_context_instance(CONTEXT_MODULE, $cm->id));
この2つのチェックを除けば,エラー表示(error())されるはずですからね.
うーん,エラーも出さずに終了してしまうような箇所はパッと見では見当たらないですね.
サイト管理/サーバ/デバッグ のデバッグメッセージはNORMAL / ALL / DEVELOPER 何れかを設定されていますよね?
白井先生、こちらの勘違いで、Moodle側のデバッグメッセージはNone
になっていました。デバッグメッセージを表示する状態で、問題解決前の環境をつくると、
Notice: Undefined variable: fullname in /var/www/html/moodle/mod/assignment/lib.php on line 1306
Fatal error: Function name must be a string in /var/www/html/moodle/mod/assignment/lib.php on line 1306
が出ていたようです。
それからまっしろという表現も正しくなく、ヘッダメニューなどは表示され、課題一覧が出るはずの位置のみまっしろということでした。
併せてお詫び申し上げます。
まずは動作するようになったということで、ご報告いたします。
今後ともよろしくお願いいたします。
先生方、たびたび失礼します。
実は、後日談が出てしまいまして、教師の課題一覧の方は解決しましたが、学生側の画面で、提出した課題が表示されなくなってしまいました(単一ファイルのアップロードのみで確認)。
先と同様、提出物が出るはずの画面までは正常で、そのあと表示されない現象です。下のエラーが出ています。
Fatal error: Call to undefined function get_file_url() in /var/www/html/moodle/mod/assignment/lib.php on line 2011
お知恵を拝借できれば幸いです。
function get_file_url()は比較的新しく追加された関数です.
http://moodle.org/mod/forum/discuss.php?d=94845
いまご使用中のMoodleの,lib/filelib.phpの頭のあたりにこの関数が存在しないのであれば,filelib.phpが古い可能性があります.(あるいはMoodle全体が).
もしlib/filelib.php中にget_file_url()関数が宣言されているのであれば,lib/filelib.phpをインクルードし損ねているということになります.
#なんとなく,mod/assignment/lib.phpのみ最新で,それ以外は古いバージョンなのではないか?と思います.