mirror of
https://gitlab2.federez.net/re2o/re2o
synced 2025-02-16 20:47:56 +00:00
Mot de passe à l'inscription
This commit is contained in:
parent
01475bd786
commit
85d5c4f980
3 changed files with 31 additions and 9 deletions
|
@ -295,6 +295,14 @@ class AdherentForm(FormRevMixin, FieldPermissionFormMixin, ModelForm):
|
|||
"""Formulaire de base d'edition d'un user. Formulaire de base, utilisé
|
||||
pour l'edition de self par self ou un cableur. On formate les champs
|
||||
avec des label plus jolis"""
|
||||
|
||||
password1 = forms.CharField(widget=forms.PasswordInput, required=False)
|
||||
password2 = forms.CharField(widget=forms.PasswordInput, required=False)
|
||||
force = forms.BooleanField(
|
||||
label="Forcer le déménagement ?",
|
||||
initial=False,
|
||||
required=False
|
||||
)
|
||||
def __init__(self, *args, **kwargs):
|
||||
prefix = kwargs.pop('prefix', self.Meta.model.__name__)
|
||||
super(AdherentForm, self).__init__(*args, prefix=prefix, **kwargs)
|
||||
|
@ -305,6 +313,9 @@ class AdherentForm(FormRevMixin, FieldPermissionFormMixin, ModelForm):
|
|||
self.fields['room'].label = 'Chambre'
|
||||
self.fields['room'].empty_label = "Pas de chambre"
|
||||
self.fields['school'].empty_label = "Séléctionner un établissement"
|
||||
self.fields['password1'].label = 'Mot de passe'
|
||||
self.fields['password2'].label = 'Mot de passe (répétez)'
|
||||
self.fields['password2'].help_text = 'Laisser les champs mot de passe vide pour envoyer un mail d\'initialisation'
|
||||
|
||||
class Meta:
|
||||
model = Adherent
|
||||
|
@ -330,11 +341,16 @@ class AdherentForm(FormRevMixin, FieldPermissionFormMixin, ModelForm):
|
|||
)
|
||||
return telephone
|
||||
|
||||
force = forms.BooleanField(
|
||||
label="Forcer le déménagement ?",
|
||||
initial=False,
|
||||
required=False
|
||||
)
|
||||
def clean_password2(self):
|
||||
"""Vérifie si les mots de passe sont identiques"""
|
||||
password1 = self.cleaned_data['password1']
|
||||
password2 = self.cleaned_data['password2']
|
||||
if(password1 != password2):
|
||||
raise forms.ValidationError(
|
||||
"Les mots de passe sont différents"
|
||||
)
|
||||
return password2
|
||||
|
||||
|
||||
def clean_force(self):
|
||||
"""On supprime l'ancien user de la chambre si et seulement si la
|
||||
|
|
|
@ -414,7 +414,7 @@ class User(RevMixin, FieldPermissionModelMixin, AbstractBaseUser,
|
|||
|
||||
def has_access(self):
|
||||
""" Renvoie si un utilisateur a accès à internet """
|
||||
if(OptionalUser.get_cached_value('mail_verification') and not self.verified and self.verification_deadline is not None and datetime.now() > self.verification_deadline):
|
||||
if(OptionalUser.get_cached_value('mail_verification') and not self.verified and self.verification_deadline is not None and datetime.datetime.now() > self.verification_deadline):
|
||||
verified = False
|
||||
else:
|
||||
verified = True
|
||||
|
|
|
@ -111,11 +111,17 @@ def new_user(request):
|
|||
GTU_sum_up = GeneralOption.get_cached_value('GTU_sum_up')
|
||||
GTU = GeneralOption.get_cached_value('GTU')
|
||||
if user.is_valid():
|
||||
password = user.cleaned_data['password2']
|
||||
user = user.save(commit=False)
|
||||
user.save()
|
||||
user.reset_passwd_mail(request)
|
||||
messages.success(request, "L'utilisateur %s a été crée, un mail\
|
||||
pour l'initialisation du mot de passe a été envoyé" % user.pseudo)
|
||||
if(password != ""):
|
||||
user.set_password(password)
|
||||
user.save()
|
||||
messages.success(request, "L'utilisateur %s a été créé" % user.pseudo)
|
||||
else:
|
||||
user.reset_passwd_mail(request)
|
||||
messages.success(request, "L'utilisateur %s a été crée, un mail\
|
||||
pour l'initialisation du mot de passe a été envoyé" % user.pseudo)
|
||||
return redirect(reverse(
|
||||
'users:profil',
|
||||
kwargs={'userid': str(user.id)}
|
||||
|
|
Loading…
Add table
Reference in a new issue