<?php declare(strict_types=1); /* * This file is part of contao-weinanlieferung-bundle. * * (c) vonRotenberg * * @license commercial */ namespace vonRotenberg\WeinanlieferungBundle\Controller\Frontend\Module; use Contao\CoreBundle\Controller\FrontendModule\AbstractFrontendModuleController; use Contao\CoreBundle\ServiceAnnotation\FrontendModule; use Contao\ModuleModel; use Contao\StringUtil; use Contao\Template; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use vonRotenberg\WeinanlieferungBundle\Model\WeinanlieferungSlotsModel; /** * @FrontendModule(WeinanlieferungSlotsListModuleController::TYPE, category="miscellaneous") */ class WeinanlieferungSlotsListModuleController extends AbstractFrontendModuleController { public const TYPE = 'wa_slots_list'; protected function getResponse(Template $template, ModuleModel $model, Request $request): ?Response { $standortIds = StringUtil::deserialize($model->vr_wa_standortId); $arrData = $template->getData(); if (($slots = WeinanlieferungSlotsModel::findMultiplePublishedByPids($standortIds)) !== null) { foreach ($slots as $slot) { $arrData['slots'][] = $slot->row(); } } $template->setData($arrData); return $template->getResponse(); } }