rac = $this->get('trinity.security.route_access_control'); $this->router = $this->container->get('router'); $this->factory = new MenuFactory(); $this->config = $this->container->getParameter('trinity_admin_menu.menu'); } public static function getCmsMenu() { $navs = NavQuery::create()->orderByName()->find(); $item = array( 'title' => "Tree management", 'route_name' => 'TrinityContentManagerBundleNodeAdmin_index', 'route_params' => array(), 'test_is_granted' => true, 'icon' => '/bundles/trinityadmin/img/icon11.png', 'items' => array(), ); foreach ($navs as $nav) { $item['items'][] = array( 'title' => $nav->getTitle(), 'route_name' => 'TrinityContentManagerBundleNodeAdmin_index', 'icon' => '/bundles/trinityadmin/img/content-tree.png', 'route_params' => array( 'nav_id' => $nav->getId(), ), 'test_is_granted' => true, ); } return $item; } /** * @Template() */ public function mainMenuAction() { $this->init(); $menu = $this->getMenu(); $renderer = new ListRenderer(new Matcher()); $menu->setChildrenAttributes(array('class' => 'sf-menu')); return $this->render( $this->config['template'], array( 'menu_render' => $renderer->render($menu), 'menu' => $menu, 'logo' => $this->config['logo'], ) ); } public function getMenu() { $transformer = new ConfigurationTransformer($this->rac, $this->router, $this->factory, $this->config); return $transformer->getMenu(); } }