for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
declare(strict_types = 1);
/**
* /src/Validator/Constraints/LocaleValidator.php
*
* @author TLe, Tarmo Leppänen <[email protected]>
*/
namespace App\Validator\Constraints;
use App\Service\Localization;
use Symfony\Component\Validator\Constraint;
use Symfony\Component\Validator\ConstraintValidator;
use function in_array;
* Class LocaleValidator
* @package App\Validator\Constraints
class LocaleValidator extends ConstraintValidator
{
public function __construct(
private Localization $localization,
) {
}
* {@inheritdoc}
public function validate(mixed $value, Constraint $constraint): void
if (in_array($value, $this->localization->getLocales(), true) !== true) {
$this->context
->buildViolation(Locale::MESSAGE)
->setParameter('{{ locale }}', (string)$value)
->setCode(Locale::INVALID_LOCALE)
->addViolation();