function init() { $configs = ManagerMenuSidebar::get($this->name); $items = []; foreach ($configs as $config) { $items = array_merge_recursive(\Config::get($config), $items); } if (count($items)) { foreach ($items as $section => $section_data) { $this->setSection($section); $items = (array) Arr::get($section_data, 'items'); foreach ($items as $as => $menu_key) { // dump($name . '|' . $as . '|' . $menu_key); // dump(Route::_('larakit_generator::admin.generator')); // dd(\URL::route('larakit_generator::admin.generator')); $this->addItem($as, $menu_key); } $groups = (array) Arr::get($section_data, 'groups'); foreach ($groups as $k => $group) { $title = Arr::get($group, 'title', $k); $icon = Arr::get($group, 'icon', 'fa fa-gear'); $attributes = Arr::get($group, 'attributes', []); $this->addItemGroup($k, $title, $icon, $attributes); } } } }
static function larakitRegisterMenuSidebar($package, $alias, $entity) { //автоматическая регистрация пунктов бокового меню SideBar foreach (ManagerSection::get() as $code => $name) { $dir = base_path('vendor/' . $package . '/src/config/larakit/sidebar/' . $code); $dir = HelperFile::normalizeFilePath($dir); if (file_exists($dir)) { $dirs = rglob('*.php', 0, $dir); foreach ($dirs as $d) { $d = str_replace($dir, '', $d); $d = str_replace('.php', '', $d); $d = trim($d, '/'); ManagerMenuSidebar::register($alias . '::larakit/sidebar/' . $code . '/' . $d, $code); } } } }