You are here

class MyCustomValidator in Form API Validation 8.2

Provides a custom validation.

Field must have JonhDoe as value.

Plugin annotation


@FapiValidationValidator(
  id = "custom_validator",
  error_callback = "processError"
)

Hierarchy

Expanded class hierarchy of MyCustomValidator

File

fapiv_example/src/Plugin/FapiValidationValidator/MyCustomValidator.php, line 19

Namespace

Drupal\fapiv_example\Plugin\FapiValidationValidator
View source
class MyCustomValidator implements FapiValidationValidatorsInterface {

  /**
   * {@inheritdoc}
   */
  public function validate(Validator $validator, array $element, FormStateInterface $form_state) {
    return $validator
      ->getValue() == 'JonhDoe';
  }

  /**
   * Process custom error.
   *
   * @param Drupal\fapi_validation\Validator $validator
   *   Validator.
   * @param array $element
   *   Form element.
   *
   * @return string
   *   Error message.
   */
  public static function processError(Validator $validator, array $element) {
    $params = [
      '%value' => $validator
        ->getValue(),
      '%field' => $element['#title'],
    ];
    return \t("You must enter 'JonhDoe' as value and not '%value' at field %field", $params);
  }

}

Members

Namesort descending Modifiers Type Description Overrides
MyCustomValidator::processError public static function Process custom error.
MyCustomValidator::validate public function Execute validation. Overrides FapiValidationValidatorsInterface::validate