From f3eb501e62bfb062c021779486b463c518b3db27 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Oliveira?= <11134406+jpolive@users.noreply.github.com> Date: Mon, 30 Apr 2018 22:38:38 +0100 Subject: [PATCH] Switch to using DataType name instead of slug in BREAD unique validation (#3040) --- src/Http/Controllers/Controller.php | 6 +++--- src/Http/Controllers/VoyagerBaseController.php | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Http/Controllers/Controller.php b/src/Http/Controllers/Controller.php index 284dd1c9ad..2be839775e 100644 --- a/src/Http/Controllers/Controller.php +++ b/src/Http/Controllers/Controller.php @@ -136,12 +136,12 @@ public function insertUpdateData($request, $slug, $rows, $data) * * @return mixed */ - public function validateBread($request, $data, $slug = null, $id = null) + public function validateBread($request, $data, $name = null, $id = null) { $rules = []; $messages = []; $customAttributes = []; - $is_update = $slug && $id; + $is_update = $name && $id; $fieldsWithValidationRules = $this->getFieldsWithValidationRules($data); @@ -162,7 +162,7 @@ public function validateBread($request, $data, $slug = null, $id = null) if ($is_update) { foreach ($rules[$fieldName] as &$fieldRule) { if (strpos(strtoupper($fieldRule), 'UNIQUE') !== false) { - $fieldRule = \Illuminate\Validation\Rule::unique($slug)->ignore($id); + $fieldRule = \Illuminate\Validation\Rule::unique($name)->ignore($id); } } } diff --git a/src/Http/Controllers/VoyagerBaseController.php b/src/Http/Controllers/VoyagerBaseController.php index e6ece594da..d5c70a28e2 100644 --- a/src/Http/Controllers/VoyagerBaseController.php +++ b/src/Http/Controllers/VoyagerBaseController.php @@ -218,7 +218,7 @@ public function update(Request $request, $id) $this->authorize('edit', $data); // Validate fields with ajax - $val = $this->validateBread($request->all(), $dataType->editRows, $slug, $id); + $val = $this->validateBread($request->all(), $dataType->editRows, $dataType->name, $id); if ($val->fails()) { return response()->json(['errors' => $val->messages()]);