diff --git a/website/app/Http/Middleware/HandleInertiaRequests.php b/website/app/Http/Middleware/HandleInertiaRequests.php new file mode 100644 index 0000000..9e3b7c8 --- /dev/null +++ b/website/app/Http/Middleware/HandleInertiaRequests.php @@ -0,0 +1,30 @@ + */ + public function share(Request $request): array + { + return array_merge(parent::share($request), [ + 'auth' => fn () => [ + 'user' => $request->user() ? $request->user()->only('id', 'name', 'email', 'status') : null, + ], + 'flash' => fn () => [ + 'success' => $request->session()->get('success'), + 'error' => $request->session()->get('error'), + ], + 'domains' => fn () => [ + 'marketing' => config('app.domains.marketing'), + 'account' => config('app.domains.account'), + 'admin' => config('app.domains.admin'), + ], + ]); + } +} diff --git a/website/bootstrap/app.php b/website/bootstrap/app.php index d711574..09c4e38 100644 --- a/website/bootstrap/app.php +++ b/website/bootstrap/app.php @@ -29,9 +29,11 @@ return Application::configure(basePath: dirname(__DIR__)) $middleware->trustProxies(at: '*'); $middleware->web(append: [ - \Inertia\Middleware::class, + \App\Http\Middleware\HandleInertiaRequests::class, ]); + $middleware->redirectGuestsTo(fn () => 'https://'.config('app.domains.account').'/login'); + $middleware->alias([ 'role' => \Spatie\Permission\Middleware\RoleMiddleware::class, 'permission' => \Spatie\Permission\Middleware\PermissionMiddleware::class, diff --git a/website/resources/js/Layouts/AdminLayout.vue b/website/resources/js/Layouts/AdminLayout.vue index df08490..147641c 100644 --- a/website/resources/js/Layouts/AdminLayout.vue +++ b/website/resources/js/Layouts/AdminLayout.vue @@ -1,8 +1,12 @@