Merge branch 'pagevent'
This commit is contained in:
commit
062f30abe7
@ -24,18 +24,10 @@ class RSS_Images extends SimpleExtension {
|
|||||||
|
|
||||||
public function onPageRequest($event) {
|
public function onPageRequest($event) {
|
||||||
if($event->page_matches("rss/images")) {
|
if($event->page_matches("rss/images")) {
|
||||||
$page_number = 0;
|
$search_terms = $event->get_search_terms();
|
||||||
$search_terms = array();
|
$page_number = $event->get_page_number();
|
||||||
|
$page_size = $event->get_page_size();
|
||||||
if($event->count_args() == 1) {
|
$images = Image::find_images(($page_number-1)*$page_size, $page_size, $search_terms);
|
||||||
$page_number = int_escape($event->get_arg(0));
|
|
||||||
}
|
|
||||||
else if($event->count_args() == 2) {
|
|
||||||
$search_terms = explode(' ', $event->get_arg(0));
|
|
||||||
$page_number = int_escape($event->get_arg(1));
|
|
||||||
}
|
|
||||||
|
|
||||||
$images = Image::find_images(($page_number-1)*10, 10, $search_terms);
|
|
||||||
$this->do_rss($images, $search_terms, $page_number);
|
$this->do_rss($images, $search_terms, $page_number);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -70,6 +70,33 @@ class PageRequestEvent extends Event {
|
|||||||
public function count_args() {
|
public function count_args() {
|
||||||
return $this->arg_count - $this->part_count;
|
return $this->arg_count - $this->part_count;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Many things use these functions
|
||||||
|
*/
|
||||||
|
public function get_search_terms() {
|
||||||
|
$search_terms = array();
|
||||||
|
if($this->count_args() == 2) {
|
||||||
|
$search_terms = Tag::explode(' ', $this->get_arg(0));
|
||||||
|
}
|
||||||
|
return $search_terms;
|
||||||
|
}
|
||||||
|
public function get_page_number() {
|
||||||
|
$page_number = 1;
|
||||||
|
if($this->count_args() == 1) {
|
||||||
|
$page_number = int_escape($this->get_arg(0));
|
||||||
|
}
|
||||||
|
else if($this->count_args() == 2) {
|
||||||
|
$page_number = int_escape($this->get_arg(1));
|
||||||
|
}
|
||||||
|
if($page_number == 0) $page_number = 1; // invalid -> 0
|
||||||
|
return $page_number;
|
||||||
|
}
|
||||||
|
public function get_page_size() {
|
||||||
|
global $config;
|
||||||
|
$count = $config->get_int('index_width') * $config->get_int('index_height');
|
||||||
|
return $count;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -152,22 +152,11 @@ class Index extends SimpleExtension {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
$search_terms = array();
|
$search_terms = $event->get_search_terms();
|
||||||
$page_number = 1;
|
$page_number = $event->get_page_number();
|
||||||
|
$page_size = $event->get_page_size();
|
||||||
if($event->count_args() == 1) {
|
|
||||||
$page_number = int_escape($event->get_arg(0));
|
|
||||||
}
|
|
||||||
else if($event->count_args() == 2) {
|
|
||||||
$search_terms = explode(' ', $event->get_arg(0));
|
|
||||||
$page_number = int_escape($event->get_arg(1));
|
|
||||||
}
|
|
||||||
|
|
||||||
if($page_number == 0) $page_number = 1; // invalid -> 0
|
|
||||||
|
|
||||||
$total_pages = Image::count_pages($search_terms);
|
$total_pages = Image::count_pages($search_terms);
|
||||||
$count = $config->get_int('index_width') * $config->get_int('index_height');
|
$images = Image::find_images(($page_number-1)*$page_size, $page_size, $search_terms);
|
||||||
$images = Image::find_images(($page_number-1)*$count, $count, $search_terms);
|
|
||||||
|
|
||||||
if(count($search_terms) == 0 && count($images) == 0 && $page_number == 1) {
|
if(count($search_terms) == 0 && count($images) == 0 && $page_number == 1) {
|
||||||
$this->theme->display_intro($page);
|
$this->theme->display_intro($page);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user