Portions created by the Initial Developer are Copyright (C) 2008-2018 the Initial Developer. All Rights Reserved. Contributor(s): Mark J Crane */ function paging($num_rows, $param, $rows_per_page, $mini = false, $result_count = 0) { //add multi-lingual support $language = new text; $text = $language->get(); //default number of rows per page if (strlen($rows_per_page) == 0) { $rows_per_page = 50; } // show the first page by default $page_number = 0; // if $_get['page'] defined, use it as page number if(isset($_GET['page']) && is_numeric($_GET['page'])) { $page_number = $_GET['page']; } // counting the offset $offset = ($page_number - 1) * $rows_per_page; // how many pages we have when using paging if ($num_rows > 0) { $max_page = ceil($num_rows/$rows_per_page); } // print the link to access each page $self = $_SERVER['PHP_SELF']; $nav = ''; for($page = 1; $page <= $max_page; $page++){ if ($page == $page_number) { $nav .= " $page "; // no need to create a link to current page } else { $nav .= " $page \n"; } } if ($page_number > 0) { $page = $page_number - 1; $prev = "\n"; //◀ $first = "\n"; //▲ } else { $prev = "\n"; //◀ } if (($page_number + 1) < $max_page) { $page = $page_number + 1; $next = "\n"; //▶ $last = "\n"; //▼ } else { $last = "\n"; //▼ $next = "\n"; //▶ } //if the result count is less than the rows per page then this is the last page of results if ($result_count > 0 and $result_count < $rows_per_page) { $next = "\n"; //▶ } $array = array(); $code = ''; if ($max_page > 1) { //define javascript to include $script = "\n"; //determine size if ($mini) { $code = $prev.$next."\n".$script; } else { $code .= "
"; $code .= " ".$prev; $code .= "    "; $code .= " "; if ($result_count == 0) { $code .= "   ".$max_page.""; } $code .= "    "; $code .= " ".$next; $code .= "
\n".$script; } //add to array $array[] = $code; } else { $array[] = ""; } $array[] = $rows_per_page; $array[] = $offset; return $array; } ?>