mautic / app /bundles /FormBundle /Validator /Constraint /FileExtensionConstraintValidator.php
chrisbryan17's picture
Upload folder using huggingface_hub
d2897cd verified
raw
history blame contribute delete
1.26 kB
<?php
namespace Mautic\FormBundle\Validator\Constraint;
use Mautic\CoreBundle\Helper\CoreParametersHelper;
use Symfony\Component\Validator\Constraint;
use Symfony\Component\Validator\ConstraintValidator;
class FileExtensionConstraintValidator extends ConstraintValidator
{
public function __construct(
private CoreParametersHelper $coreParametersHelper
) {
}
/**
* Checks if the passed value is valid.
*
* @param mixed $value The value that should be validated
* @param Constraint $constraint The constraint for the validation
*/
public function validate($value, Constraint $constraint): void
{
if (!is_array($value)) {
$this->context->buildViolation($constraint->message)
->setParameter('{{ forbidden }}', '')
->addViolation();
}
$blacklistedExtensions = $this->coreParametersHelper->get('blacklisted_extensions');
$intersect = array_intersect($value, $blacklistedExtensions);
if ($intersect) {
$this->context->buildViolation($constraint->message)
->setParameter('{{ forbidden }}', implode(', ', $intersect))
->addViolation();
}
}
}