お世話になります。
MicrosoftのクラウドサービスAzureのマーケットプレイスを利用して、Moodleを立ち上げました。
環境は、Moodle 3.4.0-0、OSは、Debian 8となっています。
当該表示を、ページの最上部に表示することは可能なのでしょうか?
ご教授いただければ幸いです。
> 当該表示を、ページの最上部に表示することは可能なのでしょうか?
可能です。バージョンアップ時に毎回プログラム修正作業が発生することになりますが、よろしければ下記プログラム修正をお試しください。
修正対象プログラム:
mod/quiz/report/attemptsreport_table.php
修正箇所:
590行目
[ 修正前 ]
public function wrap_html_start() {
if ($this->is_downloading() || !$this->includecheckboxes) {
return;
}
$url = $this->options->get_url();
$url->param('sesskey', sesskey());
echo '<div id="tablecontainer">';
echo '<form id="attemptsform" method="post" action="' . $url->out_omit_querystring() . '">';
echo html_writer::input_hidden_params($url);
echo '<div>';
}
public function wrap_html_finish() {
global $PAGE;
if ($this->is_downloading() || !$this->includecheckboxes) {
return;
}
echo '<div id="commands">';
echo '<a id="checkattempts" href="#">' .
get_string('selectall', 'quiz') . '</a> / ';
echo '<a id="uncheckattempts" href="#">' .
get_string('selectnone', 'quiz') . '</a> ';
$PAGE->requires->js_amd_inline("
require(['jquery'], function($) {
$('#checkattempts').click(function(e) {
$('#attemptsform').find('input:checkbox').prop('checked', true);
e.preventDefault();
});
$('#uncheckattempts').click(function(e) {
$('#attemptsform').find('input:checkbox').prop('checked', false);
e.preventDefault();
});
});");
echo ' ';
$this->submit_buttons();
echo '</div>';
// Close the form.
echo '</div>';
echo '</form></div>';
}
[ 修正後 ]
public function wrap_html_start() {
global $PAGE;
if ($this->is_downloading() || !$this->includecheckboxes) {
return;
}
$url = $this->options->get_url();
$url->param('sesskey', sesskey());
echo '<div id="tablecontainer">';
echo '<form id="attemptsform" method="post" action="' . $url->out_omit_querystring() . '">';
echo html_writer::input_hidden_params($url);
echo '<div>';
echo '<div id="commands">';
echo '<a id="checkattempts" href="#">' .
get_string('selectall', 'quiz') . '</a> / ';
echo '<a id="uncheckattempts" href="#">' .
get_string('selectnone', 'quiz') . '</a> ';
$PAGE->requires->js_amd_inline("
require(['jquery'], function($) {
$('#checkattempts').click(function(e) {
$('#attemptsform').find('input:checkbox').prop('checked', true);
e.preventDefault();
});
$('#uncheckattempts').click(function(e) {
$('#attemptsform').find('input:checkbox').prop('checked', false);
e.preventDefault();
});
});");
echo ' ';
$this->submit_buttons();
echo '</div>';
}
public function wrap_html_finish() {
// global $PAGE;
if ($this->is_downloading() || !$this->includecheckboxes) {
return;
}
// echo '<div id="commands">';
// echo '<a id="checkattempts" href="#">' .
// get_string('selectall', 'quiz') . '</a> / ';
// echo '<a id="uncheckattempts" href="#">' .
// get_string('selectnone', 'quiz') . '</a> ';
// $PAGE->requires->js_amd_inline("
// require(['jquery'], function($) {
// $('#checkattempts').click(function(e) {
// $('#attemptsform').find('input:checkbox').prop('checked', true);
// e.preventDefault();
// });
// $('#uncheckattempts').click(function(e) {
// $('#attemptsform').find('input:checkbox').prop('checked', false);
// e.preventDefault();
// });
// });");
// echo ' ';
// $this->submit_buttons();
// echo '</div>';
// Close the form.
echo '</div>';
echo '</form></div>';
}