mirror of
https://gitlab2.federez.net/re2o/re2o
synced 2024-11-23 11:53:12 +00:00
Require login on confirmation email resend
This commit is contained in:
parent
32c1f8d50a
commit
e574284936
2 changed files with 8 additions and 3 deletions
|
@ -330,7 +330,11 @@ class AdherentForm(FormRevMixin, FieldPermissionFormMixin, ModelForm):
|
|||
self.fields["room"].label = _("Room")
|
||||
self.fields["room"].empty_label = _("No room")
|
||||
self.fields["school"].empty_label = _("Select a school")
|
||||
self.initial["email"] = kwargs["instance"].email
|
||||
|
||||
if not kwargs["user"].is_anonymous():
|
||||
self.initial["email"] = kwargs["user"].email
|
||||
else:
|
||||
self.initial["email"] = None
|
||||
|
||||
class Meta:
|
||||
model = Adherent
|
||||
|
@ -383,7 +387,7 @@ class AdherentForm(FormRevMixin, FieldPermissionFormMixin, ModelForm):
|
|||
"""On met à jour l'état de l'utilisateur en fonction de son mail"""
|
||||
user = super(AdherentForm, self).save(commit=commit)
|
||||
|
||||
if user.email != self.initial["email"]:
|
||||
if self.initial["email"] is not None and user.email != self.initial["email"]:
|
||||
# Send a confirmation email
|
||||
if user.state in [User.STATE_ACTIVE, User.STATE_DISABLED, User.STATE_NOT_YET_ACTIVE, User.STATE_EMAIL_NOT_YET_CONFIRMED]:
|
||||
user.state = User.STATE_EMAIL_NOT_YET_CONFIRMED
|
||||
|
|
|
@ -1051,8 +1051,9 @@ def process_email(request, req):
|
|||
)
|
||||
|
||||
|
||||
@login_required
|
||||
@can_edit(User)
|
||||
def resend_confirmation_email(request, userid):
|
||||
def resend_confirmation_email(request, logged_user, userid):
|
||||
""" Renvoi du mail de confirmation """
|
||||
try:
|
||||
user = User.objects.get(
|
||||
|
|
Loading…
Reference in a new issue