From a25d9348df5d2f8efae6ec75edb19aa714894e71 Mon Sep 17 00:00:00 2001 From: Hui Yang Date: Mon, 20 Jun 2022 21:54:41 +0800 Subject: [PATCH 1/4] fix issue where when user save a file from fusion cms to their local, the file will not have any extension name, and hence they might don't know how to open the file --- src/Http/Controllers/Web/FileController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Http/Controllers/Web/FileController.php b/src/Http/Controllers/Web/FileController.php index 309ef8923..366c02e0f 100644 --- a/src/Http/Controllers/Web/FileController.php +++ b/src/Http/Controllers/Web/FileController.php @@ -32,7 +32,7 @@ public function index($uuid, $name) return Storage::disk($file->disk->handle)->response( $file->location, - $file->name, + $file->name.'.'.$file->extension, [ 'Content-Type' => $file->mimetype, ] From af0aa54514d897bde1b6047f7f4e7d7f6ec72353 Mon Sep 17 00:00:00 2001 From: Hui Yang Date: Thu, 2 Mar 2023 22:09:23 +0800 Subject: [PATCH 2/4] fix file mimetype validation rule for file fieldtype was not working as expected --- resources/views/forms/fields/file.blade.php | 2 +- src/Fieldtypes/FileFieldtype.php | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/resources/views/forms/fields/file.blade.php b/resources/views/forms/fields/file.blade.php index 6a3a19d0c..ff2cb46f4 100644 --- a/resources/views/forms/fields/file.blade.php +++ b/resources/views/forms/fields/file.blade.php @@ -6,7 +6,7 @@ settings['multiple'] ? 'multiple': null }} /> diff --git a/src/Fieldtypes/FileFieldtype.php b/src/Fieldtypes/FileFieldtype.php index 523e54473..b0b246bad 100755 --- a/src/Fieldtypes/FileFieldtype.php +++ b/src/Fieldtypes/FileFieldtype.php @@ -93,6 +93,8 @@ public function persistRelationship($model, Field $field) $oldValues = $model->{$field->handle}->pluck('id'); $newValues = collect(); + $files = is_array($files) ? $files : [$files]; + foreach ($files as $key => $file) { foreach ((array) $field->settings['directory'] as $data) { /** From f014ca454fd5da543270442c18a0a20c86b747a7 Mon Sep 17 00:00:00 2001 From: Hui Yang Date: Mon, 29 Jul 2024 00:36:49 +0800 Subject: [PATCH 3/4] fix clear file for FileFieldtype not working --- src/Fieldtypes/FileFieldtype.php | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/Fieldtypes/FileFieldtype.php b/src/Fieldtypes/FileFieldtype.php index b0b246bad..fbefd1fa4 100755 --- a/src/Fieldtypes/FileFieldtype.php +++ b/src/Fieldtypes/FileFieldtype.php @@ -116,6 +116,18 @@ public function persistRelationship($model, Field $field) // -- $model->{$field->handle}()->detach($oldValues); $model->{$field->handle}()->attach($newValues); + } else if (request()->filled($field->handle)) { + $oldValues = isset($model->{$field->handle}) ? $model->{$field->handle}->pluck('id') : []; + $newValues = collect($value ?? request()->input($field->handle)) + ->mapWithKeys(function ($value) use ($field) { + return [ + $value['id'] => [ + 'field_id' => $field->id, + ], + ]; + }); + $model->{$field->handle}()->wherePivot('field_id', $field->id)->detach($oldValues); + $model->{$field->handle}()->attach($newValues); } } From e8ecce962ecceaa801359fc17ac15d3b6301f6de Mon Sep 17 00:00:00 2001 From: Hui Yang Date: Fri, 3 Jan 2025 22:49:25 +0800 Subject: [PATCH 4/4] add support for webp image file --- src/Http/Controllers/Web/FileController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Http/Controllers/Web/FileController.php b/src/Http/Controllers/Web/FileController.php index 366c02e0f..91a618324 100644 --- a/src/Http/Controllers/Web/FileController.php +++ b/src/Http/Controllers/Web/FileController.php @@ -22,7 +22,7 @@ public function index($uuid, $name) return redirect()->to('/file/'.$uuid.'/'.$file->name.'?'.http_build_query($params)); } - if (in_array($file->mimetype, ['image/jpeg', 'image/gif', 'image/png'])) { + if (in_array($file->mimetype, ['image/jpeg', 'image/gif', 'image/png', 'image/webp'])) { return $this->imageResponse($file, $params); }