validators.py 968 B

1234567891011121314151617181920212223242526272829303132333435
  1. from django import forms
  2. from django.core.exceptions import ValidationError
  3. from django.utils.translation import gettext as _
  4. from ..users.validators import (
  5. validate_username_content,
  6. validate_username_banned,
  7. validate_email_content,
  8. validate_email_banned,
  9. )
  10. class UserDataValidator(forms.Form):
  11. id = forms.IntegerField(min_value=1)
  12. username = forms.CharField()
  13. email = forms.CharField()
  14. is_active = forms.BooleanField(required=False)
  15. def clean_username(self):
  16. data = self.cleaned_data["username"]
  17. validate_username_content(data)
  18. if validate_username_banned(data):
  19. raise ValidationError(_("This username is not allowed."))
  20. return data
  21. def clean_email(self):
  22. data = self.cleaned_data["email"]
  23. validate_email_content(data)
  24. if validate_email_banned(data):
  25. raise ValidationError(_("This e-mail address is not allowed."))
  26. return data