Compare commits

..

1 Commits

Author SHA1 Message Date
vasya 362eeab9ce добавляю роут вызова меню с приложениями 2026-03-14 20:08:21 +03:00
2 changed files with 3 additions and 23 deletions
-23
View File
@@ -1,23 +0,0 @@
<?php
namespace App\Http\Middleware;
//очереди для чтения нотификаций
use Illuminate\Support\Facades\Redis;
/**
* Глобальный посредник аутентификации на платформе Magic для всех роутов платформы
*/
class AuthenticateMagic
{
/**
* Handle an incoming request.
*
* @param \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response) $next
*/
public function handle(Request $request, Closure $next): Response
{
UserContext::setUserAppPermissions($user->tokens()->latest()->first()->abilities['permissions']);
#Гаврилов
//Насксолько я помню, это связано с механизмом получения нотификаций на фронте (через отдельный компонент React) на случай, если нотификации формируются на бэке и должны читаться фронтом сразу при рендеринге. Обычно, нотификации формируются после запроса с фронта, например, при fetch запросе на отправку заявки на такси и сразу же рендерятся на этой же странице после выполнения fetch запроса, но бывают ситуации, когда пользователя с бэке редиректит на другую страницу, в результате чего тяряется "контекст" нотификаций. Я как-то настраивал чтение редис очередей на любой странице, чтобы при рендеринге любой страницы сразу проверялась есть ли непрочитенная нотификация. Если есть - она читается, отображается и удаляется из очереди. Но может конкретно строка ниже связана с тестированием , уже не помню
Redis::setex('notifications', 60, 123);
return $next($request);
} else {
+3
View File
@@ -5,3 +5,6 @@ use Illuminate\Support\Facades\Route;
Route::get('/', function () {
return view('welcome');
});
Route::get('/menu', function () {
return view('menu_start');
})->name('magic_menu');