See Release Notes
Long Term Support Release
<?php // This file is part of Moodle - http://moodle.org/ // // Moodle is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // Moodle is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with Moodle. If not, see <http://www.gnu.org/licenses/>. /** * A column with a checkbox for each question with name q{questionid}. * * @package core_question * @copyright 2009 Tim Hunt * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ namespace core_question\local\bank; use core\output\checkbox_toggleall; /** * A column with a checkbox for each question with name q{questionid}. * * @copyright 2009 Tim Hunt * @author 2021 Safat Shahin <safatshahin@catalyst-au.net> * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ class checkbox_column extends column_base { public function get_name(): string { return 'checkbox'; } public function get_title() { global $OUTPUT; $mastercheckbox = new checkbox_toggleall('qbank', true, [ 'id' => 'qbheadercheckbox', 'name' => 'qbheadercheckbox', 'value' => '1', 'label' => get_string('selectall'), 'labelclasses' => 'accesshide', ]); return $OUTPUT->render($mastercheckbox); } public function get_title_tip() { return get_string('selectquestionsforbulk', 'question'); }> public function display_header(array $columnactions = [], string $width = ''): void { protected function display_content($question, $rowclasses): void { > global $PAGE; global $OUTPUT; > $renderer = $PAGE->get_renderer('core_question', 'bank'); > $checkbox = new checkbox_toggleall('qbank', false, [ > $data = []; 'id' => "checkq{$question->id}", > $data['sortable'] = false; 'name' => "q{$question->id}", > $data['extraclasses'] = $this->get_classes(); 'value' => '1', > $name = get_class($this); 'label' => get_string('select'), > $data['sorttip'] = true; 'labelclasses' => 'accesshide', > $data['tiptitle'] = $this->get_title(); ]); > $data['tip'] = $this->get_title_tip(); > echo $OUTPUT->render($checkbox); > $data['colname'] = $this->get_column_name(); } > $data['columnid'] = $this->get_column_id(); > $data['name'] = get_string('selectall'); public function get_required_fields(): array { > $data['class'] = $name; return ['q.id']; > $data['width'] = $width; } > > echo $renderer->render_column_header($data); } > } >> public function get_default_width(): int { > return 30; > }