function LinkTitleRequiredConstraintValidator::validate
File
-
core/
modules/ link/ src/ Plugin/ Validation/ Constraint/ LinkTitleRequiredConstraintValidator.php, line 21
Class
- LinkTitleRequiredConstraintValidator
- Constraint validator for link title subfields if a URL was entered.
Namespace
Drupal\link\Plugin\Validation\ConstraintCode
public function validate($value, Constraint $constraint) : void {
if (!$value instanceof LinkItemInterface) {
throw new UnexpectedValueException($value, LinkItemInterface::class);
}
/** @var \Drupal\link\LinkItemInterface $link_item */
$link_item = $value;
$title_setting = $link_item->getFieldDefinition()
->getSetting('title');
$title_visibility = LinkTitleVisibility::tryFrom((int) $title_setting);
if ($title_visibility === LinkTitleVisibility::Required && $link_item->uri !== '' && $link_item->title === '') {
$this->context
->buildViolation($constraint->message)
->atPath('title')
->addViolation();
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.