CommerceGuys\Addressing\Validator\Constraints\AddressFormatConstraintValidator::validateFields PHP Method

validateFields() protected method

Validates the provided field values.
protected validateFields ( array $values, AddressFormat $addressFormat, Constraint $constraint )
$values array The field values, keyed by field constants.
$addressFormat CommerceGuys\Addressing\AddressFormat\AddressFormat The address format.
$constraint Symfony\Component\Validator\Constraint The constraint.
    protected function validateFields($values, AddressFormat $addressFormat, $constraint)
    {
        // Validate the presence of required fields.
        $requiredFields = $addressFormat->getRequiredFields();
        foreach ($requiredFields as $field) {
            if (empty($values[$field]) && in_array($field, $constraint->fields)) {
                $this->addViolation($field, $constraint->notBlankMessage, $values[$field], $addressFormat);
            }
        }
        // Validate the absence of unused fields.
        $unusedFields = array_diff(AddressField::getAll(), $addressFormat->getUsedFields());
        foreach ($unusedFields as $field) {
            if (!empty($values[$field]) && in_array($field, $constraint->fields)) {
                $this->addViolation($field, $constraint->blankMessage, $values[$field], $addressFormat);
            }
        }
    }