diff --git a/src/Http/Middleware/CP/BootPreferences.php b/src/Http/Middleware/CP/BootPreferences.php index a02d7dab2c..c0fbd381d3 100644 --- a/src/Http/Middleware/CP/BootPreferences.php +++ b/src/Http/Middleware/CP/BootPreferences.php @@ -9,6 +9,10 @@ class BootPreferences { public function handle($request, Closure $next) { + if (! $request->inertia() && $request->ajax()) { + return $next($request); + } + Preference::boot(); return $next($request); diff --git a/src/Http/Middleware/CP/BootUtilities.php b/src/Http/Middleware/CP/BootUtilities.php index 0307fa2ea8..1b0e228ee9 100644 --- a/src/Http/Middleware/CP/BootUtilities.php +++ b/src/Http/Middleware/CP/BootUtilities.php @@ -9,6 +9,10 @@ class BootUtilities { public function handle($request, Closure $next) { + if (! $request->inertia() && $request->ajax()) { + return $next($request); + } + Utility::boot(); return $next($request); diff --git a/src/Http/Middleware/CP/ContactOutpost.php b/src/Http/Middleware/CP/ContactOutpost.php index 33c7d1f4f7..01bb32050a 100644 --- a/src/Http/Middleware/CP/ContactOutpost.php +++ b/src/Http/Middleware/CP/ContactOutpost.php @@ -16,6 +16,10 @@ public function __construct(Outpost $outpost) public function handle($request, Closure $next) { + if (! $request->inertia() && $request->ajax()) { + return $next($request); + } + $this->outpost->radio(); return $next($request); diff --git a/src/Http/Middleware/CP/CountUsers.php b/src/Http/Middleware/CP/CountUsers.php index 65fd2a30fa..473bae5648 100644 --- a/src/Http/Middleware/CP/CountUsers.php +++ b/src/Http/Middleware/CP/CountUsers.php @@ -11,6 +11,10 @@ class CountUsers { public function handle($request, Closure $next, $guard = null) { + if (! $request->inertia() && $request->ajax()) { + return $next($request); + } + if (! Statamic::pro() && User::count() > 1) { throw new StatamicProRequiredException('Statamic Pro is required for multiple users.'); } diff --git a/src/Http/Middleware/CP/HandleAuthenticatedInertiaRequests.php b/src/Http/Middleware/CP/HandleAuthenticatedInertiaRequests.php index ba832c8b8f..6458a14d39 100644 --- a/src/Http/Middleware/CP/HandleAuthenticatedInertiaRequests.php +++ b/src/Http/Middleware/CP/HandleAuthenticatedInertiaRequests.php @@ -19,6 +19,10 @@ class HandleAuthenticatedInertiaRequests { public function handle(Request $request, Closure $next) { + if (! $request->inertia() && $request->ajax()) { + return $next($request); + } + Inertia::share($this->share($request)); return $next($request); diff --git a/src/Http/Middleware/CP/HandleInertiaRequests.php b/src/Http/Middleware/CP/HandleInertiaRequests.php index 5d6f0f3ce4..780d8ed694 100644 --- a/src/Http/Middleware/CP/HandleInertiaRequests.php +++ b/src/Http/Middleware/CP/HandleInertiaRequests.php @@ -2,6 +2,7 @@ namespace Statamic\Http\Middleware\CP; +use Closure; use Illuminate\Http\Request; use Inertia\Middleware; use Statamic\CP\Toasts\Manager; @@ -21,6 +22,15 @@ public function __construct(private Manager $toasts) // } + public function handle(Request $request, Closure $next) + { + if (! $request->inertia() && $request->ajax()) { + return $next($request); + } + + return parent::handle($request, $next); + } + public function share(Request $request): array { return array_filter([ diff --git a/src/Http/Middleware/DeleteTemporaryFileUploads.php b/src/Http/Middleware/DeleteTemporaryFileUploads.php index 50e18b0734..ca5f30b683 100644 --- a/src/Http/Middleware/DeleteTemporaryFileUploads.php +++ b/src/Http/Middleware/DeleteTemporaryFileUploads.php @@ -9,6 +9,10 @@ class DeleteTemporaryFileUploads { public function handle($request, Closure $next) { + if (! $request->inertia() && $request->ajax()) { + return $next($request); + } + $lottery = [2, 100]; if (random_int(1, $lottery[1]) <= $lottery[0]) { diff --git a/src/Http/Middleware/RedirectIfTwoFactorSetupIncomplete.php b/src/Http/Middleware/RedirectIfTwoFactorSetupIncomplete.php index 2692397288..1cd2cd5fae 100644 --- a/src/Http/Middleware/RedirectIfTwoFactorSetupIncomplete.php +++ b/src/Http/Middleware/RedirectIfTwoFactorSetupIncomplete.php @@ -10,6 +10,10 @@ class RedirectIfTwoFactorSetupIncomplete { public function handle(Request $request, Closure $next) { + if (! $request->inertia() && $request->ajax()) { + return $next($request); + } + if ( ($user = User::fromUser($request->user())) && $user->isTwoFactorAuthenticationRequired()