From 388e4c10c46e1b5286fd4c80ffc44ae9f9aab548 Mon Sep 17 00:00:00 2001 From: spencerrlongg Date: Tue, 17 Oct 2023 19:03:58 -0500 Subject: [PATCH] catch custom fields that are arrays --- app/Http/Controllers/Api/AssetsController.php | 5 ++++- app/Models/Asset.php | 4 ---- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/app/Http/Controllers/Api/AssetsController.php b/app/Http/Controllers/Api/AssetsController.php index e49edc4db..4d146d361 100644 --- a/app/Http/Controllers/Api/AssetsController.php +++ b/app/Http/Controllers/Api/AssetsController.php @@ -530,7 +530,6 @@ class AssetsController extends Controller * @author [A. Gianotto] [] * @param \App\Http\Requests\ImageUploadRequest $request * @since [v4.0] - * @return JsonResponse */ public function store(ImageUploadRequest $request) { @@ -579,6 +578,10 @@ class AssetsController extends Controller if (($model) && ($model->fieldset)) { foreach ($model->fieldset->fields as $field) { + //reduce "array to string conversion" exceptions - ideally we'd handle this in a form request, but this works for now + if(is_array($request->input($field->db_column, null))) { + return response()->json(Helper::formatStandardApiResponse('error', null, 'This custom field can not be an array', 200)); + } // Set the field value based on what was sent in the request $field_val = $request->input($field->db_column, null); diff --git a/app/Models/Asset.php b/app/Models/Asset.php index a3e00ee94..7bce0df24 100644 --- a/app/Models/Asset.php +++ b/app/Models/Asset.php @@ -220,10 +220,6 @@ class Asset extends Depreciable } } - if (!is_array($params)){ - return false; - } - return parent::save($params); }