-
Notifications
You must be signed in to change notification settings - Fork 2
/
edit_knowledgecheck_form.php
77 lines (70 loc) · 2.58 KB
/
edit_knowledgecheck_form.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
<?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/>.
/**
* Defines the editing form for the knowledge check question type.
*
* @package qtype_knowledgecheck
* @copyright (c) The Regents of the University of California
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
/**
* Knowledge check question editing form definition.
*
* @package qtype_knowledgecheck
* @copyright (c) The Regents of the University of California
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class qtype_knowledgecheck_edit_form extends question_edit_form {
/**
* {@inheritdoc}
*
* @param object $mform The form being built.
*/
protected function definition_inner($mform) {
$mform->addElement('editor', 'responsetemplate', get_string('responsetemplate', 'qtype_knowledgecheck'),
['rows' => 10], array_merge($this->editoroptions, ['maxfiles' => 0]));
$mform->addHelpButton('responsetemplate', 'responsetemplate', 'qtype_knowledgecheck');
$this->add_per_answer_fields($mform, get_string('answerno', 'qtype_knowledgecheck', '{no}'),
['1.0' => '100%'], 1, 0);
}
/**
* {@inheritdoc}
*
* @param object $question The data being passed to the form.
* @return object $question The modified data.
*/
protected function data_preprocessing($question) {
$question = parent::data_preprocessing($question);
$question = $this->data_preprocessing_answers($question);
$question = $this->data_preprocessing_hints($question);
if (empty($question->options)) {
return $question;
}
$question->responsetemplate = [
'text' => $question->options->responsetemplate,
'format' => 1,
];
return $question;
}
/**
* {@inheritdoc}
*
* @return string The question type name.
*/
public function qtype() {
return 'knowledgecheck';
}
}