You are here

function quiz_my_results in Quiz 8.4

Same name and namespace in other branches
  1. 6.4 quiz.pages.inc \quiz_my_results()
  2. 7 quiz.pages.inc \quiz_my_results()
  3. 7.4 quiz.pages.inc \quiz_my_results()

Show results for the current quiz

1 call to quiz_my_results()
QuizController::quizMyResults in lib/Drupal/quiz/Controller/QuizController.php

File

./quiz.pages.inc, line 843
Page callback file for the quiz module.

Code

function quiz_my_results($node) {
  $user = \Drupal::currentUser();
  $results = array();
  $res = db_query('
    SELECT qnp.nid, qnp.pass_rate, qnrs.result_id, qnrs.time_start, qnrs.time_end, qnrs.score
    FROM {quiz_node_properties} qnp
    INNER JOIN {quiz_node_results} qnrs ON qnrs.vid = qnp.vid
    WHERE qnrs.uid = :uid AND qnrs.nid = :nid AND qnrs.is_evaluated = 1
    ORDER BY qnrs.result_id DESC', array(
    ':uid' => $user
      ->id(),
    ':nid' => $node
      ->id(),
  ));

  // Create an array out of the results.
  while ($line = $res
    ->fetchAssoc()) {
    $results[$line['result_id']] = $line;
  }
  return theme('quiz_my_results_for_quiz', array(
    'rows' => $results,
  ));
}