Simplify pager

This commit is contained in:
ruan 2020-08-18 16:54:31 +02:00
parent eb761dffd3
commit 2c0b588b48
3 changed files with 17 additions and 27 deletions

View File

@ -103,7 +103,9 @@ tr.hover {
} }
.litebans-pager-inactive { .litebans-pager-inactive {
color: transparent; visibility: hidden;
pointer-events: none;
cursor: default;
} }
/* index.php */ /* index.php */

View File

@ -589,9 +589,6 @@ class Page {
$prev_class = "litebans-" . ($prev_active ? "pager-active" : "pager-inactive"); $prev_class = "litebans-" . ($prev_active ? "pager-active" : "pager-inactive");
$next_class = "litebans-" . ($next_active ? "pager-active" : "pager-inactive"); $next_class = "litebans-" . ($next_active ? "pager-active" : "pager-inactive");
$pager_prev = "<div class=\"litebans-pager litebans-pager-left $prev_class\">«</div>";
$pager_next = "<div class=\"litebans-pager litebans-pager-right $next_class\">»</div>";
if ($simple) { if ($simple) {
$pager_prev_href = $this->append_param($this->link("$page{$prevargs}"), "page={$prev}"); $pager_prev_href = $this->append_param($this->link("$page{$prevargs}"), "page={$prev}");
$pager_next_href = $this->append_param($this->link("$page{$args}"), "page={$next}"); $pager_next_href = $this->append_param($this->link("$page{$args}"), "page={$next}");
@ -600,13 +597,10 @@ class Page {
$pager_next_href = $this->append_param(($this->link("$page") . "{$args}"), "page={$next}"); $pager_next_href = $this->append_param(($this->link("$page") . "{$args}"), "page={$next}");
} }
if ($prev_active) { $pager_prev = "<a class=\"litebans-pager litebans-pager-left $prev_class\" href=\"$pager_prev_href\">«</a>";
$pager_prev = "<a href=\"$pager_prev_href\">$pager_prev</a>"; $pager_next = "<a class=\"litebans-pager litebans-pager-right $next_class\" href=\"$pager_next_href\">»</a>";
}
if ($next_active) { $pager_count = '<div class="litebans-pager-number">' . $this->t("table.pager.number") . ' ' . $cur . '/' . $pages . '</div>';
$pager_next = "<a href=\"$pager_next_href\">$pager_next</a>";
}
$pager_count = '<div><div class="litebans-pager-number">' . $this->t("table.pager.number") . ' ' . $cur . '/' . $pages . '</div></div>';
return array( return array(
"prev" => $pager_prev, "prev" => $pager_prev,
"next" => $pager_next, "next" => $pager_next,
@ -673,4 +667,6 @@ class Page {
return "WHERE "; return "WHERE ";
} }
} }
} }

View File

@ -8,21 +8,13 @@ final class PageTest extends TestCase {
public function testBansPagerHTML(): void { public function testBansPagerHTML(): void {
$page = new Page("bans", false, false); $page = new Page("bans", false, false);
$currentPage = 1; foreach (range(1, 2) as $currentPage) {
$page->page = $currentPage; $page->page = $currentPage;
$pager = $page->generate_pager(10); $pager = $page->generate_pager(10);
$this->assertIsArray($pager); $this->assertIsArray($pager);
$this->assertCount(3, $pager); $this->assertCount(3, $pager);
$this->assertEquals('<div class="litebans-pager litebans-pager-left litebans-pager-inactive">«</div>', $pager["prev"]); $this->assertEquals("Page $currentPage/2", $pager["count"]);
$this->assertEquals('<a href="bans.php?page=2"><div class="litebans-pager litebans-pager-right litebans-pager-active">»</div></a>', $pager["next"]); }
$this->assertEquals("<div><div class=\"litebans-pager-number\">Page $currentPage/2</div></div>", $pager["count"]);
$currentPage++;
$page->page = $currentPage;
$pager = $page->generate_pager(10);
$this->assertIsArray($pager);
$this->assertCount(3, $pager);
$this->assertEquals("<div><div class=\"litebans-pager-number\">Page $currentPage/2</div></div>", $pager["count"]);
} }
public function testHistoryPagerHTML(): void { public function testHistoryPagerHTML(): void {
@ -36,7 +28,7 @@ final class PageTest extends TestCase {
ob_start(); ob_start();
require_once './history.php'; require_once './history.php';
$output = ob_get_clean(); $output = ob_get_clean();
$historyPager = '<div class="litebans-pager litebans-pager-left litebans-pager-inactive">«</div><div class="litebans-pager litebans-pager-right litebans-pager-inactive">»</div><div><div class="litebans-pager-number">Page 1/1</div></div>'; $historyPager = 'Page 1/1';
$this->assertStringContainsString($historyPager, $output); $this->assertStringContainsString($historyPager, $output);
} }
} }