From 5a83a18df30e56751ac500d3ca1417de2ffac24c Mon Sep 17 00:00:00 2001 From: Shish Date: Mon, 26 Apr 2010 02:35:53 +0100 Subject: [PATCH 1/4] add the functions --- core/event.class.php | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/core/event.class.php b/core/event.class.php index feee5518..0ce5b173 100644 --- a/core/event.class.php +++ b/core/event.class.php @@ -70,6 +70,33 @@ class PageRequestEvent extends Event { public function count_args() { 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($event->count_args() == 1) { + $page_number = int_escape($event->get_arg(0)); + } + else if($event->count_args() == 2) { + $page_number = int_escape($event->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; + } } From a92a91dedb8aa34dd5557bff8ae1fcf08e5963fd Mon Sep 17 00:00:00 2001 From: Shish Date: Mon, 26 Apr 2010 02:36:05 +0100 Subject: [PATCH 2/4] index extension --- ext/index/main.php | 19 ++++--------------- 1 file changed, 4 insertions(+), 15 deletions(-) diff --git a/ext/index/main.php b/ext/index/main.php index 43595056..bcd68240 100644 --- a/ext/index/main.php +++ b/ext/index/main.php @@ -152,22 +152,11 @@ class Index extends SimpleExtension { return; } - $search_terms = array(); - $page_number = 1; - - 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 - + $search_terms = $event->get_search_terms(); + $page_number = $event->get_page_number(); + $page_size = $event->get_page_size(); $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)*$count, $count, $search_terms); + $images = Image::find_images(($page_number-1)*$page_size, $page_size, $search_terms); if(count($search_terms) == 0 && count($images) == 0 && $page_number == 1) { $this->theme->display_intro($page); From 1c5fa146d79a03bce09dc0e3ffc80a0050beea39 Mon Sep 17 00:00:00 2001 From: Shish Date: Mon, 26 Apr 2010 02:37:05 +0100 Subject: [PATCH 3/4] rss extension --- contrib/rss_images/main.php | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/contrib/rss_images/main.php b/contrib/rss_images/main.php index f54ba66a..c97e318a 100644 --- a/contrib/rss_images/main.php +++ b/contrib/rss_images/main.php @@ -24,18 +24,10 @@ class RSS_Images extends SimpleExtension { public function onPageRequest($event) { if($event->page_matches("rss/images")) { - $page_number = 0; - $search_terms = array(); - - 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)); - } - - $images = Image::find_images(($page_number-1)*10, 10, $search_terms); + $search_terms = $event->get_search_terms(); + $page_number = $event->get_page_number(); + $page_size = $event->get_page_size(); + $images = Image::find_images(($page_number-1)*$page_size, $page_size, $search_terms); $this->do_rss($images, $search_terms, $page_number); } } From e211207ac5faeb74e9954e2181c1583e332e7947 Mon Sep 17 00:00:00 2001 From: Shish Date: Mon, 26 Apr 2010 03:39:02 +0100 Subject: [PATCH 4/4] event -> this --- core/event.class.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/core/event.class.php b/core/event.class.php index 0ce5b173..feba9976 100644 --- a/core/event.class.php +++ b/core/event.class.php @@ -83,11 +83,11 @@ class PageRequestEvent extends Event { } public function get_page_number() { $page_number = 1; - if($event->count_args() == 1) { - $page_number = int_escape($event->get_arg(0)); + if($this->count_args() == 1) { + $page_number = int_escape($this->get_arg(0)); } - else if($event->count_args() == 2) { - $page_number = int_escape($event->get_arg(1)); + 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;