Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 'FelixkissUniqueWithValidatorUniqueWithValidatorServiceProvider',
- 'ProvidersTextareaNameValidatorServiceProvider',
- $data = Input::except('submit');
- $data['parent'] = Input::get('parent') ?: null;
- $names = explode(PHP_EOL, trim($data['name']));
- if (count($names) == 1) {
- $rules['name']
- = '
- required |
- unique_with:categories, parent = par_cat';
- }
- else {
- $rules['name'] = 'textareaname'; // my custom validator
- }
- $validator = Validator::make($data, $rules,
- Lang::get('forms.validation'));
- if ($validator->passes()) {
- // ...
- <?php
- namespace Providers;
- use IlluminateSupportServiceProvider;
- class TextareaNameValidatorServiceProvider extends ServiceProvider {
- public function register(){}
- public function boot()
- {
- $this->app->validator->resolver(function($translator, $data, $rules, $messages)
- {
- return new UtilsTextareaNameValidator($translator, $data, $rules, $messages);
- });
- }
- }
- <?php
- namespace Utils;
- use Validator;
- class TextareaNameValidator extends IlluminateValidationValidator
- {
- public function validateTextareaName($attribute, $value, $parameters)
- {
- $array = explode(PHP_EOL, trim($value));
- if (count($array) !== count(array_unique($array))) {
- return false;
- }
- foreach ($array as $item) {
- $data['name'] = $item;
- $rules['name']
- = '
- required |
- unique_with:categories, parent = par_cat ';
- $validator = Validator::make($data, $rules);
- if (!$validator->passes()) {
- return false;
- }
- }
- return true;
- }
- }
- 'FelixkissUniqueWithValidatorUniqueWithValidatorServiceProvider',
- 'ProvidersTextareaNameValidatorServiceProvider',
- 'ProvidersTextareaNameValidatorServiceProvider',
- 'FelixkissUniqueWithValidatorUniqueWithValidatorServiceProvider',
- // 'ProvidersTextareaNameValidatorServiceProvider',
- Validator::extend('TextareaName', function($attribute, $value, $parameters)
- {
- $array = explode(PHP_EOL, trim($value));
- if (count($array) !== count(array_unique($array))) {
- return false;
- }
- foreach ($array as $item) {
- $data['name'] = $item;
- $rules['name']
- = '
- required |
- unique_with:categories, parent = par_cat ';
- $validator = Validator::make($data, $rules);
- if (!$validator->passes()) {
- return false;
- }
- }
- return true;
- });
- // 'ProvidersTextareaNameValidatorServiceProvider',
- Validator::extend('textarea_name', 'UtilsTextAreaNameValidator@validateTextareaName');
- <?php
- namespace Utils;
- use Validator;
- class TextareaNameValidator
- {
- public function validateTextareaName($attribute, $value, $parameters)
- {
- $array = explode(PHP_EOL, trim($value));
- if (count($array) !== count(array_unique($array))) {
- return false;
- }
- foreach ($array as $item) {
- $data['name'] = $item;
- $rules['name']
- = '
- required
- |
- unique_with:categories, parent = par_cat
- ';
- $validator = Validator::make($data, $rules);
- if (!$validator->passes()) {
- return false;
- }
- }
- return true;
- }
- }
- validateTextareaname
- validateTextareaName
- $rules['name'] = 'textareaname'; // my custom validator
- $rules['name'] = 'textarea_name'; // my custom validator
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement