paginatied hash bans

git-svn-id: file:///home/shish/svn/shimmie2/trunk@1139 7f39781d-f577-437e-ae19-be835c7a54ca
This commit is contained in:
shish 2008-12-13 04:14:13 +00:00
parent eba8322a6d
commit c166630b57
2 changed files with 21 additions and 5 deletions

View File

@ -83,7 +83,11 @@ class ImageBan implements Extension {
}
}
else if($event->get_arg(0) == "list") {
$this->theme->display_Image_hash_Bans($event->page, $this->get_image_hash_bans());
$page_num = 0;
if($event->count_args() == 2) {
$page_num = int_escape($event->get_arg(1));
}
$this->theme->display_Image_hash_Bans($event->page, $page_num, $this->get_image_hash_bans($page_num));
}
}
}
@ -124,10 +128,12 @@ class ImageBan implements Extension {
// DB funness
public function get_image_hash_bans() {
public function get_image_hash_bans($page, $size=1000) {
// FIXME: many
$size_i = int_escape($size);
$offset_i = int_escape($page)*$size_i;
global $database;
$bans = $database->get_all("SELECT * FROM image_bans");
$bans = $database->get_all("SELECT * FROM image_bans LIMIT $size_i OFFSET $offset_i");
if($bans) {return $bans;}
else {return array();}
}

View File

@ -21,7 +21,7 @@ class ImageBanTheme extends Themelet {
* 'date' => when the ban started
* )
*/
public function display_image_hash_bans($page, $bans) {
public function display_image_hash_bans($page, $page_number, $bans) {
$h_bans = "";
foreach($bans as $ban) {
$h_bans .= "
@ -50,10 +50,20 @@ class ImageBanTheme extends Themelet {
</tr>
</table>
";
$prev = $page_number - 1;
$next = $page_number + 1;
$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_next = "<a href='".make_link("image_hash_ban/list/$next")."'>Next</a>";
$nav = "$h_prev | $h_index | $h_next";
$page->set_title("Image Bans");
$page->set_heading("Image Bans");
$page->add_block(new NavBlock());
$page->add_block(new Block("Edit Image Bans", $html));
$page->add_block(new Block("Navigation", $nav, "left", 0));
}
/*