protected function execute(InputInterface $input, OutputInterface $output) { $em = $this->getContainer()->get('doctrine.orm.entity_manager'); $node = new NavigationNode(); $node->setTitle($input->getArgument('title')); $em->persist($node); $em->flush(); }
public function isNodeVisibleToUser(NavigationNode $node) { if (!is_array($node->getVisibleFor())) { return true; } $security = $this->container->get('security.context'); $token = $security->getToken(); $visibleFor = $node->getVisibleFor(); if (!$token instanceof \Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken) { $roles = array('ROLE_ANONYMUS'); } else { $roles = $token->getUser()->getRoles(); } return count(array_intersect($visibleFor, $roles)) > 0; }