class IgnoreActiveTrailConstraintValidator

Validator for the IgnoreActiveTrail constraint.

Hierarchy

Expanded class hierarchy of IgnoreActiveTrailConstraintValidator

File

core/modules/system/src/Plugin/Validation/Constraint/IgnoreActiveTrailConstraintValidator.php, line 14

Namespace

Drupal\system\Plugin\Validation\Constraint
View source
class IgnoreActiveTrailConstraintValidator extends ConstraintValidator {
  
  /**
   * {@inheritdoc}
   */
  public function validate(mixed $value, Constraint $constraint) : void {
    assert($constraint instanceof IgnoreActiveTrailConstraint);
    if (!is_array($value)) {
      throw new UnexpectedTypeException($value, 'array');
    }
    if (!empty($value['ignore_active_trail']) && (isset($value['level']) && $value['level'] > 1 || empty($value['expand_all_items']) && $value['depth'] != 1)) {
      $this->context
        ->addViolation($constraint->message);
    }
  }

}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.