deblan.io-murph/src/Controller/Blog/CategoryController.php

43 lines
1.1 KiB
PHP

<?php
namespace App\Controller\Blog;
use App\Core\Annotation\UrlGenerator;
use App\Core\Controller\Site\PageController;
use App\Core\Site\SiteRequest;
use App\Entity\Blog\Category;
use App\Entity\Blog\Post;
use App\Repository\Blog\CategoryRepositoryQuery;
use App\UrlGenerator\PostGenerator;
use Symfony\Component\HttpFoundation\Response;
use App\Core\Site\SiteStore;
class CategoryController extends PageController
{
protected CategoryRepositoryQuery $categoryQuery;
public function __construct(CategoryRepositoryQuery $categoryQuery, SiteRequest $siteRequest, SiteStore $siteStore)
{
parent::__construct($siteRequest, $siteStore);
$this->categoryQuery = $categoryQuery;
}
public function categories(): Response
{
$entities = $this->createQuery()->find();
return $this->defaultRender('blog/post/categories.html.twig', [
'categories' => $entities,
]);
}
public function createQuery(): CategoryRepositoryQuery
{
return $this->categoryQuery->create()
->orderBy('.title', 'ASC')
->andWhere('.isActive = 1')
;
}
}