function ForumLeafConstraintValidator::validate

Same name in other branches
  1. 9 core/modules/forum/src/Plugin/Validation/Constraint/ForumLeafConstraintValidator.php \Drupal\forum\Plugin\Validation\Constraint\ForumLeafConstraintValidator::validate()
  2. 8.9.x core/modules/forum/src/Plugin/Validation/Constraint/ForumLeafConstraintValidator.php \Drupal\forum\Plugin\Validation\Constraint\ForumLeafConstraintValidator::validate()
  3. 10 core/modules/forum/src/Plugin/Validation/Constraint/ForumLeafConstraintValidator.php \Drupal\forum\Plugin\Validation\Constraint\ForumLeafConstraintValidator::validate()

File

core/modules/forum/src/Plugin/Validation/Constraint/ForumLeafConstraintValidator.php, line 16

Class

ForumLeafConstraintValidator
Validates the ForumLeaf constraint.

Namespace

Drupal\forum\Plugin\Validation\Constraint

Code

public function validate($items, Constraint $constraint) {
    $item = $items->first();
    if (!isset($item)) {
        return NULL;
    }
    // Verify that a term has been selected.
    if (!$item->entity) {
        $this->context
            ->addViolation($constraint->selectForum);
    }
    // The forum_container flag must not be set.
    if (!empty($item->entity->forum_container->value)) {
        $this->context
            ->addViolation($constraint->noLeafMessage, [
            '%forum' => $item->entity
                ->getName(),
        ]);
    }
}

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