You are here

class MaxLength in Clientside Validation 2.0.x

Same name and namespace in other branches
  1. 8.2 src/Plugin/CvValidator/MaxLength.php \Drupal\clientside_validation\Plugin\CvValidator\MaxLength
  2. 8 src/Plugin/CvValidator/MaxLength.php \Drupal\clientside_validation\Plugin\CvValidator\MaxLength
  3. 3.0.x src/Plugin/CvValidator/MaxLength.php \Drupal\clientside_validation\Plugin\CvValidator\MaxLength

Provides a 'maxlength' validator.

Plugin annotation


@CvValidator(
  id = "maxlength",
  name = @Translation("Maximum length"),
  supports = {
    "attributes" = {"maxlength"}
  }
)

Hierarchy

Expanded class hierarchy of MaxLength

File

src/Plugin/CvValidator/MaxLength.php, line 19

Namespace

Drupal\clientside_validation\Plugin\CvValidator
View source
class MaxLength extends CvValidatorBase {

  /**
   * {@inheritdoc}
   */
  protected function getRules($element, FormStateInterface $form_state) {

    // Drupal already adds the maxlength attribute, so we don't need to set the
    // maxlength rule.
    if (isset($element['#maxlength_error'])) {
      $message = $element['#maxlength_error'];
    }
    elseif (isset($element['#type']) && $element['#type'] == 'select') {
      $message = $this
        ->t('@title field can only have a maximum of @max values.', [
        '@title' => $this
          ->getElementTitle($element),
        '@max' => $this
          ->getAttributeValue($element, 'maxlength'),
      ]);
    }
    else {
      $message = $this
        ->t('@title field has a maximum length of @max.', [
        '@title' => $this
          ->getElementTitle($element),
        '@max' => $this
          ->getAttributeValue($element, 'maxlength'),
      ]);
    }
    return [
      'messages' => [
        'maxlength' => $message,
      ],
    ];
  }

}

Members

Namesort descending Modifiers Type Description Overrides
CvValidatorBase::addValidation public function Makes the necessary changes to the form element so it can be validated. Overrides CvValidatorInterface::addValidation 1
CvValidatorBase::getAttributeValue protected function Get the value of an attribute of an element.
CvValidatorBase::getElementTitle protected function Get title for form element.
CvValidatorBase::getName public function Return the name of the validator flavor. Overrides CvValidatorInterface::getName
MaxLength::getRules protected function Get the validation rules for this form element. Overrides CvValidatorBase::getRules
PluginBase::$configuration protected property Configuration information passed into the plugin. 1
PluginBase::$pluginDefinition protected property The plugin implementation definition. 1
PluginBase::$pluginId protected property The plugin_id.
PluginBase::DERIVATIVE_SEPARATOR constant A string which is used to separate base plugin IDs from the derivative ID.
PluginBase::getBaseId public function Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface::getBaseId
PluginBase::getDerivativeId public function Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface::getDerivativeId
PluginBase::getPluginDefinition public function Gets the definition of the plugin implementation. Overrides PluginInspectionInterface::getPluginDefinition 2
PluginBase::getPluginId public function Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface::getPluginId
PluginBase::isConfigurable public function Determines if the plugin is configurable.
PluginBase::__construct public function Constructs a \Drupal\Component\Plugin\PluginBase object. 98
StringTranslationTrait::$stringTranslation protected property The string translation service. 4
StringTranslationTrait::formatPlural protected function Formats a string containing a count of items.
StringTranslationTrait::getNumberOfPlurals protected function Returns the number of plurals supported by a given language.
StringTranslationTrait::getStringTranslation protected function Gets the string translation service.
StringTranslationTrait::setStringTranslation public function Sets the string translation service to use. 2
StringTranslationTrait::t protected function Translates a string to the current language or to a given language.