PHP code example of otifsolutions / aclmenu
1. Go to this page and download the library: Download otifsolutions/aclmenu library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
otifsolutions / aclmenu example snippets
UserRole::updateOrCreate(
['id' => 1],[
'name' => 'ADMIN'
]);
$id = UserRole::Where(['name' => 'ADMIN'])->get('id');
MenuItem::updateOrCreate(
['id' => 1], [
'order_number'=> 1,
'parent_id' => null,
'icon' => 'feather icon-home',
'name' => 'dashboard',
'route' => '/dashboard',
'generate_permission' => 'ALL'
])
->user_roles()
->sync($id);
{
$userRole = UserRole::where(['name' => 'ADMIN'])->first();
$permissions = Permission::whereIn('menu_item_id',$userRole->menu_items()->pluck('id'))->pluck('id');
$userRole->permissions()->sync($permissions);
}
if (!Auth::user()->hasPermission('READ', '/dashboard'))
return 'error';
return view('dashboard');
if ($request->user() == null)
return redirect(config('laravelacl.redirect_url'));
'models' => [
'user' => config('auth.providers.users.model')
]
Route::get('/dashboard', [DashboardController::class, 'dashboard'])->middleware('role:dashboard');
PHP 5 > 5.3.0
$this->call(UserRolesTableSeeder::class);
$this->call(MenuItemsTableSeeder::class);
$this->call(UserTableSeeder::class);
$this->call(TeamsTableSeeder::class);
Artisan::call('aclmenu:refresh');
$this->call(DefaultUserPermissionsSync::class);
php artisan db:seed
\Session::put('current_permission', $permission);
html
<ul class="navigation navigation-main" id="main-menu-navigation" data-menu="menu-navigation">
@if(Auth::user()['user_role'])
@foreach(Auth::user()['user_role']->menu_items()->orderBy('order_number', 'ASC')->get() as $menuItem)
@if (Auth::user()->hasPermissionMenuItem($menuItem['id']))
@if ($menuItem['show_on_sidebar'])
@if($menuItem['heading'])
<li class="navigation-header">
{{$menuItem['heading']}}
</li>
@endif
@if (count($menuItem['children']) == 0)
@if($menuItem['parent_id'] === 0)
<li class="nav-item {{ Request::is(strtolower(str_replace('/','',$menuItem['route']))) || Request::is(strtolower(str_replace('/','',$menuItem['route'])).'/*')?'active':'' }}">
<a href="{{ url($menuItem['route']) }}">
<i class="{{ $menuItem['icon'] }}"></i>
<span class="menu-title" data-i18n="{{ $menuItem['name'] }}">{{ $menuItem['name'] }}</span>
</a>
</li>
@endif
@else
<li class="nav-item has-sub {{ Request::is(strtolower(str_replace(' ','_',str_replace('/','',$menuItem['route']))).'/*') && (Auth::user()->sidebar_collapse == 0)? 'open' :'' }}">
<a href="#"><i class="{{ $menuItem['icon'] }}"></i>
<span class="menu-title" data-i18n="{{ $menuItem['name'] }}">{{ $menuItem['name'] }}</span>
</a>
<ul class="menu-content">
@foreach($menuItem['children'] as $child)
@if (Auth::user()->hasPermissionMenuItem($child['id']))
<li class="nav-item {{ Request::is(strtolower(str_replace(' ','_',$child['name']))) || Request::is('*/'.strtolower(str_replace(' ','_',$child['name'])))?'active':'' }}">
<a href="{{ url($child['route']) }}"><i class="{{ $child['icon'] }}"></i><span class="menu-item" data-i18n="{{ $child['name'] }}">{{ $child['name'] }}</span></a>
</li>
@endif
@endforeach
</ul>
</li>
@endif
@endif
@endif
@endforeach
@endif
</ul>