paginated image bans

This commit is contained in:
Shish 2010-01-05 17:31:25 +00:00
parent 18c0fa7df8
commit cbfab3ba5d
2 changed files with 7 additions and 4 deletions

View File

@ -81,7 +81,9 @@ class ImageBan implements Extension {
if($event->count_args() == 2) { if($event->count_args() == 2) {
$page_num = int_escape($event->get_arg(1)); $page_num = int_escape($event->get_arg(1));
} }
$this->theme->display_Image_hash_Bans($page, $page_num, $this->get_image_hash_bans($page_num)); $page_size = 100;
$page_count = ceil($database->db->getone("SELECT COUNT(id) FROM image_bans")/$page_size);
$this->theme->display_Image_hash_Bans($page, $page_num, $page_count, $this->get_image_hash_bans($page_num, $page_size));
} }
} }
} }
@ -121,7 +123,7 @@ class ImageBan implements Extension {
// DB funness // DB funness
public function get_image_hash_bans($page, $size=1000) { public function get_image_hash_bans($page, $size=100) {
// FIXME: many // FIXME: many
$size_i = int_escape($size); $size_i = int_escape($size);
$offset_i = int_escape($page-1)*$size_i; $offset_i = int_escape($page-1)*$size_i;

View File

@ -20,7 +20,7 @@ class ImageBanTheme extends Themelet {
* 'date' => when the ban started * 'date' => when the ban started
* ) * )
*/ */
public function display_image_hash_bans(Page $page, $page_number, $bans) { public function display_image_hash_bans(Page $page, $page_number, $page_count, $bans) {
$h_bans = ""; $h_bans = "";
$n = 0; $n = 0;
foreach($bans as $ban) { foreach($bans as $ban) {
@ -62,7 +62,7 @@ class ImageBanTheme extends Themelet {
$h_prev = ($page_number <= 1) ? "Prev" : "<a href='".make_link("image_hash_ban/list/$prev")."'>Prev</a>"; $h_prev = ($page_number <= 1) ? "Prev" : "<a href='".make_link("image_hash_ban/list/$prev")."'>Prev</a>";
$h_index = "<a href='".make_link()."'>Index</a>"; $h_index = "<a href='".make_link()."'>Index</a>";
$h_next = "<a href='".make_link("image_hash_ban/list/$next")."'>Next</a>"; $h_next = ($page_number >= $page_count) ? "Next" : "<a href='".make_link("image_hash_ban/list/$next")."'>Next</a>";
$nav = "$h_prev | $h_index | $h_next"; $nav = "$h_prev | $h_index | $h_next";
@ -70,6 +70,7 @@ class ImageBanTheme extends Themelet {
$page->set_heading("Image Bans"); $page->set_heading("Image Bans");
$page->add_block(new Block("Edit Image Bans", $html)); $page->add_block(new Block("Edit Image Bans", $html));
$page->add_block(new Block("Navigation", $nav, "left", 0)); $page->add_block(new Block("Navigation", $nav, "left", 0));
$this->display_paginator($page, "image_hash_ban/list", null, $page_number, $page_count);
} }
/* /*