|
1 |
| -from django.core.exceptions import ValidationError |
2 | 1 | from django.core.validators import EmailValidator
|
3 | 2 | from django.db import models
|
4 | 3 | from django.utils.translation import gettext_lazy as _
|
5 | 4 |
|
6 |
| -from rest_framework import exceptions, serializers |
| 5 | +from rest_framework import serializers |
7 | 6 | from rest_framework.validators import UniqueTogetherValidator, qs_filter
|
8 | 7 |
|
9 | 8 | from openklant.components.klantinteracties.constants import SoortDigitaalAdres
|
|
26 | 25 | PartijIdentificator,
|
27 | 26 | )
|
28 | 27 | from openklant.components.klantinteracties.models.rekeningnummers import Rekeningnummer
|
29 |
| -from openklant.utils.serializers import get_field_value |
30 | 28 |
|
31 | 29 |
|
32 | 30 | class FKUniqueTogetherValidator(UniqueTogetherValidator):
|
@@ -175,21 +173,9 @@ def Rekeningnummer_exists(value):
|
175 | 173 | class OptionalEmailValidator(EmailValidator):
|
176 | 174 | """
|
177 | 175 | EmailValidator for SoortDigitaalAdres that only attempts to validate if
|
178 |
| - `SoortDigitaalAdres` is `email |
| 176 | + `SoortDigitaalAdres` is `email` |
179 | 177 | """
|
180 | 178 |
|
181 |
| - requires_context = True |
182 |
| - |
183 |
| - def __call__(self, attrs: dict, serializer): |
184 |
| - if ( |
185 |
| - get_field_value(serializer, attrs, "soort_digitaal_adres") |
186 |
| - == SoortDigitaalAdres.email |
187 |
| - ): |
188 |
| - try: |
189 |
| - super().__call__(get_field_value(serializer, attrs, "adres")) |
190 |
| - except ValidationError as e: |
191 |
| - # re-raise as field error |
192 |
| - if serializer: |
193 |
| - raise exceptions.ValidationError({"adres": e.message}) |
194 |
| - else: |
195 |
| - raise ValidationError({"adres": e}) |
| 179 | + def __call__(self, value: str, soort_digitaal_adres: str): |
| 180 | + if soort_digitaal_adres == SoortDigitaalAdres.email: |
| 181 | + super().__call__(value) |
0 commit comments