You are here

function views_simple_pager::set_current_page in Views Simple Pager 7

Set the current page.

Parameters

$number: If provided, the page number will be set to this. If NOT provided, the page number will be set from the global page array.

Overrides views_plugin_pager::set_current_page

File

./views_simple_pager.views.inc, line 205
Views plugin implementations for Views Simple Pager.

Class

views_simple_pager
The plugin to provide the Views Simple Pager.

Code

function set_current_page($number = NULL) {
  if (isset($number)) {
    $this->current_page = $number;
    return;
  }

  // If the current page number was not specified, extract it from the global
  // page array.
  global $pager_page_array;
  if (empty($pager_page_array)) {
    $pager_page_array = array();
  }

  // Fill in missing values in the global page array, in case the global page
  // array hasn't been initialized before.
  $page = isset($_GET['page']) ? explode(',', $_GET['page']) : array();
  for ($i = 0; $i <= $this->options['id'] || $i < count($pager_page_array); $i++) {
    $pager_page_array[$i] = empty($page[$i]) ? 0 : $page[$i];
  }
  $this->current_page = intval($pager_page_array[$this->options['id']]);
  if ($this->current_page < 0) {
    $this->current_page = 0;
  }
}