Files
Archive/retro/atomcms/app/Http/Middleware/HandleInertiaRequests.php

42 lines
1.1 KiB
PHP
Raw Permalink Normal View History

2025-12-09 06:52:43 +00:00
<?php
namespace App\Http\Middleware;
use Atom\Core\Models\User;
use Atom\Core\Models\WebsiteSetting;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Session;
use Inertia\Middleware;
class HandleInertiaRequests extends Middleware
{
/**
* Determines the current asset version.
*
* @see https://inertiajs.com/asset-versioning
*/
public function version(Request $request): ?string
{
return parent::version($request);
}
/**
* Define the props that are shared by default.
*
* @see https://inertiajs.com/shared-data
*
* @return array<string, mixed>
*/
public function share(Request $request): array
{
return array_merge(parent::share($request), [
'online' => User::whereOnline('1')->count(),
'settings' => WebsiteSetting::pluck('value', 'key'),
'locale' => Session::get('locale') ?: app()->getLocale(),
'supported_locales' => config('locale.supported_locales'),
'i18n' => __('*'),
'auth.user' => fn () => $request->user() ? array_merge($request->user()->toArray()) : null,
]);
}
}