<?php
/**
* OBG Customizations
*
* Copyright (c) 2021 vonRotenberg
*
* @license commercial
*/
namespace vonRotenberg\RealEstateListingBundle\Controller\FrontendModule;
use Contao\CoreBundle\DependencyInjection\Attribute\AsFrontendModule;
use Contao\CoreBundle\Twig\FragmentTemplate;
use vonRotenberg\RealEstateListingBundle\Model\RealEstateAssetsModel;
use Contao\Controller;
use Contao\ModuleModel;
use Contao\PageModel;
use Contao\StringUtil;
use Contao\System;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Contracts\Translation\TranslatorInterface;
#[AsFrontendModule(RealEstateAssetsAdController::TYPE, category: 'miscellaneous')]
class RealEstateAssetsAdController extends RealEstateAssetsModuleController
{
public const TYPE = 'vr_re_assets_ad';
/**
* @var TranslatorInterface
*/
protected $translator;
protected function getResponse(FragmentTemplate $template, ModuleModel $model, Request $request): Response
{
$this->translator = System::getContainer()->get('translator');
Controller::loadLanguageFile(RealEstateAssetsModel::getTable());
if (($assetsCount = $this->countRealEstateAssets(StringUtil::deserialize($model->vr_re_categories))) < 1)
{
return new Response();
}
$jumpTo = PageModel::findByPk($model->jumpTo);
$template->listUrl = $jumpTo !== null ? $jumpTo->getFrontendUrl() : null;
return $template->getResponse();
}
}