/** * @param ManagerInterface $manager */ public function visitManager(ManagerInterface $manager) { foreach ($this->elements as $element) { $this->factoryProductionLine->workOn($element); $manager->addElement($element); } }
/** * @param GetResponseEvent $event */ public function onKernelRequest(GetResponseEvent $event) { if (HttpKernel::MASTER_REQUEST != $event->getRequestType()) { return; } foreach ($this->adminManager->getElements() as $element) { if ($element instanceof SecuredElementInterface) { if (!$element->isAllowed($this->authorizationChecker)) { /* @var $element \FSi\Bundle\AdminBundle\Admin\ElementInterface */ $this->adminManager->removeElement($element->getId()); } } } }
/** * @param array $itemConfig * @return mixed */ private function buildItemElements($itemConfig) { $elements = array(); if ($this->hasEntry($itemConfig, 'elements')) { $elementIds = (array) $itemConfig['elements']; foreach ($elementIds as $elementId) { $elements[] = $this->manager->getElement($elementId); } } return $elements; }