From 65acffb9e2eb639d7bab5ac3b62f6e1860c0a88a Mon Sep 17 00:00:00 2001 From: Christian Gerdes Date: Wed, 11 Feb 2015 21:14:58 +0100 Subject: [PATCH] Allowed user to add custom attributes --- src/Laracasts/Validation/FactoryInterface.php | 2 +- src/Laracasts/Validation/FormValidator.php | 16 +++++++++++++++- src/Laracasts/Validation/LaravelValidator.php | 5 +++-- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/src/Laracasts/Validation/FactoryInterface.php b/src/Laracasts/Validation/FactoryInterface.php index 6764357..18cd410 100644 --- a/src/Laracasts/Validation/FactoryInterface.php +++ b/src/Laracasts/Validation/FactoryInterface.php @@ -10,6 +10,6 @@ interface FactoryInterface { * @param array $messages * @return ValidatorInterface */ - public function make(array $formData, array $rules, array $messages = []); + public function make(array $formData, array $rules, array $messages = [], array $customAttributes = []); } diff --git a/src/Laracasts/Validation/FormValidator.php b/src/Laracasts/Validation/FormValidator.php index ec4fd62..b95d15c 100644 --- a/src/Laracasts/Validation/FormValidator.php +++ b/src/Laracasts/Validation/FormValidator.php @@ -20,6 +20,11 @@ abstract class FormValidator { */ protected $messages = []; + /** + * @var array + */ + protected $customAttributes = []; + /** * @param ValidatorFactory $validator */ @@ -42,7 +47,8 @@ public function validate($formData) $this->validation = $this->validator->make( $formData, $this->getValidationRules(), - $this->getValidationMessages() + $this->getValidationMessages(), + $this->getCustomAttributes() ); if ($this->validation->fails()) @@ -53,6 +59,14 @@ public function validate($formData) return true; } + /** + * @return array + */ + public function getCustomAttributes() + { + return $this->customAttributes; + } + /** * @return array */ diff --git a/src/Laracasts/Validation/LaravelValidator.php b/src/Laracasts/Validation/LaravelValidator.php index 8cc7569..1485af9 100644 --- a/src/Laracasts/Validation/LaravelValidator.php +++ b/src/Laracasts/Validation/LaravelValidator.php @@ -23,11 +23,12 @@ function __construct(Validator $validator) * @param array $formData * @param array $rules * @param array $messages + * @param array $customAttributes * @return \Illuminate\Validation\Validator */ - public function make(array $formData, array $rules, array $messages = []) + public function make(array $formData, array $rules, array $messages = [], array $customAttributes = []) { - return $this->validator->make($formData, $rules, $messages); + return $this->validator->make($formData, $rules, $messages, $customAttributes); } }