You are here

function _quiz_pagination_helper in Quiz 8.6

Same name in this branch
  1. 8.6 quiz.module \_quiz_pagination_helper()
  2. 8.6 quiz.theme.inc \_quiz_pagination_helper()
Same name and namespace in other branches
  1. 8.5 quiz.module \_quiz_pagination_helper()
  2. 8.5 quiz.theme.inc \_quiz_pagination_helper()
  3. 7.6 quiz.pages.inc \_quiz_pagination_helper()
  4. 7.5 quiz.theme.inc \_quiz_pagination_helper()
  5. 6.x quiz.module \_quiz_pagination_helper()

Help us with special pagination.

Why not the Drupal theme_pager()?

It uses query strings. We have access on each menu argument (quiz question number) so we unfortunately cannot use it.

2 calls to _quiz_pagination_helper()
QuizQuestionController::take in src/Controller/QuizQuestionController.php
Take a quiz questions.
theme_quiz_pager in ./quiz.theme.inc
Theme the quiz pager.

File

./quiz.module, line 853
Contains quiz.module

Code

function _quiz_pagination_helper($total, $perpage = NULL, $current = NULL, $siblings = NULL) {
  $result = array();
  if (isset($total, $perpage) === TRUE) {
    $result = range(1, ceil($total / $perpage));
    if (isset($current, $siblings) === TRUE) {
      if (($siblings = floor($siblings / 2) * 2 + 1) >= 1) {
        $result = array_slice($result, max(0, min(count($result) - $siblings, intval($current) - ceil($siblings / 2))), $siblings);
      }
    }
  }
  return $result;
}