From 4f560fdf5c5ac4cab641fac4204959b3f0a8f602 Mon Sep 17 00:00:00 2001 From: Taylor Otwell Date: Sun, 16 Oct 2011 14:19:54 -0500 Subject: [PATCH] continuing to refactor the validator. --- laravel/language/en/validation.php | 51 ++++++++++++++++-------------- laravel/validation/validator.php | 19 ++++------- 2 files changed, 35 insertions(+), 35 deletions(-) diff --git a/laravel/language/en/validation.php b/laravel/language/en/validation.php index ace0e194..79de7c3f 100644 --- a/laravel/language/en/validation.php +++ b/laravel/language/en/validation.php @@ -2,28 +2,33 @@ return array( - "accepted" => "The :attribute must be accepted.", - "active_url" => "The :attribute is not a valid URL.", - "alpha" => "The :attribute may only contain letters.", - "alpha_dash" => "The :attribute may only contain letters, numbers, and dashes.", - "alpha_num" => "The :attribute may only contain letters and numbers.", - "between" => "The :attribute must be between :min - :max.", - "confirmed" => "The :attribute confirmation does not match.", - "email" => "The :attribute format is invalid.", - "image" => "The :attribute must be an image.", - "in" => "The selected :attribute is invalid.", - "integer" => "The :attribute must be an integer.", - "max" => "The :attribute must be less than :max.", - "mimes" => "The :attribute must be a file of type: :values.", - "min" => "The :attribute must be at least :min.", - "not_in" => "The selected :attribute is invalid.", - "numeric" => "The :attribute must be a number.", - "required" => "The :attribute field is required.", - "size" => "The :attribute must be :size.", - "unique" => "The :attribute has already been taken.", - "url" => "The :attribute format is invalid.", - - "characters" => "characters", - "kilobytes" => "kilobytes", + "accepted" => "The :attribute must be accepted.", + "active_url" => "The :attribute is not a valid URL.", + "alpha" => "The :attribute may only contain letters.", + "alpha_dash" => "The :attribute may only contain letters, numbers, and dashes.", + "alpha_num" => "The :attribute may only contain letters and numbers.", + "between" => "The :attribute must be between :min - :max.", + "between.file" => "The :attribute must be between :min - :max kilobytes.", + "between.string" => "The :attribute must be between :min - :max characters.", + "confirmed" => "The :attribute confirmation does not match.", + "email" => "The :attribute format is invalid.", + "image" => "The :attribute must be an image.", + "in" => "The selected :attribute is invalid.", + "integer" => "The :attribute must be an integer.", + "max" => "The :attribute must be less than :max.", + "max.file" => "The :attribute must be less than :max kilobytes.", + "max.string" => "The :attribute must be less than :max characters.", + "mimes" => "The :attribute must be a file of type: :values.", + "min" => "The :attribute must be at least :min.", + "min.file" => "The :attribute must be at least :min kilobytes.", + "min.string" => "The :attribute must be at least :min characters.", + "not_in" => "The selected :attribute is invalid.", + "numeric" => "The :attribute must be a number.", + "required" => "The :attribute field is required.", + "size" => "The :attribute must be :size.", + "size.file" => "The :attribute must be :size kilobyte.", + "size.string" => "The :attribute must be :size characters.", + "unique" => "The :attribute has already been taken.", + "url" => "The :attribute format is invalid.", ); \ No newline at end of file diff --git a/laravel/validation/validator.php b/laravel/validation/validator.php index 8f5f353e..88550d5b 100644 --- a/laravel/validation/validator.php +++ b/laravel/validation/validator.php @@ -515,20 +515,15 @@ protected function message($attribute, $rule) { return $this->messages[$rule]; } + elseif (in_array($rule, $this->size_rules) and ! $this->has_rule($attribute, $this->numeric_rules)) + { + $line = (array_key_exists($attribute, Input::file())) ? "file" : "string"; + + return Lang::line("validation.{$rule}.{$line}")->get($this->language); + } else { - $message = Lang::line('validation.'.$rule)->get($this->language); - - // For "size" rules that are validating strings or files, we need to adjust - // the default error message for the appropriate units. - if (in_array($rule, $this->size_rules) and ! $this->has_rule($attribute, $this->numeric_rules)) - { - return (array_key_exists($attribute, Input::file())) - ? rtrim($message, '.').' '.Lang::line('validation.kilobytes')->get($this->language).'.' - : rtrim($message, '.').' '.Lang::line('validation.characters')->get($this->language).'.'; - } - - return $message; + return Lang::line("validation.{$rule}")->get($this->language); } }