Skip to content

Commit

Permalink
Merge pull request #222 from misantron/validators-patch
Browse files Browse the repository at this point in the history
Array subset and uniqueElements validators
  • Loading branch information
willemwollebrants authored Sep 23, 2018
2 parents 14702f0 + ee2ed6c commit e3b3eb3
Show file tree
Hide file tree
Showing 13 changed files with 365 additions and 226 deletions.
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -149,6 +149,8 @@ V::lang('ar');
* `dateBefore` - Field is a valid date and is before the given date
* `dateAfter` - Field is a valid date and is after the given date
* `contains` - Field is a string and contains the given string
* `subset` - Field is an array or a scalar and all elements are contained in the given array
* `containsUnique` - Field is an array and contains unique values
* `creditCard` - Field is a valid credit card number
* `instanceOf` - Field contains an instance of the given class
* `optional` - Value does not need to be included in data array. If it is however, it must pass validation.
Expand Down
4 changes: 2 additions & 2 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
"description": "Simple, elegant, stand-alone validation library with NO dependencies",
"keywords": ["validation", "validator", "valid"],
"homepage": "http://github.com/vlucas/valitron",
"license" : "BSD-3-Clause",
"authors" : [
"license": "BSD-3-Clause",
"authors": [
{
"name": "Vance Lucas",
"email": "[email protected]",
Expand Down
64 changes: 34 additions & 30 deletions lang/en.php
Original file line number Diff line number Diff line change
@@ -1,34 +1,38 @@
<?php

return array(
'required' => "is required",
'equals' => "must be the same as '%s'",
'different' => "must be different than '%s'",
'accepted' => "must be accepted",
'numeric' => "must be numeric",
'integer' => "must be an integer",
'length' => "must be %d characters long",
'min' => "must be at least %s",
'max' => "must be no more than %s",
'in' => "contains invalid value",
'notIn' => "contains invalid value",
'ip' => "is not a valid IP address",
'email' => "is not a valid email address",
'url' => "is not a valid URL",
'urlActive' => "must be an active domain",
'alpha' => "must contain only letters a-z",
'alphaNum' => "must contain only letters a-z and/or numbers 0-9",
'slug' => "must contain only letters a-z, numbers 0-9, dashes and underscores",
'regex' => "contains invalid characters",
'date' => "is not a valid date",
'dateFormat' => "must be date with format '%s'",
'dateBefore' => "must be date before '%s'",
'dateAfter' => "must be date after '%s'",
'contains' => "must contain %s",
'boolean' => "must be a boolean",
'lengthBetween' => "must be between %d and %d characters",
'creditCard' => "must be a valid credit card number",
'lengthMin' => "must be at least %d characters long",
'lengthMax' => "must not exceed %d characters",
'instanceOf' => "must be an instance of '%s'"
'required' => "is required",
'equals' => "must be the same as '%s'",
'different' => "must be different than '%s'",
'accepted' => "must be accepted",
'numeric' => "must be numeric",
'integer' => "must be an integer",
'length' => "must be %d characters long",
'min' => "must be at least %s",
'max' => "must be no more than %s",
'in' => "contains invalid value",
'notIn' => "contains invalid value",
'ip' => "is not a valid IP address",
'ipv4' => "is not a valid IPv4 address",
'ipv6' => "is not a valid IPv6 address",
'email' => "is not a valid email address",
'url' => "is not a valid URL",
'urlActive' => "must be an active domain",
'alpha' => "must contain only letters a-z",
'alphaNum' => "must contain only letters a-z and/or numbers 0-9",
'slug' => "must contain only letters a-z, numbers 0-9, dashes and underscores",
'regex' => "contains invalid characters",
'date' => "is not a valid date",
'dateFormat' => "must be date with format '%s'",
'dateBefore' => "must be date before '%s'",
'dateAfter' => "must be date after '%s'",
'contains' => "must contain %s",
'boolean' => "must be a boolean",
'lengthBetween' => "must be between %d and %d characters",
'creditCard' => "must be a valid credit card number",
'lengthMin' => "must be at least %d characters long",
'lengthMax' => "must not exceed %d characters",
'instanceOf' => "must be an instance of '%s'",
'containsUnique' => "must contain unique elements only",
'subset' => "contains an item that is not in the list",
);
64 changes: 34 additions & 30 deletions lang/ru.php
Original file line number Diff line number Diff line change
@@ -1,34 +1,38 @@
<?php

return array(
'required' => "обязательно для заполнения",
'equals' => "должно содержать '%s'",
'different' => "должно отличаться от '%s'",
'accepted' => "должно быть указано",
'numeric' => "должно содержать числовое значение",
'integer' => "должно быть числом",
'length' => "должно быть длиннее, чем %d",
'min' => "должно быть больше, чем %s",
'max' => "должно быть меньше, чем %s",
'in' => "содержит неверное значение",
'notIn' => "содержит неверное значение",
'ip' => "не является валидным IP адресом",
'email' => "не является валидным email адресом",
'url' => "не является валидной ссылкой",
'urlActive' => "содержит не активную ссылку",
'alpha' => "должно содержать только латинские символы",
'alphaNum' => "должно содержать только латинские символы и/или цифры",
'slug' => "должно содержать только латинские символы, цифры, тире и подчёркивания",
'regex' => "содержит недопустимые символы",
'date' => "не является датой",
'dateFormat' => "должно содержать дату следующего формата: %s",
'dateBefore' => "должно содержать дату не позднее, чем %s",
'dateAfter' => "должно содержать дату не ранее, чем %s",
'contains' => "должно содержать %s",
'boolean' => "должно содержать логическое значение",
'lengthBetween' => "должно содержать от %d до %d символов",
'creditCard' => "должно быть номером кредитной карты",
'lengthMin' => "должно содержать более %d символов",
'lengthMax' => "должно содержать менее %d символов",
'instanceOf' => "должно быть объектом класса '%s'"
'required' => "обязательно для заполнения",
'equals' => "должно совпадать со значением '%s'",
'different' => "должно отличаться от '%s'",
'accepted' => "должно быть указано",
'numeric' => "должно содержать числовое значение",
'integer' => "должно быть числом",
'length' => "должно быть длиннее, чем %d",
'min' => "должно быть не менее, чем %s",
'max' => "должно быть не более, чем %s",
'in' => "содержит неверное значение",
'notIn' => "содержит неверное значение",
'ip' => "не является валидным IP адресом",
'ipv4' => "не является валидным IPv4 адресом",
'ipv6' => "не является валидным IPv6 адресом",
'email' => "не является валидным email адресом",
'url' => "не является валидной ссылкой",
'urlActive' => "содержит не активную ссылку",
'alpha' => "должно содержать только латинские символы",
'alphaNum' => "должно содержать только латинские символы и/или цифры",
'slug' => "должно содержать только латинские символы, цифры, тире и подчёркивания",
'regex' => "содержит недопустимые символы",
'date' => "не является датой",
'dateFormat' => "должно содержать дату следующего формата: %s",
'dateBefore' => "должно содержать дату не позднее, чем %s",
'dateAfter' => "должно содержать дату не ранее, чем %s",
'contains' => "должно содержать %s",
'boolean' => "должно содержать логическое значение",
'lengthBetween' => "должно содержать от %d до %d символов",
'creditCard' => "должно быть номером кредитной карты",
'lengthMin' => "должно содержать более %d символов",
'lengthMax' => "должно содержать менее %d символов",
'instanceOf' => "должно быть объектом класса '%s'",
'containsUnique' => "должно содержать только уникальные элементы",
'subset' => "содержит элемент, не указанный в списке",
);
Loading

0 comments on commit e3b3eb3

Please sign in to comment.