feat: implement multi-tenancy and super admin impersonation with security banner

This commit is contained in:
jeremy bayse
2026-02-21 20:15:47 +01:00
parent a0e904d69d
commit 63e448ef22
31 changed files with 819 additions and 51 deletions

View File

@@ -32,7 +32,22 @@ class HandleInertiaRequests extends Middleware
return [
...parent::share($request),
'auth' => [
'user' => $request->user() ? $request->user()->load('roles') : null,
'user' => $request->user()
? $request->user()->load([
'roles' => function($q) { $q->withoutGlobalScope('structure'); },
'structure'
])
: null,
],
'tenant' => [
'current' => config('tenant.structure_id')
? \App\Models\Structure::find(config('tenant.structure_id'))
: null,
'is_impersonating' => $request->session()->has('target_structure_id'),
],
'flash' => [
'success' => $request->session()->get('success'),
'error' => $request->session()->get('error'),
],
];
}