From d2ef7f2c524637b991757143ea361674a2b661ee Mon Sep 17 00:00:00 2001 From: Henrik Hautakoski Date: Mon, 18 Jun 2018 22:22:50 +0200 Subject: [PATCH] app/library/Services.php: load menu config from file. --- app/config/menu.yml | 27 +++++++++++++++++++++++++++ app/library/Services.php | 37 +++---------------------------------- 2 files changed, 30 insertions(+), 34 deletions(-) create mode 100644 app/config/menu.yml diff --git a/app/config/menu.yml b/app/config/menu.yml new file mode 100644 index 0000000..5aa188e --- /dev/null +++ b/app/config/menu.yml @@ -0,0 +1,27 @@ + +menu: + home: + caption: Home + route: home-route + controller: index + action: index + create-new: + caption: 'Create new' + resource: callback + controller: callback + action: new + my-callbacks: + caption: 'List callbacks' + resource: callback + controller: callback + action: list + children: + show: + resource: callback + controller: callback + action: show + about: + caption: About + route: about-route + controller: index + action: about diff --git a/app/library/Services.php b/app/library/Services.php index 7d6e761..d4d39d1 100644 --- a/app/library/Services.php +++ b/app/library/Services.php @@ -67,6 +67,7 @@ class Services extends DiDefault $files = array( 'app.yml', 'routes.yml', + 'menu.yml', 'local.yml' ); @@ -271,41 +272,9 @@ class Services extends DiDefault */ protected function _initMenu() { - $config = array( - 'home' => array( - 'caption' => 'Home', - 'route' => 'home-route', - 'controller' => 'index', - 'action' => 'index', - ), - 'create-new ' => array( - 'caption' => 'Create new', - 'resource' => 'callback', - 'controller' => 'callback', - 'action' => 'new', - ), - 'my-callbacks' => array( - 'caption' => 'List callbacks', - 'resource' => 'callback', - 'controller' => 'callback', - 'action' => 'list', - 'children' => array( - 'show' => array( - 'resource' => 'callback', - 'controller' => 'callback', - 'action' => 'show', - ), - ), - ), - 'about' => array( - 'route' => 'about-route', - 'caption' => 'About', - 'controller' => 'index', - 'action' => 'about' - ), - ); + $config = $this->get('config')->menu; - $navigation = new Navigation($config); + $navigation = new Navigation($config->toArray()); $menu = new Menu($navigation); $menu->setMenuClass(null);