/** * @return Layout */ public function getLayout() { if ($this->layout) { return $this->layout; } return $this->message->getLayout(); }
/** * {@inheritdoc} */ public function renderCell(Message $message, $cell, Layout $layout = null) { $messageContentRepository = EntityHelper::getRepository('Avisota\\Contao:MessageContent'); $queryBuilder = $messageContentRepository->createQueryBuilder('mc'); $queryBuilder->select('mc')->where('mc.message=:message')->andWhere('mc.cell=:cell')->orderBy('mc.sorting')->setParameter('message', $message->getId())->setParameter('cell', $cell); if (TL_MODE != 'BE' && (!defined('BE_USER_LOGGED_IN') || !BE_USER_LOGGED_IN)) { $queryBuilder->andWhere('mc.invisible=:invisible')->setParameter('invisible', false); } $query = $queryBuilder->getQuery(); $contents = $query->getResult(); $elements = array(); foreach ($contents as $content) { $elements[] = $this->renderContent($content, $layout ?: $message->getLayout()); } return $elements; }