diff --git a/src/Controller/PartListsController.php b/src/Controller/PartListsController.php index 845ff831..978a9a81 100644 --- a/src/Controller/PartListsController.php +++ b/src/Controller/PartListsController.php @@ -67,7 +67,7 @@ class PartListsController extends AbstractController } /** - * @Route("/parts") + * @Route("/parts", name="parts_show_all") * * @param Request $request * @param DataTableFactory $dataTable diff --git a/src/Services/ToolsTreeBuilder.php b/src/Services/ToolsTreeBuilder.php index c00238ab..997ec241 100644 --- a/src/Services/ToolsTreeBuilder.php +++ b/src/Services/ToolsTreeBuilder.php @@ -30,6 +30,8 @@ namespace App\Services; use App\Helpers\TreeViewNode; +use Symfony\Component\Routing\Generator\UrlGeneratorInterface; +use Symfony\Contracts\Translation\TranslatorInterface; /** * This Service generates the tree structure for the tools. @@ -38,6 +40,16 @@ use App\Helpers\TreeViewNode; class ToolsTreeBuilder { + protected $translator; + protected $urlGenerator; + + public function __construct(TranslatorInterface $translator, UrlGeneratorInterface $urlGenerator) + { + $this->translator = $translator; + $this->urlGenerator = $urlGenerator; + } + + /** * Generates the tree for the tools menu. * @return TreeViewNode The array containing all Nodes for the tools menu. @@ -52,6 +64,13 @@ class ToolsTreeBuilder $tree[] = new TreeViewNode('test', 'www.google.de', $nodes); + $show_nodes = array(); + $show_nodes[] = new TreeViewNode($this->translator->trans('tree.tools.show.all_parts'), + $this->urlGenerator->generate('parts_show_all') + ); + + $tree[] = new TreeViewNode($this->translator->trans('tree.tools.show'), null, $show_nodes); + return $tree; } }