diff --git a/Classes/Controller/LatestController.php b/Classes/Controller/LatestController.php index 9896190d6a8a301a48b8aefd220ce2f698afc1b0..93e1dd62b5a34f93280300294953810906229488 100644 --- a/Classes/Controller/LatestController.php +++ b/Classes/Controller/LatestController.php @@ -64,14 +64,17 @@ class LatestController extends AbstractController { * @throws \TYPO3\CMS\Extbase\Configuration\Exception\InvalidConfigurationTypeException */ public function indexAction(array $newsMetaData = [], $offset = 0): ?\Psr\Http\Message\ResponseInterface { - $limit = ((int) $this->settings['limit']); + $limit = 0; + if (isset($this->settings['limit'])) { + $limit = ((int) $this->settings['limit']); + } $limit = ($limit < 1 ? 1 : $limit); $configurationService = GeneralUtility::makeInstance(ConfigurationService::class); $sortBy = $configurationService->getConfiguration('sortBy', $this->settings); - $categoryUids = NULL; - $tagUids = NULL; + $categoryUids = []; + $tagUids = []; if (isset($this->settings['categories'])) { $categoryUids = GeneralUtility::intExplode(',', $this->settings['categories'], TRUE); } diff --git a/Classes/Controller/ListByCategoryController.php b/Classes/Controller/ListByCategoryController.php index ca3df7bd7f3df1d6007046ed10f6db95107cce90..1f08231a655a8a2e5fd692e7a5e43f91dae12a4c 100644 --- a/Classes/Controller/ListByCategoryController.php +++ b/Classes/Controller/ListByCategoryController.php @@ -86,7 +86,9 @@ class ListByCategoryController extends AbstractController { * @throws \TYPO3\CMS\Extbase\Mvc\Exception\InvalidArgumentNameException */ public function initializeIndexAction() { - $currentPageBrowserPage = (int) GeneralUtility::_GP('tx_sgnews_pagebrowser')['currentPage']; + $currentPageBrowserPage = GeneralUtility::_GP('tx_sgnews_pagebrowser') + ? (int) GeneralUtility::_GP('tx_sgnews_pagebrowser')['currentPage'] + : 0; if ($currentPageBrowserPage > 0) { $this->request->setArgument('currentPageBrowserPage', $currentPageBrowserPage); } @@ -106,8 +108,14 @@ class ListByCategoryController extends AbstractController { */ public function indexAction(array $newsMetaData = [], int $currentPageBrowserPage = 0): ?\Psr\Http\Message\ResponseInterface { $filterByCategories = FALSE; - $categoryUids = GeneralUtility::intExplode(',', $this->settings['categories']); - $tagUids = GeneralUtility::intExplode(',', $this->settings['tags'], TRUE); + $categoryUids = []; + $tagUids = []; + if (isset($this->settings['categories'])) { + $categoryUids = GeneralUtility::intExplode(',', $this->settings['categories'], TRUE); + } + if (isset($this->settings['tags'])) { + $tagUids = GeneralUtility::intExplode(',', $this->settings['tags'], TRUE); + } foreach ($categoryUids as $categoryUid) { if ($categoryUid > 0) { $filterByCategories = TRUE; @@ -135,8 +143,14 @@ class ListByCategoryController extends AbstractController { } } - $startTime = (int) $this->settings['starttime']; - $endTime = (int) $this->settings['endtime']; + $startTime = 0; + $endTime = 0; + if (isset($this->settings['starttime'])) { + $startTime = (int) $this->settings['starttime']; + } + if (isset($this->settings['endtime'])) { + $endTime = (int) $this->settings['endtime']; + } $newsPerPage = (int) $this->settings['newsLimitPerPage']; $newsCount = $this->newsRepository->newsCountByCategories($categoryUids, $tagUids, $startTime, $endTime);