You are here

public function TrueFalseQuestion::getAnsweringForm in Quiz 6.x

Same name and namespace in other branches
  1. 8.6 question_types/quiz_truefalse/src/Plugin/quiz/QuizQuestion/TrueFalseQuestion.php \Drupal\quiz_truefalse\Plugin\quiz\QuizQuestion\TrueFalseQuestion::getAnsweringForm()
  2. 8.5 question_types/quiz_truefalse/src/Plugin/quiz/QuizQuestion/TrueFalseQuestion.php \Drupal\quiz_truefalse\Plugin\quiz\QuizQuestion\TrueFalseQuestion::getAnsweringForm()

Overrides QuizQuestionEntityTrait::getAnsweringForm

File

question_types/quiz_truefalse/src/Plugin/quiz/QuizQuestion/TrueFalseQuestion.php, line 42

Class

TrueFalseQuestion
@QuizQuestion ( id = "truefalse", label = Plugin annotation @Translation("True/false question"), handlers = { "response" = "\Drupal\quiz_truefalse\Plugin\quiz\QuizQuestion\TrueFalseResponse" } )

Namespace

Drupal\quiz_truefalse\Plugin\quiz\QuizQuestion

Code

public function getAnsweringForm(FormStateInterface $form_state, QuizResultAnswer $quizQuestionResultAnswer) : array {
  $element = parent::getAnsweringForm($form_state, $quizQuestionResultAnswer);
  $element += [
    '#type' => 'radios',
    '#title' => t('Choose one'),
    '#options' => [
      1 => t('True'),
      0 => t('False'),
    ],
  ];
  if ($quizQuestionResultAnswer
    ->isAnswered()) {
    if ($quizQuestionResultAnswer
      ->getResponse() != '') {
      $element['#default_value'] = $quizQuestionResultAnswer
        ->getResponse();
    }
  }
  return $element;
}