From 5ab708a16b2adeae2b8420fd23377dbae545fd1e Mon Sep 17 00:00:00 2001 From: jakubvrana Date: Wed, 25 Jul 2007 16:31:47 +0000 Subject: [PATCH] Compact pages git-svn-id: https://adminer.svn.sourceforge.net/svnroot/adminer/trunk@252 7c3ca157-0c34-0410-bff1-cbf682f78f5c --- select.inc.php | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/select.inc.php b/select.inc.php index d3de582b..1d76a7d3 100644 --- a/select.inc.php +++ b/select.inc.php @@ -174,10 +174,22 @@ function add_row(field) { } echo "\n"; if (intval($limit) && $found_rows > $limit) { - echo "

" . lang('Page') . ":\n"; - for ($i=0; $i < $found_rows / $limit; $i++) { - echo ($i == $_GET["page"] ? $i + 1 : '' . ($i + 1) . "") . "\n"; + $max_page = floor($found_rows / $limit); + function print_page($page) { + echo " " . ($page == $_GET["page"] ? $page + 1 : '' . ($page + 1) . ""); } + echo "

" . lang('Page') . ":"; + print_page(0); + if ($_GET["page"] > 3) { + echo " ..."; + } + for ($i = max(1, $_GET["page"] - 2); $i < min($max_page, $_GET["page"] + 3); $i++) { + print_page($i); + } + if ($_GET["page"] + 3 < $max_page) { + echo " ..."; + } + print_page($max_page); echo "

\n"; } }