Startseiten-CMS-Anbindung abschließen

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Kevin Adametz 2026-05-28 15:04:21 +00:00
parent 754aa699a1
commit 45150780de
22 changed files with 28191 additions and 2362 deletions

View file

@ -99,12 +99,30 @@ class DefaultController extends Controller
}
$pageRepo = $this->getEntityManager()->getRepository('AppBundle:Page');
$sidebarWidgetRepo = $this->getEntityManager()->getRepository('AppBundle:SidebarWidget');
$plannableTripsWidget = $sidebarWidgetRepo->findActiveWidgetByComponent('homepagePlannableTrips');
$popularTripsWidget = $sidebarWidgetRepo->findActiveWidgetByComponent('homepagePopularTrips');
$newsWidget = $sidebarWidgetRepo->findActiveWidgetByComponent('newsSidebarWidget', 'home');
$homepageOfferPages = $popularTripsWidget
? $pageRepo->findActiveTravelPagesByIds($popularTripsWidget->getConfigPageIds())
: [];
$devHomeSidebarOfferPages = $plannableTripsWidget
? $pageRepo->findActiveTravelPagesByIds($plannableTripsWidget->getConfigPageIds())
: [];
if (empty($homepageOfferPages)) {
$homepageOfferPages = $pageRepo->findHomepageOffers();
}
if (empty($devHomeSidebarOfferPages)) {
$devHomeSidebarOfferPages = $pageRepo->findHomepageOffers(4);
}
$fewoLodgings = [];
$lodgingGroups = $this->getEntityManager()->getRepository('AppBundle:FewoLodgingGroup')->findAll();
foreach ($lodgingGroups as $lodgingGroup) {
foreach ($lodgingGroup->getLodgings() as $lodging) {
$fewoLodgings[] = $lodging;
if (count($fewoLodgings) >= 3) {
if (count($fewoLodgings) >= 8) {
break 2;
}
}
@ -121,9 +139,18 @@ class DefaultController extends Controller
'e' => $search_request_e ? $search_request_e : null,
])->createView(),
'tt_search_form' => $this->createForm(TtSearchRequestType::class)->createView(),
'homepage_offer_pages' => $pageRepo->findHomepageOffers(),
'homepage_offer_pages' => $homepageOfferPages,
'homepage_offer_title' => $popularTripsWidget && $popularTripsWidget->getName() ? $popularTripsWidget->getName() : 'beliebtesten Kulturreisen',
'homepage_offer_new_page_ids' => $popularTripsWidget ? $popularTripsWidget->getConfigNewPageIds() : [],
'country_pages' => $pageRepo->findHomepageCountryPages(),
'fewo_lodgings' => $fewoLodgings,
'dev_home_sidebar' => true,
'dev_home_sidebar_offer_title' => $plannableTripsWidget && $plannableTripsWidget->getName() ? $plannableTripsWidget->getName() : 'Aktuell planbare Reisen',
'dev_home_sidebar_offer_pages' => $devHomeSidebarOfferPages,
'dev_home_sidebar_new_badge_active' => $plannableTripsWidget ? $plannableTripsWidget->getConfigNewBadgeActive() : false,
'dev_home_sidebar_new_page_ids' => $plannableTripsWidget ? $plannableTripsWidget->getConfigNewPageIds() : [],
'dev_home_sidebar_news_title' => $newsWidget && $newsWidget->getName() ? $newsWidget->getName() : 'Reisenews',
'dev_home_sidebar_news_pages' => $pageRepo->findHomepageNews($newsWidget ? $newsWidget->getConfigNewsLimit() : 3),
]);
}