You are here

public function QuizQuestionResponse::getReportForm in Quiz 7.5

Same name and namespace in other branches
  1. 6.4 question_types/quiz_question/quiz_question.core.inc \QuizQuestionResponse::getReportForm()
  2. 7.6 question_types/quiz_question/quiz_question.core.inc \QuizQuestionResponse::getReportForm()
  3. 7 question_types/quiz_question/quiz_question.core.inc \QuizQuestionResponse::getReportForm()
  4. 7.4 question_types/quiz_question/quiz_question.core.inc \QuizQuestionResponse::getReportForm()

Creates the report form for the admin pages, and for when a user gets feedback after answering questions.

The report is a form to allow editing scores and the likes while viewing the report form.

Return value

array|null An renderable FAPI array

2 methods override QuizQuestionResponse::getReportForm()
QuizDirectionsResponse::getReportForm in question_types/quiz_directions/quiz_directions.classes.inc
Implementation of getReportForm().
QuizPagesResponse::getReportForm in question_types/quiz_page/quiz_page.classes.inc
Implementation of getReportForm().

File

question_types/quiz_question/quiz_question.core.inc, line 714
Classes used in the Quiz Question module.

Class

QuizQuestionResponse
Each question type must store its own response data and be able to calculate a score for that data.

Code

public function getReportForm() {

  // Add general data, and data from the question type implementation.
  $form = array();
  $form['nid'] = array(
    '#type' => 'value',
    '#value' => $this->question->nid,
  );
  $form['vid'] = array(
    '#type' => 'value',
    '#value' => $this->question->vid,
  );
  $form['result_id'] = array(
    '#type' => 'value',
    '#value' => $this->result_id,
  );
  $form['display_number'] = array(
    '#type' => 'value',
    '#value' => $this->display_number,
  );
  $quiz_result = quiz_result_load($this->result_id);
  if (quiz_access_to_score($quiz_result)) {
    if ($submit = $this
      ->getReportFormSubmit()) {
      $form['score'] = $this
        ->getReportFormScore();
      $form['answer_feedback'] = $this
        ->getReportFormAnswerFeedback();
      $form['submit'] = array(
        '#type' => 'value',
        '#value' => $submit,
      );
    }
    return $form;
  }
}