FEATURE: make top menu extendable

This commit is contained in:
Michal Kváček
2017-09-25 11:20:57 +02:00
parent 1388383bb6
commit 4ef5e3e3cd
8 changed files with 56 additions and 183 deletions
+21 -1
View File
@@ -3,7 +3,6 @@
namespace App\CMS\Handlers;
use App\CMS\Contracts\Modules\BaseModuleHandler;
use App\CMS\Enumerations\TemplatePathsHumanReadableRootOnly;
use App\CMS\Enumerations\WidgetTypes;
use App\CMS\Repositories\Module;
use App\Models\ActionLog\ActionLog;
@@ -14,6 +13,7 @@ use App\Models\Templates\Template;
use App\Models\User;
use App\Models\Widgets\Widget;
use App\Models\Widgets\WidgetArea;
use Mcamara\LaravelLocalization\Facades\LaravelLocalization;
abstract class BaseHandler implements BaseModuleHandler
{
@@ -125,6 +125,26 @@ abstract class BaseHandler implements BaseModuleHandler
}, 10000, ['icon' => 'fa fa-fw fa-gears']);
});
\Menu::create('topMenu', function ($menu) use ($user) {
if (count(LaravelLocalization::getSupportedLocales()) > 1) {
$menu->dropdown(trans(LaravelLocalization::getCurrentLocaleName()), function ($menu) use ($user) {
foreach (LaravelLocalization::getSupportedLocales() as $localeCode => $properties) {
$menu->url(LaravelLocalization::getLocalizedURL($localeCode), $properties['native']);
}
});
}
if ($user->can('manage', Content::class)) {
$menu->route('page.index', '', [], 10, [
'icon' => 'fa fa-fw fa-globe',
'title' => trans('common.goToWeb'),
'target' => '_blank',
'data-toggle' => 'tooltip',
'data-placement' => 'left'
]);
}
});
// create menu with user profile
\Menu::create('profileMenu', function ($menu) use ($user) {
$menu->route('users.detail', trans('admin/userManagement.profile'), ['user' => $user], 10, ['icon' => 'fa fa-fw fa-user icon']);