8
0
Fork 0
mirror of https://gitlab2.federez.net/re2o/re2o synced 2024-11-23 20:03:11 +00:00

verification des extension mail externe et lower des adresses mail pour mieux verifier les doublons

This commit is contained in:
grisel-davy 2018-08-09 23:43:35 +02:00 committed by Hugo LEVY-FALK
parent 740843975a
commit 84764ce51b

View file

@ -138,6 +138,12 @@ class UserCreationForm(FormRevMixin, forms.ModelForm):
prefix = kwargs.pop('prefix', self.Meta.model.__name__)
super(UserCreationForm, self).__init__(*args, prefix=prefix, **kwargs)
def clean_email(self):
if not OptionalUser.objects.first().local_email_domain in self.cleaned_data.get('email'):
return self.cleaned_data.get('email').lower()
else:
raise forms.ValidationError("You can't use an internal address as your external address.")
class Meta:
model = Adherent
fields = ('pseudo', 'surname', 'email')
@ -308,6 +314,12 @@ class AdherentForm(FormRevMixin, FieldPermissionFormMixin, ModelForm):
self.fields['room'].empty_label = "Pas de chambre"
self.fields['school'].empty_label = "Séléctionner un établissement"
def clean_email(self):
if not OptionalUser.objects.first().local_email_domain in self.cleaned_data.get('email'):
return self.cleaned_data.get('email').lower()
else:
raise forms.ValidationError("Vous ne pouvez pas utiliser une addresse {}".format(OptionalUser.objects.first().local_email_domain))
class Meta:
model = Adherent
fields = [
@ -323,6 +335,7 @@ class AdherentForm(FormRevMixin, FieldPermissionFormMixin, ModelForm):
'gpg_fingerprint'
]
def clean_telephone(self):
"""Verifie que le tel est présent si 'option est validée
dans preferences"""
@ -608,6 +621,9 @@ class EMailAddressForm(FormRevMixin, ModelForm):
self.fields['local_part'].label = "Local part of the email"
self.fields['local_part'].help_text = "Can't contain @"
def clean_local_part(self):
return self.cleaned_data.get('local_part').lower()
class Meta:
model = EMailAddress
exclude = ['user']
@ -631,6 +647,12 @@ class EmailSettingsForm(FormRevMixin, FieldPermissionFormMixin, ModelForm):
"Enable the use of the local email account"
)
def clean_email(self):
if not OptionalUser.objects.first().local_email_domain in self.cleaned_data.get('email'):
return self.cleaned_data.get('email').lower()
else:
raise forms.ValidationError("Vous ne pouvez pas utiliser une addresse {}".format(OptionalUser.objects.first().local_email_domain))
class Meta:
model = User
fields = ['email', 'local_email_redirect', 'local_email_enabled']