route('admin.dashboard', trans('admin/mainMenu.dashboard'), [], 10, ['icon' => 'fa fa-dashboard']); $menu->dropdown(trans('admin/mainMenu.userManagement'), function ($sub) { $sub->route('users.new', trans('admin/mainMenu.newUser'), [], 10, ['icon' => 'fa fa-user-plus']); $sub->route('users.detail', trans('admin/mainMenu.userDetail'), [], 20, ['icon' => 'fa fa-user']); $sub->route('users.overview', trans('admin/mainMenu.usersOverview'), [], 30, ['icon' => 'fa fa-users']); }, 20, ['icon' => 'fa fa-users']); $menu->dropdown(trans('admin/mainMenu.contentPages'), function ($sub) { $modules = \App\Models\Module::where('manages_content', true) ->get(); if (!empty($modules)) { $sub->dropdown(trans('admin/mainMenu.newContentPage'), function ($sub) use ($modules) { $i = 1; foreach ($modules as $module) { $sub->route('content.new', trans($module->name), ['moduleId' => $module->id], $i++); } }, 10, ['icon' => 'fa fa-plus']); } $sub->route('content.overview', trans('admin/mainMenu.contentPageOverview'), [], 20, ['icon' => 'fa fa-list']); }, 15, ['icon' => 'fa fa-database']); $menu->route('upload.overview', trans('admin/mainMenu.fileManager'), [], 30, ['icon' => 'fa fa-folder']); $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-plus']); } $sub->route('widgets.overview', trans('admin/mainMenu.widgetsOverview'), [], 20, ['icon' => 'fa 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-plus']); $sub->route('widgetareas.overview', trans('admin/mainMenu.widgetAreaOverview'), [], 2, ['icon' => 'fa fa-list']); }, 50, ['icon' => 'fa fa-object-group']); }, 28, ['icon' => 'fa fa-gears']); $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++); } }, 29, ['icon' => 'fa fa-folder-open']); } // $menu->dropdown(trans('admin/mainMenu.customFields'), function ($sub) { // $sub->route('customfields.new', trans('admin/mainMenu.customFieldsNew'), [], 10, ['icon' => 'fa fa-code']); // $sub->route('customfields.overview', trans('admin/mainMenu.customFieldsOverview'), [], 50, ['icon' => 'fa fa-code-fork']); // }, 30, ['icon' => 'fa fa-code']); $menu->route('log.overview', trans('admin/mainMenu.actionLog'), [], 40, ['icon' => 'fa fa-history']); $menu->route('settings.overview', trans('admin/mainMenu.settings'), [], 50, ['icon' => 'fa fa-gear']); }); // order // create menu with user profile \Menu::create('profileMenu', function ($menu) { $menu->route('users.detail', trans('admin/userManagement.profile')); $menu->route('logout', trans('admin/common.logout')); }); } }