From c07ac4b0e46f6c4a5f8ae955f77a090c90487b00 Mon Sep 17 00:00:00 2001 From: Gregor Vostrak Date: Tue, 17 Mar 2026 16:58:44 +0100 Subject: [PATCH] add random identifier to exports to avoid path conflicts, fixes #1035 --- app/Http/Controllers/Api/V1/TimeEntryController.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/Http/Controllers/Api/V1/TimeEntryController.php b/app/Http/Controllers/Api/V1/TimeEntryController.php index ed1ca073..80ef4543 100644 --- a/app/Http/Controllers/Api/V1/TimeEntryController.php +++ b/app/Http/Controllers/Api/V1/TimeEntryController.php @@ -53,6 +53,7 @@ use Illuminate\Support\Facades\Blade; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\Storage; +use Illuminate\Support\Str; use Maatwebsite\Excel\Facades\Excel; use Spatie\TemporaryDirectory\TemporaryDirectory; @@ -246,7 +247,7 @@ class TimeEntryController extends Controller 'user', 'tagsRelation', ]); - $filename = 'time-entries-export-'.now()->format('Y-m-d_H-i-s').'.'.$format->getFileExtension(); + $filename = 'time-entries-export-'.now()->format('Y-m-d_H-i-s').'-'.Str::uuid().'.'.$format->getFileExtension(); $folderPath = 'exports'; $path = $folderPath.'/'.$filename; $localizationService = LocalizationService::forOrganization($organization); @@ -469,7 +470,7 @@ class TimeEntryController extends Controller $timezone = app(TimezoneService::class)->getTimezoneFromUser($this->user()); $localizationService = LocalizationService::forOrganization($organization); - $filename = 'time-entries-report-'.now()->format('Y-m-d_H-i-s').'.'.$format->getFileExtension(); + $filename = 'time-entries-report-'.now()->format('Y-m-d_H-i-s').'-'.Str::uuid().'.'.$format->getFileExtension(); $folderPath = 'exports'; $path = $folderPath.'/'.$filename;