src/Twig/CatalogExtension.php line 32

Open in your IDE?
  1. <?php
  2. namespace App\Twig;
  3. use App\Entity\Gos\PortalSettings;
  4. use App\Entity\Gos\Uniqskills\FmCompanySettings;
  5. use Doctrine\ORM\EntityManagerInterface;
  6. use Symfony\Component\HttpFoundation\RequestStack;
  7. use Twig\Extension\AbstractExtension;
  8. use Twig\TwigFunction;
  9. class CatalogExtension extends AbstractExtension
  10. {
  11.     private $em;
  12.     private $request;
  13.     public function __construct(EntityManagerInterface $emRequestStack $requestStack)
  14.     {
  15.         $this->em $em;
  16.         $this->request $requestStack->getCurrentRequest();
  17.     }
  18.     public function getFunctions(): array
  19.     {
  20.         return array(
  21.             new TwigFunction('hideCatalog', [$this'hideCatalog'])
  22.         );
  23.     }
  24.     public function hideCatalog()
  25.     {
  26.         $portalSettingsId   $this->request->getSession()->get('domain'0);
  27.         $portalSettings     $this->em->getRepository(PortalSettings::class)->find($portalSettingsId);
  28.         if (!is_null($portalSettings)
  29.             && $portalSettings->getIsUniqskillsPortal()
  30.             && !is_null($portalSettings->getFmCompanySettings()))
  31.         {
  32.             /** @var FmCompanySettings $fmCompanySettings */
  33.             $fmCompanySettings $portalSettings->getFmCompanySettings();
  34.             return $fmCompanySettings->getHideCatalog();
  35.         }
  36.         return false;
  37.     }
  38. }