diff --git a/app/Http/Controllers/NailPolishImportController.php b/app/Http/Controllers/NailPolishImportController.php index 9d88839..de2b4c1 100644 --- a/app/Http/Controllers/NailPolishImportController.php +++ b/app/Http/Controllers/NailPolishImportController.php @@ -6,6 +6,8 @@ use App\Jobs\ProcessNailPolishImage; use App\Models\NailPolishImport; use Illuminate\Http\Request; use Illuminate\Support\Facades\Storage; +use Intervention\Image\ImageManager; +use Intervention\Image\Drivers\Gd\Driver; class NailPolishImportController extends Controller { @@ -29,8 +31,17 @@ class NailPolishImportController extends Controller 'image' => 'required|image|mimes:jpeg,png,jpg,webp|max:10240', ]); - $file = $request->file('image'); - $path = $file->store('nail-polish-imports', 'public'); + $file = $request->file('image'); + $filename = 'nail-polish-imports/' . uniqid() . '.jpg'; + + $manager = new ImageManager(new Driver()); + $image = $manager->read($file->getRealPath()); + + // Auf max. 1200px skalieren und als JPEG mit 85% Qualität speichern + $image->scaleDown(width: 1200, height: 1200); + Storage::disk('public')->put($filename, $image->toJpeg(85)); + + $path = $filename; $import = NailPolishImport::create([ 'user_id' => auth()->id(),