Профиль хирургии
This commit is contained in:
35
app/Http/Middleware/Authenticate.php
Normal file
35
app/Http/Middleware/Authenticate.php
Normal file
@@ -0,0 +1,35 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Illuminate\Auth\AuthenticationException;
|
||||
use Illuminate\Http\Request;
|
||||
use Symfony\Component\HttpFoundation\Response;
|
||||
use Illuminate\Auth\Middleware\Authenticate as Middleware;
|
||||
|
||||
class Authenticate extends Middleware
|
||||
{
|
||||
public function handle($request, Closure $next, ...$guards)
|
||||
{
|
||||
if ($request->user() === null) {
|
||||
// Проверяем, не находится ли пользователь на странице входа или в процессе авторизации
|
||||
if ($request->is('login') || $request->is('auth/login')) {
|
||||
return $next($request);
|
||||
}
|
||||
|
||||
throw new AuthenticationException(
|
||||
'Unauthenticated.',
|
||||
$guards,
|
||||
$request->expectsJson() ? null : $this->redirectTo($request),
|
||||
);
|
||||
}
|
||||
|
||||
return $next($request);
|
||||
}
|
||||
|
||||
protected function redirectTo($request): ?string
|
||||
{
|
||||
return $request->expectsJson() ? null : route('login');
|
||||
}
|
||||
}
|
||||
@@ -40,6 +40,10 @@ class HandleInertiaRequests extends Middleware
|
||||
$user = $request->user() ?? Auth::guard('sanctum')->user();
|
||||
return [
|
||||
...parent::share($request),
|
||||
'app' => [
|
||||
'version' => config('app.version'),
|
||||
'tag' => config('app.tag')
|
||||
],
|
||||
'user' => $user ? [
|
||||
'name' => $user->name,
|
||||
'token' => Session::get('token'),
|
||||
@@ -47,7 +51,7 @@ class HandleInertiaRequests extends Middleware
|
||||
'role' => $user->currentRole(),
|
||||
'available_roles' => $user->roles,
|
||||
'available_departments' => $user->availableDepartments(),
|
||||
'current_department' => $user->department
|
||||
'current_department' => $user->department->load('departmentType')
|
||||
] : null,
|
||||
];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user