24 lines
502 B
PHP
24 lines
502 B
PHP
<?php
|
|
|
|
namespace Modules\Tms\Http\Controllers\Concerns;
|
|
|
|
trait AuthorizesTms
|
|
{
|
|
protected function authorizeTmsAccess(?string $permission = null): void
|
|
{
|
|
$user = auth()->user();
|
|
|
|
if ($permission && $user->can($permission)) {
|
|
return;
|
|
}
|
|
|
|
if (! $user->can('tms.access')) {
|
|
abort(403, 'Unauthorized action.');
|
|
}
|
|
|
|
if ($permission && ! $user->can($permission)) {
|
|
abort(403, 'Unauthorized action.');
|
|
}
|
|
}
|
|
}
|