Render submenu with standard button colors
This commit is contained in:
@@ -30,6 +30,7 @@ namespace EP\EpProducts\Controller;
|
||||
use EP\EpProducts\Domain\Model\Concept;
|
||||
use EP\EpProducts\Domain\Repository\ConceptRepository;
|
||||
use EP\EpProducts\Service\ProductDataService;
|
||||
use EP\EpTheme\Domain\Repository\PageRepository;
|
||||
use TYPO3\CMS\Core\Utility\GeneralUtility;
|
||||
use TYPO3\CMS\Extbase\Mvc\Controller\ActionController;
|
||||
|
||||
@@ -46,14 +47,21 @@ class ConceptController extends ActionController
|
||||
*/
|
||||
protected $productDataService;
|
||||
|
||||
/**
|
||||
* @var \EP\EpTheme\Domain\Repository\PageRepository
|
||||
*/
|
||||
private $pageRepository;
|
||||
|
||||
/**
|
||||
* @param ConceptRepository $conceptRepository
|
||||
* @param ProductDataService $productDataService
|
||||
* @param PageRepository $pageRepository
|
||||
*/
|
||||
public function __construct(ConceptRepository $conceptRepository, ProductDataService $productDataService)
|
||||
public function __construct(ConceptRepository $conceptRepository, ProductDataService $productDataService, PageRepository $pageRepository)
|
||||
{
|
||||
$this->conceptRepository = $conceptRepository;
|
||||
$this->productDataService = $productDataService;
|
||||
$this->pageRepository = $pageRepository;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -75,11 +83,15 @@ 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']);
|
||||
$data = $this->configurationManager->getContentObject()->data;
|
||||
|
||||
$this->view->assignMultiple([
|
||||
'teasers' => $teasers,
|
||||
'concept' => $concept,
|
||||
'filterSettings' => $filterSettings,
|
||||
'pages' => $pages,
|
||||
'data' => $data,
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
services:
|
||||
_defaults:
|
||||
autowire: true
|
||||
autoconfigure: true
|
||||
public: false
|
||||
|
||||
EP\EpTheme\:
|
||||
resource: '../Classes/*'
|
||||
exclude: '../Classes/Domain/Model/*'
|
||||
@@ -1,8 +1,7 @@
|
||||
<html data-namespace-typo3-fluid="true" lang="en"
|
||||
xmlns="http://www.w3.org/1999/xhtml"
|
||||
xmlns:f="http://typo3.org/ns/fluid/ViewHelpers"
|
||||
xmlns:ep="http://typo3.org/ns/EP/EpTheme/ViewHelpers"
|
||||
xmlns:v="http://typo3.org/ns/FluidTYPO3/Vhs/ViewHelpers">
|
||||
xmlns:ep="http://typo3.org/ns/EP/EpTheme/ViewHelpers">
|
||||
|
||||
<f:layout name="Default"/>
|
||||
|
||||
@@ -73,16 +72,18 @@
|
||||
</p>
|
||||
</f:if>
|
||||
<ul class="list-none p-0 m-0 space-y-2">
|
||||
<v:menu pageUid="{settings.conceptPageUid}" as="menu">
|
||||
<f:for each="{menu}" as="page">
|
||||
<li>
|
||||
<f:link.typolink parameter="{page.uid}"
|
||||
class="button w-full">
|
||||
{page.title}
|
||||
</f:link.typolink>
|
||||
</li>
|
||||
</f:for>
|
||||
</v:menu>
|
||||
<f:for each="{pages}" as="page">
|
||||
<f:if condition="{page.hidden}">
|
||||
<f:else>
|
||||
<li>
|
||||
<f:link.typolink parameter="{page.uid}"
|
||||
class="button button--light{f:if(condition: '{data.pid} == {page.uid}', then: ' button--active')} w-full">
|
||||
{page.title}
|
||||
</f:link.typolink>
|
||||
</li>
|
||||
</f:else>
|
||||
</f:if>
|
||||
</f:for>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user