From 128097ea161aea82b74f0f92173e5cdef74819e7 Mon Sep 17 00:00:00 2001 From: Tom Oude Rengerink Date: Fri, 23 Oct 2020 16:11:20 +0200 Subject: [PATCH] Allow disabling of auto prepending the field labels shown in the error message. --- src/Valitron/Validator.php | 45 +++++++++++++++++++++++++++++++++++++- 1 file changed, 44 insertions(+), 1 deletion(-) diff --git a/src/Valitron/Validator.php b/src/Valitron/Validator.php index c412119..0a3c107 100644 --- a/src/Valitron/Validator.php +++ b/src/Valitron/Validator.php @@ -83,6 +83,11 @@ class Validator */ protected $stop_on_first_fail = false; + /** + * @var bool + */ + protected $prepend_labels = true; + /** * Setup validation * @@ -144,6 +149,14 @@ class Validator return static::$_langDir ?: dirname(dirname(__DIR__)) . '/lang'; } + /** + * @param bool $prepend_labels + */ + public function prependLabels($prepend_labels = true) + { + $this->prepend_labels = $prepend_labels; + } + /** * Required field validator * @@ -900,6 +913,12 @@ class Validator return false; } + /** + * @param $field + * @param $value + * @param $params + * @return bool + */ protected function validateInstanceOf($field, $value, $params) { $isInstanceOf = false; @@ -1022,6 +1041,12 @@ class Validator return true; } + /** + * @param $field + * @param $value + * @param $params + * @return bool + */ protected function validateArrayHasKeys($field, $value, $params) { if (!is_array($value) || !isset($params[0])) { @@ -1124,6 +1149,12 @@ class Validator $this->_labels = array(); } + /** + * @param $data + * @param $identifiers + * @param bool $allow_empty + * @return array + */ protected function getPart($data, $identifiers, $allow_empty = false) { // Catches the case where the field is an array of discrete values @@ -1167,6 +1198,13 @@ class Validator } } + /** + * @param $validation + * @param $field + * @param $values + * @param $multiple + * @return bool + */ private function validationMustBeExcecuted($validation, $field, $values, $multiple){ //always excecute requiredWith(out) rules if (in_array($validation['rule'], array('requiredWith', 'requiredWithout'))){ @@ -1288,6 +1326,9 @@ class Validator return false; } + /** + * @param $callback + */ protected static function assertRuleCallback($callback) { if (!is_callable($callback)) { @@ -1471,7 +1512,9 @@ class Validator } } } else { - $message = str_replace('{field}', ucwords(str_replace('_', ' ', $field)), $message); + $message = $this->prepend_labels + ? str_replace('{field}', ucwords(str_replace('_', ' ', $field)), $message) + : str_replace('{field} ', '', $message); } return $message;