route('admin.dashboard', trans('admin/mainMenu.dashboard'), [], 10, ['icon' => 'fa fa-fw fa-dashboard']); /** * Content pages * * Submenus can be registered later */ $menu->dropdown(trans('admin/mainMenu.contentPages'), function ($sub) { $sub->addDivider(9999); $sub->route('content.overview', trans('admin/mainMenu.contentPageOverview'), [], 10000, ['icon' => 'fa fa-fw fa-list']); }, 20, ['icon' => 'fa fa-fw fa-database']); /** * File manager */ $menu->route('upload.overview', trans('admin/mainMenu.fileManager'), [], 40, ['icon' => 'fa fa-fw fa-folder']); /** * Widgets and widget areas */ $menu->dropdown(trans('admin/mainMenu.widgets'), function ($sub) { // create list of all widget types $widgets = WidgetTypes::getWithTranslations(); if (!empty($widgets)) { $sub->dropdown(trans('admin/mainMenu.newWidget'), function ($sub) use ($widgets) { $i = 1; foreach ($widgets as $type => $name) { $sub->route('widgets.new', $name, ['type' => $type], $i++); } }, 10, ['icon' => 'fa fa-fw fa-plus']); } $sub->route('widgets.overview', trans('admin/mainMenu.widgetsOverview'), [], 20, ['icon' => 'fa fa-fw fa-list']); // menu for widget areas $sub->dropdown(trans('admin/mainMenu.widgetAreas'), function ($sub) { $sub->route('widgetareas.new', trans('admin/mainMenu.newWidgetArea'), [], 1, ['icon' => 'fa fa-fw fa-plus']); $sub->route('widgetareas.overview', trans('admin/mainMenu.widgetAreaOverview'), [], 2, ['icon' => 'fa fa-fw fa-list']); }, 50, ['icon' => 'fa fa-fw fa-object-group']); }, 50, ['icon' => 'fa fa-fw fa-puzzle-piece']); /** * Templates */ $templatePaths = TemplatePathsHumanReadableRootOnly::getWithTranslations(); if (!empty($templatePaths)) { $menu->dropdown(trans('admin/mainMenu.templates'), function ($sub) use ($templatePaths) { $i = 1; foreach ($templatePaths as $id => $name) { $sub->route('templates.overview', $name, ['id' => $id], $i++); } }, 60, ['icon' => 'fa fa-fw fa-file-code-o']); } /** * Divide system entries and other links in menu */ $menu->addDivider(9999); $menu->dropdown(trans('admin/mainMenu.system'), function ($sub) { $sub->dropdown(trans('admin/mainMenu.userManagement'), function ($sub) { $sub->route('users.new', trans('admin/mainMenu.newUser'), [], 10, ['icon' => 'fa fa-fw fa-user-plus']); $sub->route('users.overview', trans('admin/mainMenu.usersOverview'), [], 30, ['icon' => 'fa fa-fw fa-users']); }, 20, ['icon' => 'fa fa-fw fa-users']); // $menu->dropdown(trans('admin/mainMenu.customFields'), function ($sub) { // $sub->route('customfields.new', trans('admin/mainMenu.customFieldsNew'), [], 10, ['icon' => 'fa fa-fw fa-code']); // $sub->route('customfields.overview', trans('admin/mainMenu.customFieldsOverview'), [], 50, ['icon' => 'fa fa-fw fa-code-fork']); // }, 30, ['icon' => 'fa fa-fw fa-code']); $sub->route('log.overview', trans('admin/mainMenu.actionLog'), [], 70, ['icon' => 'fa fa-fw fa-history']); $sub->route('settings.overview', trans('admin/mainMenu.settings'), [], 80, ['icon' => 'fa fa-fw fa-gear']); }, 10000, ['icon' => 'fa fa-fw fa-gear']); }); // order // create menu with user profile \Menu::create('profileMenu', function ($menu) { $menu->route('users.detail', trans('admin/userManagement.profile'), [], 10, ['icon' => 'fa fa-fw fa-user icon']); $menu->addDivider(999); $menu->route('logout', trans('admin/common.logout'), [], 1000, ['icon' => 'fa fa-fw fa-power-off icon']); }); } }