chore: use default error handling

This commit is contained in:
Björn Fromme
2024-11-11 16:05:37 +01:00
parent 120b962d28
commit e3447310a3
@@ -4,8 +4,10 @@ namespace EP\EpProducts\Controller;
use EP\EpProducts\Domain\Model\Travelinfo;
use EP\EpProducts\Domain\Repository\DateRepository;
use TYPO3\CMS\Core\Site\SiteFinder;
use TYPO3\CMS\Core\Http\ImmediateResponseException;
use TYPO3\CMS\Core\Utility\GeneralUtility;
use TYPO3\CMS\Extbase\Mvc\Controller\ActionController;
use TYPO3\CMS\Frontend\Controller\ErrorController;
class TravelinfoController extends ActionController
{
@@ -14,15 +16,9 @@ class TravelinfoController extends ActionController
*/
private $dateRepository;
/**
* @var SiteFinder
*/
private $siteFinder;
public function __construct(DateRepository $dateRepository, SiteFinder $siteFinder)
public function __construct(DateRepository $dateRepository)
{
$this->dateRepository = $dateRepository;
$this->siteFinder = $siteFinder;
}
public function indexAction(Travelinfo $travelinfo)
@@ -31,10 +27,11 @@ class TravelinfoController extends ActionController
$date = $this->dateRepository->findOneByCode($travelinfo->getTravelCode());
if (null === $date || $date->getDateEnd() < $today) {
$site = $this->siteFinder->getSiteByIdentifier('ep-reisen');
$rootPageId = $site->getRootPageId();
$uri = $site->getRouter()->generateUri($rootPageId);
$this->redirectToUri($uri);
$response = GeneralUtility::makeInstance(ErrorController::class)->pageNotFoundAction(
$GLOBALS['TYPO3_REQUEST'],
'Reiseinformationen nicht gefunden oder Termin abgelaufen'
);
throw new ImmediateResponseException($response, 1731071856);
}
$this->view->assign('travelinfo', $travelinfo);