Respect eneable fields in custom page repository when appropriate
This commit is contained in:
@@ -83,7 +83,7 @@ class ConceptController extends ActionController
|
||||
$excludedConceptUids = GeneralUtility::trimExplode(',', $this->settings['excludedConceptUids'], true);
|
||||
$limit = $this->settings['showMoreLink'] ? 4 : 0;
|
||||
$teasers = $this->productDataService->getTeasergroup($filterSettings, $excludedConceptUids, $limit);
|
||||
$pages = $this->pageRepository->findPagesByPid($this->settings['conceptsPageUid']);
|
||||
$pages = $this->pageRepository->findPagesByPid((int)$this->settings['conceptsPageUid']);
|
||||
$data = $this->configurationManager->getContentObject()->data;
|
||||
|
||||
$this->view->assignMultiple([
|
||||
|
||||
@@ -69,14 +69,14 @@ class BackendController extends ActionController
|
||||
|
||||
public function initializeAction()
|
||||
{
|
||||
$this->pageUid = (integer)GeneralUtility::_GET('id');
|
||||
$this->pageUid = (int)GeneralUtility::_GET('id');
|
||||
|
||||
parent::initializeAction();
|
||||
}
|
||||
|
||||
public function listPagesAction()
|
||||
{
|
||||
$pages = $this->pageRepository->findPagesByPid($this->pageUid);
|
||||
$pages = $this->pageRepository->findPagesByPid($this->pageUid, true);
|
||||
|
||||
$this->view->assign('pages', $pages);
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace EP\EpTheme\Domain\Repository;
|
||||
|
||||
use TYPO3\CMS\Core\Domain\Repository\PageRepository as CorePageRepository;
|
||||
use TYPO3\CMS\Extbase\Persistence\Repository;
|
||||
|
||||
class PageRepository extends Repository
|
||||
@@ -13,23 +14,19 @@ class PageRepository extends Repository
|
||||
'sorting' => 'ASC',
|
||||
];
|
||||
|
||||
/**
|
||||
* @param int $pid
|
||||
* @return array|\TYPO3\CMS\Extbase\Persistence\QueryResultInterface
|
||||
*/
|
||||
public function findPagesByPid($pid)
|
||||
public function findPagesByPid(int $pid, bool $includeDisabled = false)
|
||||
{
|
||||
$query = $this->createQuery();
|
||||
$query
|
||||
->getQuerySettings()
|
||||
->setRespectStoragePage(false)
|
||||
->setIgnoreEnableFields(true)
|
||||
->setIgnoreEnableFields($includeDisabled)
|
||||
->setIncludeDeleted(false)
|
||||
->setRespectSysLanguage(false)
|
||||
;
|
||||
$query->matching($query->logicalAnd([
|
||||
$query->equals('pid', $pid),
|
||||
$query->equals('doktype', \TYPO3\CMS\Core\Domain\Repository\PageRepository::DOKTYPE_DEFAULT)
|
||||
$query->equals('doktype', CorePageRepository::DOKTYPE_DEFAULT)
|
||||
]));
|
||||
|
||||
return $query->execute();
|
||||
|
||||
Reference in New Issue
Block a user