MDL-72672 lesson: add label for true/false checkboxes

This commit is contained in:
Simey Lameze 2021-11-03 13:33:55 +08:00
parent f540540b9e
commit e2649db6c4

View file

@ -267,7 +267,7 @@ class lesson_page_type_truefalse extends lesson_page {
} }
if (in_array($answer->id, $userresponse)) { if (in_array($answer->id, $userresponse)) {
// make checked // make checked
$data = "<input readonly=\"readonly\" disabled=\"disabled\" name=\"answer[$i]\" checked=\"checked\" type=\"checkbox\" value=\"1\" />"; $checkboxelement = "<input readonly=\"readonly\" disabled=\"disabled\" name=\"answer[$i]\" checked=\"checked\" type=\"checkbox\" value=\"1\" />";
if (!isset($answerdata->response)) { if (!isset($answerdata->response)) {
if ($answer->response == null) { if ($answer->response == null) {
if ($useranswer->correct) { if ($useranswer->correct) {
@ -290,17 +290,19 @@ class lesson_page_type_truefalse extends lesson_page {
} }
} else { } else {
// unchecked // unchecked
$data = "<input type=\"checkbox\" readonly=\"readonly\" name=\"answer[$i]\" value=\"0\" disabled=\"disabled\" />"; $checkboxelement = "<input type=\"checkbox\" readonly=\"readonly\" name=\"answer[$i]\" value=\"0\" disabled=\"disabled\" />";
} }
if (($answer->score > 0 && $this->lesson->custom) || ($this->lesson->jumpto_is_correct($this->properties->id, $answer->jumpto) && !$this->lesson->custom)) { if (($answer->score > 0 && $this->lesson->custom) || ($this->lesson->jumpto_is_correct($this->properties->id, $answer->jumpto) && !$this->lesson->custom)) {
$data .= "<div class=highlight>".format_text($answer->answer, $answer->answerformat, $formattextdefoptions)."</div>"; $answertext = $checkboxelement . format_text($answer->answer, $answer->answerformat, $formattextdefoptions);
$data = "<div class='highlight'><label>$answertext</label></div>";
} else { } else {
$data .= format_text($answer->answer, $answer->answerformat, $formattextdefoptions); $answertext = $checkboxelement . format_text($answer->answer, $answer->answerformat, $formattextdefoptions);
$data = "<label>$answertext</label>";
} }
} else { } else {
if ($useranswer != null and $answer->id == $useranswer->answerid) { if ($useranswer != null and $answer->id == $useranswer->answerid) {
// make checked // make checked
$data = "<input readonly=\"readonly\" disabled=\"disabled\" name=\"answer[$i]\" checked=\"checked\" type=\"checkbox\" value=\"1\" />"; $checkboxelement = "<input readonly=\"readonly\" disabled=\"disabled\" name=\"answer[$i]\" checked=\"checked\" type=\"checkbox\" value=\"1\" />";
if ($answer->response == null) { if ($answer->response == null) {
if ($useranswer->correct) { if ($useranswer->correct) {
$answerdata->response = get_string("thatsthecorrectanswer", "lesson"); $answerdata->response = get_string("thatsthecorrectanswer", "lesson");
@ -319,12 +321,14 @@ class lesson_page_type_truefalse extends lesson_page {
} }
} else { } else {
// unchecked // unchecked
$data = "<input type=\"checkbox\" readonly=\"readonly\" name=\"answer[$i]\" value=\"0\" disabled=\"disabled\" />"; $checkboxelement = "<input type=\"checkbox\" readonly=\"readonly\" name=\"answer[$i]\" value=\"0\" disabled=\"disabled\" />";
} }
if (($answer->score > 0 && $this->lesson->custom) || ($this->lesson->jumpto_is_correct($this->properties->id, $answer->jumpto) && !$this->lesson->custom)) { if (($answer->score > 0 && $this->lesson->custom) || ($this->lesson->jumpto_is_correct($this->properties->id, $answer->jumpto) && !$this->lesson->custom)) {
$data .= "<div class=\"highlight\">".format_text($answer->answer, $answer->answerformat, $formattextdefoptions)."</div>"; $answertext = $checkboxelement . format_text($answer->answer, $answer->answerformat, $formattextdefoptions);
$data = "<div class='highlight'><label>$answertext</label></div>";
} else { } else {
$data .= format_text($answer->answer, $answer->answerformat, $formattextdefoptions); $answertext = $checkboxelement . format_text($answer->answer, $answer->answerformat, $formattextdefoptions);
$data = "<label>$answertext</label>";
} }
} }
if (isset($pagestats[$this->properties->id][$answer->id])) { if (isset($pagestats[$this->properties->id][$answer->id])) {