<?php
// app/Http/Middleware/LivewireTempDiskManager.php
//
// In bootstrap/app.php place the following
// $middleware->web(append: [
// LivewireTempDiskManager::class,
// ]);
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
use Illuminate\Support\Str;
class LivewireTempDiskManager
{
public function handle(Request $request, Closure $next)
{
$path = parse_url($request->header('referer'), PHP_URL_PATH);
$disk = match (true) {
// 1. Letters Resource (S3)
Str::contains($path, '/special') => 'g3-transfer',
// Default fallback
default => 'local',
};
// Apply disk override for this request
config([
'livewire.temporary_file_upload.disk' => $disk,
]);
return $next($request);
}
}
<?php
// app/Http/Middleware/LivewireTempDiskManager.php
//
// In bootstrap/app.php place the following
// $middleware->web(append: [
// LivewireTempDiskManager::class,
// ]);
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
use Illuminate\Support\Str;
class LivewireTempDiskManager
{
public function handle(Request $request, Closure $next)
{
$path = parse_url($request->header('referer'), PHP_URL_PATH);
$disk = match (true) {
// 1. Letters Resource (S3)
Str::contains($path, '/special') => 'g3-transfer',
// Default fallback
default => 'local',
};
// Apply disk override for this request
config([
'livewire.temporary_file_upload.disk' => $disk,
]);
return $next($request);
}
}