Notices from T/F question is you submit without answering in adaptive mode. Merged from OU Moodle.

This commit is contained in:
tjhunt
2007-06-19 16:35:58 +00:00
parent 7ee50b87b8
commit e1e7d03480
+11 -6
View File
@@ -161,8 +161,13 @@ class question_truefalse_qtype extends default_questiontype {
$falsefeedbackimg = '';
// Work out which radio button to select (if any)
$truechecked = ($state->responses[''] == $trueanswer->id) ? ' checked="checked"' : '';
$falsechecked = ($state->responses[''] == $falseanswer->id) ? ' checked="checked"' : '';
if (isset($state->responses[''])) {
$response = $state->responses[''];
} else {
$response = '';
}
$truechecked = ($response == $trueanswer->id) ? ' checked="checked"' : '';
$falsechecked = ($response == $falseanswer->id) ? ' checked="checked"' : '';
// Work out visual feedback for answer correctness.
if ($options->feedback) {
@@ -173,7 +178,7 @@ class question_truefalse_qtype extends default_questiontype {
}
}
if ($options->feedback || $options->correct_responses) {
if (isset($answers[$state->responses['']])) {
if (isset($answers[$response])) {
$truefeedbackimg = question_get_feedback_image($trueanswer->fraction, !empty($truechecked) && $options->feedback);
$falsefeedbackimg = question_get_feedback_image($falseanswer->fraction, !empty($falsechecked) && $options->feedback);
}
@@ -193,8 +198,8 @@ class question_truefalse_qtype extends default_questiontype {
. s($falseanswer->answer) . '</label>';
$feedback = '';
if ($options->feedback and isset($answers[$state->responses['']])) {
$chosenanswer = $answers[$state->responses['']];
if ($options->feedback and isset($answers[$response])) {
$chosenanswer = $answers[$response];
$feedback = format_text($chosenanswer->feedback, true, $formatoptions, $cmoptions->course);
}
@@ -202,7 +207,7 @@ class question_truefalse_qtype extends default_questiontype {
}
function grade_responses(&$question, &$state, $cmoptions) {
if (isset($question->options->answers[$state->responses['']])) {
if (isset($state->responses['']) && isset($question->options->answers[$state->responses['']])) {
$state->raw_grade = $question->options->answers[$state->responses['']]->fraction * $question->maxgrade;
} else {
$state->raw_grade = 0;