diff options
author | Thomas Lange <code@nerdmind.de> | 2021-07-01 21:25:43 +0200 |
---|---|---|
committer | Thomas Lange <code@nerdmind.de> | 2021-07-01 21:25:43 +0200 |
commit | f1d09d8cdc6e4a1ed0fb44544b368c6632bbd379 (patch) | |
tree | be2c9aa922f61b825e8ba9f9333b7f27e5407161 | |
parent | e6cef37e0c782fe770db20888d99c17d10e2c479 (diff) | |
download | blog-f1d09d8cdc6e4a1ed0fb44544b368c6632bbd379.tar.gz blog-f1d09d8cdc6e4a1ed0fb44544b368c6632bbd379.tar.xz blog-f1d09d8cdc6e4a1ed0fb44544b368c6632bbd379.zip |
Add function generateCategoryPostNaviTemplate
Add and use the function generateCategoryPostNaviTemplate to build the
pagination template for posts in a category. This fixes a mistake.
TODO: Get rid of that confusing function mess!
-rw-r--r-- | core/functions.php | 18 | ||||
-rw-r--r-- | core/include/category/main.php | 2 |
2 files changed, 19 insertions, 1 deletions
diff --git a/core/functions.php b/core/functions.php index ea4b7eb..3282f1c 100644 --- a/core/functions.php +++ b/core/functions.php @@ -54,6 +54,24 @@ function generateCategoryNaviTemplate($current): Template { } #=============================================================================== +# Generate the post navigation template for posts in a category +#=============================================================================== +function generateCategoryPostNaviTemplate(int $current, Category $Category): Template { + $location = Application::getEntityURL($Category); + $Repository = Application::getRepository('Post'); + + $listSize = Application::get('POST.LIST_SIZE'); + $lastSite = ceil($Repository->getCountByCategory($Category) / $listSize); + + $PaginationTemplate = TemplateFactory::build('pagination'); + $PaginationTemplate->set('THIS', $current); + $PaginationTemplate->set('LAST', $lastSite); + $PaginationTemplate->set('HREF', "{$location}?site=%d"); + + return $PaginationTemplate; +} + +#=============================================================================== # Helper function to reduce duplicate code #=============================================================================== function generateCategoryItemTemplate(Category $Category, bool $is_root = FALSE): Template { diff --git a/core/include/category/main.php b/core/include/category/main.php index 57f8625..1f9adf7 100644 --- a/core/include/category/main.php +++ b/core/include/category/main.php @@ -111,7 +111,7 @@ $CategoryTemplate->set('COUNT', [ $CategoryTemplate->set('PAGINATION', [ 'THIS' => $currentSite, 'LAST' => $lastSite, - 'HTML' => generatePostNaviTemplate($currentSite) + 'HTML' => generateCategoryPostNaviTemplate($currentSite, $Category) ]); $CategoryTemplate->set('LIST', [ 'POSTS' => $post_templates ?? [], |