Exemplo n.º 1
0
 /**
  * Extend the Validator.
  *
  * @param Factory $factory
  */
 protected function extendValidator(Factory $factory)
 {
     $factory->replacer('required_if_has', function ($message, $attribute, $rule, $parameters) {
         return $this->setFieldsAndValues($message, $attribute, $rule, $parameters);
     });
     $factory->replacer('required_if_not', function ($message, $attribute, $rule, $parameters) {
         return $this->setFieldsAndValues($message, $attribute, $rule, $parameters);
     });
     /////////////////////
     // Required if NOT //
     /////////////////////
     $factory->extendImplicit('required_if_not', function ($attribute, $value, $parameters = []) {
         $input = $this->input();
         $field = $parameters[0];
         $fieldValue = $parameters[1];
         // If the field is not set, default to true
         if (!array_key_exists($field, $input)) {
             return true;
         }
         return $input[$field] !== $fieldValue ? array_key_exists($attribute, $input) : true;
     }, "La question ':attribute' est requise lorsque la question ':field' n'est pas ':value' !");
     //////////////////////////////////
     // If checkbox contains a value //
     //////////////////////////////////
     $factory->extendImplicit('required_if_has', function ($attribute, $value, $parameters = []) {
         $input = $this->input();
         $field = $parameters[0];
         $fieldValue = $parameters[1];
         // If the field is not set, default to true
         if (!array_key_exists($field, $input)) {
             return true;
         }
         return array_key_exists($fieldValue, $input[$field]) ? array_key_exists($attribute, $input) : true;
     }, "La question ':attribute' est requise lorsque la question ':field' contient ':value' !");
 }
Exemplo n.º 2
0
 /**
  * Register a custom implicit validator extension.
  *
  * @param string $rule
  * @param \Closure|string $extension
  * @param string $message
  * @return void 
  * @static 
  */
 public static function extendImplicit($rule, $extension, $message = null)
 {
     \Illuminate\Validation\Factory::extendImplicit($rule, $extension, $message);
 }
Exemplo n.º 3
0
 /**
  * Register a custom implicit validator extension.
  *
  * @param  string $rule
  * @param  \Closure|string $extension
  * @param  string $message
  * @return void
  */
 public function extendImplicit($rule, $extension, $message = null)
 {
     $this->factory->extendImplicit($rule, $extension, $message);
 }