fire event before authorizing menu item

This commit is contained in:
Denis Duliçi
2021-06-18 16:55:04 +03:00
parent c45d7f596f
commit 7ddc9a6995
3 changed files with 96 additions and 42 deletions

View File

@@ -8,6 +8,7 @@ use App\Traits\SearchString;
use App\Utilities\Reports;
use App\Utilities\Widgets;
use Illuminate\Routing\Route;
use Illuminate\Support\Arr;
use Illuminate\Support\Str;
trait Permissions
@@ -473,4 +474,17 @@ trait Permissions
$this->middleware('permission:update-' . $controller)->only('update', 'enable', 'disable');
$this->middleware('permission:delete-' . $controller)->only('destroy');
}
public function canAccessMenuItem($title, $permissions)
{
$permissions = Arr::wrap($permissions);
$item = new \stdClass();
$item->title = $title;
$item->permissions = $permissions;
event(new \App\Events\Menu\ItemAuthorizing($item));
return user()->canAny($item->permissions);
}
}