You are here

class QuizDirectionsResponse in Quiz 6.6

Same name and namespace in other branches
  1. 6.3 question_types/quiz_directions/quiz_directions.classes.inc \QuizDirectionsResponse
  2. 6.4 question_types/quiz_directions/quiz_directions.classes.inc \QuizDirectionsResponse
  3. 6.5 question_types/quiz_directions/quiz_directions.classes.inc \QuizDirectionsResponse
  4. 7.6 question_types/quiz_directions/quiz_directions.classes.inc \QuizDirectionsResponse
  5. 7 question_types/quiz_directions/quiz_directions.classes.inc \QuizDirectionsResponse
  6. 7.4 question_types/quiz_directions/quiz_directions.classes.inc \QuizDirectionsResponse
  7. 7.5 question_types/quiz_directions/quiz_directions.classes.inc \QuizDirectionsResponse

Class that describes a "Directions question response". For the most part, no real scoring takes place for a direction node. However, there are a few behind-the-scenes tricks that are done here to make the quiz-taking process a little easier.

Hierarchy

Expanded class hierarchy of QuizDirectionsResponse

1 string reference to 'QuizDirectionsResponse'
quiz_directions_quiz_question_info in question_types/quiz_directions/quiz_directions.module
Implementation of hook_quiz_question_info().

File

question_types/quiz_directions/quiz_directions.classes.inc, line 87
quiz_directions.classes

View source
class QuizDirectionsResponse extends AbstractQuizQuestionResponse {
  public function __construct($rid, $question, $answer = NULL) {
    $this->answer = $answer;
    $this->question = $question;
    $this->rid = $rid;
  }
  public function save() {
  }
  public function delete() {
  }
  public function score() {

    // First, due to popular demand, if the directions are at the beginning of
    // the quiz, we restart the timer after the user has read the question.
    $quiz_nid = arg(1);
    $quiz_key = 'quiz_' . $quiz_nid;
    if (isset($_SESSION[$quiz_key]['previous_quiz_questions']) && count($_SESSION[$quiz_key]['previous_quiz_questions']) === 1) {

      // reset the timer.
      $sql = 'UPDATE {quiz_node_results} SET time_start=%d WHERE result_id = %d';
      db_query($sql, time(), $this->rid);
    }

    // Set the score
    $this->score = 0;
    return 0;
  }
  public function isCorrect() {
    return TRUE;
  }
  public function getResponse() {
    return $answer;
  }
  public function formatReport($showpoints = TRUE, $showfeedback = TRUE) {
    return '';
  }

}

Members