diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index c98476533..cf87ee4f4 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -2,6 +2,8 @@ namespace App\Providers; +use Anomaly\Streams\Platform\Ui\ControlPanel\Component\Navigation\NavigationFactory; +use Anomaly\Streams\Platform\Ui\ControlPanel\ControlPanelBuilder; use Illuminate\Support\ServiceProvider; class AppServiceProvider extends ServiceProvider @@ -12,15 +14,34 @@ class AppServiceProvider extends ServiceProvider * * @return void */ - public function boot() + public function boot(ControlPanelBuilder $builder, NavigationFactory $factory) { - view()->composer('*', function ($view) { - //Hidden menu items in sidebar on dashboard + view()->composer('*', function ($view) use ($builder, $factory) { + if (auth()->check() and template()->get('cp')) { - $is_hidden = ($navigation = template()->get('cp')->getNavigation()->get('anomaly.module.variables')) ? $navigation->setClass('hidden') : false; - $is_hidden = ($navigation = template()->get('cp')->getNavigation()->get('anomaly.module.system')) ? $navigation->setClass('hidden') : false; - $is_hidden = ($navigation = template()->get('cp')->getNavigation()->get('anomaly.module.redirects')) ? $navigation->setClass('hidden') : false; - $is_hidden = ($navigation = template()->get('cp')->getNavigation()->get('anomaly.module.repeaters')) ? $navigation->setClass('hidden') : false; + //Hidden menu items in sidebar on dashboard + ($navigation = template()->get('cp')->getNavigation()->get('anomaly.module.variables')) ? $navigation->setClass('hidden') : false; + ($navigation = template()->get('cp')->getNavigation()->get('anomaly.module.system')) ? $navigation->setClass('hidden') : false; + ($navigation = template()->get('cp')->getNavigation()->get('anomaly.module.redirects')) ? $navigation->setClass('hidden') : false; + ($navigation = template()->get('cp')->getNavigation()->get('anomaly.module.repeaters')) ? $navigation->setClass('hidden') : false; + + // Add new menu items in sidebar on dashboard + $newNavigations = [ + [ + 'slug' => setting_value("streams::standard_theme"), + 'icon' => 'fa fa-pencil-square-o', + 'title' => 'visiosoft.theme.defaultadmin::section.theme_settings.name', + 'attributes' => [ + 'href' => url("admin/settings/themes/" . setting_value("streams::standard_theme")) + ] + ] + ]; + $cp = $builder->getControlPanel(); + foreach ($newNavigations as $newNavigation) { + if (!template()->get('cp')->getNavigation()->get($newNavigation['slug'])){ + $cp->addNavigationLink($factory->make($newNavigation)); + } + } } //Auto Language Switcher if (config('advs.lang_switcher_for_browser') and is_null(Request()->session()->get('_locale')) and isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {