From 86f5dcc5aae7181cf9b1a4eed22f3b8e5de5ec02 Mon Sep 17 00:00:00 2001 From: Aurelienazerty Date: Mon, 6 Nov 2017 22:09:49 +0100 Subject: [PATCH 1/3] Compatibility with the DisplayLastPost extension by Aurelienazerty Quick modification for made works with DisplayLastPost extension https://www.phpbb.com/customise/db/extension/displaylastpost/ --- kasimi/postnumbers/config/services.yml | 1 + kasimi/postnumbers/event/listener.php | 17 +++++++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/kasimi/postnumbers/config/services.yml b/kasimi/postnumbers/config/services.yml index 519e4ae..70afb40 100644 --- a/kasimi/postnumbers/config/services.yml +++ b/kasimi/postnumbers/config/services.yml @@ -8,5 +8,6 @@ services: - '@template' - '@dbal.conn' - '@?rxu.FirstPostOnEveryPage.listener' + - '@?Aurelienazerty.DisplayLastPost.listener' tags: - { name: event.listener } diff --git a/kasimi/postnumbers/event/listener.php b/kasimi/postnumbers/event/listener.php index 7ba1697..73e7c80 100644 --- a/kasimi/postnumbers/event/listener.php +++ b/kasimi/postnumbers/event/listener.php @@ -17,6 +17,7 @@ use phpbb\template\template; use phpbb\user; use rxu\FirstPostOnEveryPage\event\listener as FirstPostOnEveryPage; +use Aurelienazerty\DisplayLastPost\event\listener as DisplayLastPost; use Symfony\Component\EventDispatcher\EventSubscriberInterface; class listener implements EventSubscriberInterface @@ -42,6 +43,9 @@ class listener implements EventSubscriberInterface /** @var FirstPostOnEveryPage */ protected $firstPostOnEveryPage; + + /** @var DisplayLastPost */ + protected $displayLastPost; /** @var boolean */ protected $is_active = false; @@ -67,6 +71,7 @@ class listener implements EventSubscriberInterface * @param template $template * @param db_interface $db * @param FirstPostOnEveryPage $firstPostOnEveryPage + * @param DisplayLastPost $displayLastPost */ public function __construct( user $user, @@ -74,7 +79,8 @@ public function __construct( request_interface $request, template $template, db_interface $db, - FirstPostOnEveryPage $firstPostOnEveryPage = null + FirstPostOnEveryPage $firstPostOnEveryPage = null, + DisplayLastPost $displayLastPost = null ) { $this->user = $user; @@ -83,6 +89,7 @@ public function __construct( $this->template = $template; $this->db = $db; $this->firstPostOnEveryPage = $firstPostOnEveryPage; + $this->displayLastPost = $displayLastPost; } /** @@ -319,7 +326,13 @@ protected function get_post_number($default_sort_by, $default_sort_dir, $default $this->offset = $is_ascending ? 1 : 0; } - return $this->first_post_num + ($is_ascending ? +$this->offset++ : -$this->offset++); + $return = $this->first_post_num + ($is_ascending ? +$this->offset++ : -$this->offset++); + + if ($this->displayLastPost !== null && $start) { + $return = $is_ascending ? $return - 1 : $return + 1; + } + + return $return; } /** From 48db8ecfc553783aa7a2dffca0c6ca2dbb6a927f Mon Sep 17 00:00:00 2001 From: Aurelienazerty Date: Mon, 13 Aug 2018 23:47:19 +0200 Subject: [PATCH 2/3] Compatibility with the DisplayLastPost extension by Aurelienazerty --- kasimi/postnumbers/event/listener.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/kasimi/postnumbers/event/listener.php b/kasimi/postnumbers/event/listener.php index 73e7c80..4b39645 100644 --- a/kasimi/postnumbers/event/listener.php +++ b/kasimi/postnumbers/event/listener.php @@ -328,8 +328,9 @@ protected function get_post_number($default_sort_by, $default_sort_dir, $default $return = $this->first_post_num + ($is_ascending ? +$this->offset++ : -$this->offset++); - if ($this->displayLastPost !== null && $start) { - $return = $is_ascending ? $return - 1 : $return + 1; + if ($this->displayLastPost !== null && $this->config['display_last_post_show'] && $start) + { + $return = $is_ascending ? $return - 1 : $return + 1; } return $return; From 27cb605acd7ee19eeb0e67e87332e957f977dacb Mon Sep 17 00:00:00 2001 From: Aurelienazerty Date: Wed, 2 Jan 2019 21:53:32 +0100 Subject: [PATCH 3/3] Formatting issues --- kasimi/postnumbers/event/listener.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/kasimi/postnumbers/event/listener.php b/kasimi/postnumbers/event/listener.php index 4b39645..7ca8364 100644 --- a/kasimi/postnumbers/event/listener.php +++ b/kasimi/postnumbers/event/listener.php @@ -89,7 +89,7 @@ public function __construct( $this->template = $template; $this->db = $db; $this->firstPostOnEveryPage = $firstPostOnEveryPage; - $this->displayLastPost = $displayLastPost; + $this->displayLastPost = $displayLastPost; } /** @@ -330,9 +330,9 @@ protected function get_post_number($default_sort_by, $default_sort_dir, $default if ($this->displayLastPost !== null && $this->config['display_last_post_show'] && $start) { - $return = $is_ascending ? $return - 1 : $return + 1; + $return = $is_ascending ? $return - 1 : $return + 1; } - + return $return; }