Optimized template draft

This commit is contained in:
Kevin Frantz
2019-02-25 12:50:26 +01:00
parent d0adc9b42a
commit 2cf9e019e8
22 changed files with 208 additions and 178 deletions

View File

@@ -21,27 +21,52 @@ class Menu
*/
private $factory;
/**
* @param FactoryInterface $factory
* @param EventDispatcherInterface $dispatcher
*/
public function __construct(FactoryInterface $factory, EventDispatcherInterface $dispatcher)
{
$this->dispatcher = $dispatcher;
$this->factory = $factory;
}
/**
* @param RequestStack $request
*
* @return ItemInterface
*/
public function sourceNavbar(RequestStack $request): ItemInterface
{
return $this->createMenu(MenuEventType::SOURCE, $request);
}
/**
* @param RequestStack $request
*
* @return ItemInterface
*/
public function nodeSubbar(RequestStack $request): ItemInterface
{
return $this->createMenu(MenuEventType::NODE, $request);
}
/**
* @param RequestStack $request
*
* @return ItemInterface
*/
public function userTopbar(RequestStack $request): ItemInterface
{
return $this->createMenu(MenuEventType::USER, $request);
}
/**
* @param string $type
* @param RequestStack $request
*
* @return ItemInterface
*/
private function createMenu(string $type, RequestStack $request): ItemInterface
{
$menu = $this->createBasicMenuItem();
@@ -50,6 +75,9 @@ class Menu
return $menu;
}
/**
* @return ItemInterface
*/
private function createBasicMenuItem(): ItemInterface
{
return $this->factory->createItem('root', [