mirror of
https://gitlab2.federez.net/re2o/re2o
synced 2024-11-22 11:23:10 +00:00
Replace ConfirmMailForm with an html template
This commit is contained in:
parent
608f77b013
commit
c41c723b0c
3 changed files with 55 additions and 23 deletions
|
@ -117,20 +117,6 @@ class PassForm(FormRevMixin, FieldPermissionFormMixin, forms.ModelForm):
|
|||
user.save()
|
||||
|
||||
|
||||
class ConfirmMailForm(FormRevMixin, FieldPermissionFormMixin, forms.ModelForm):
|
||||
"""Formulaire de confirmation de l'email de l'utilisateur"""
|
||||
class Meta:
|
||||
model = User
|
||||
fields = []
|
||||
|
||||
def save(self, commit=True):
|
||||
"""Confirmation de l'email"""
|
||||
user = super(ConfirmMailForm, self).save(commit=False)
|
||||
user.confirm_mail()
|
||||
user.set_active()
|
||||
user.save()
|
||||
|
||||
|
||||
class UserCreationForm(FormRevMixin, forms.ModelForm):
|
||||
"""A form for creating new users. Includes all the required
|
||||
fields, plus a repeated password.
|
||||
|
|
44
users/templates/users/confirm_email.html
Normal file
44
users/templates/users/confirm_email.html
Normal file
|
@ -0,0 +1,44 @@
|
|||
{% extends 'users/sidebar.html' %}
|
||||
{% comment %}
|
||||
Re2o est un logiciel d'administration développé initiallement au rezometz. Il
|
||||
se veut agnostique au réseau considéré, de manière à être installable en
|
||||
quelques clics.
|
||||
|
||||
Copyright © 2017 Gabriel Détraz
|
||||
Copyright © 2017 Lara Kermarec
|
||||
Copyright © 2017 Augustin Lemesle
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
{% endcomment %}
|
||||
|
||||
{% load bootstrap3 %}
|
||||
{% load i18n %}
|
||||
|
||||
{% block title %}{% trans "Confirmation email" %}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<form class="form" method="post">
|
||||
{% csrf_token %}
|
||||
<h4>{% blocktrans %}Confirmation email{% endblocktrans %}</h4>
|
||||
<p>{% blocktrans %}Confirm the email{% endblocktrans %} <a href="mailto:{{ email }}">{{ email }}</a> {% blocktrans %}for user {{ firstname }} {{ lastname }}.{% endblocktrans %}.</p>
|
||||
{% trans "Confirm" as tr_confirm %}
|
||||
{% bootstrap_button tr_confirm button_type="submit" icon="ok" button_class="btn-success" %}
|
||||
</form>
|
||||
<br />
|
||||
<br />
|
||||
<br />
|
||||
{% endblock %}
|
||||
|
|
@ -105,7 +105,6 @@ from .forms import (
|
|||
ClubForm,
|
||||
MassArchiveForm,
|
||||
PassForm,
|
||||
ConfirmMailForm,
|
||||
ResetPasswordForm,
|
||||
ClubAdminandMembersForm,
|
||||
GroupForm,
|
||||
|
@ -1047,7 +1046,9 @@ def resend_confirmation_email(request, userid):
|
|||
return redirect(reverse("users:profil", kwargs={"userid": userid}))
|
||||
|
||||
return form(
|
||||
{"email": user.email}, "users/resend_confirmation_email.html", request
|
||||
{"email": user.email},
|
||||
"users/resend_confirmation_email.html",
|
||||
request
|
||||
)
|
||||
|
||||
|
||||
|
@ -1055,19 +1056,20 @@ def process_email(request, req):
|
|||
"""Process la confirmation de mail, renvoie le formulaire
|
||||
de validation"""
|
||||
user = req.user
|
||||
u_form = ConfirmMailForm(request.POST or None, instance=user, user=request.user)
|
||||
if u_form.is_valid():
|
||||
if request.method == "POST":
|
||||
with transaction.atomic(), reversion.create_revision():
|
||||
u_form.save()
|
||||
user.confirm_mail()
|
||||
user.save()
|
||||
reversion.set_comment("Email confirmation")
|
||||
|
||||
req.delete()
|
||||
messages.success(request, _("The email was confirmed."))
|
||||
messages.success(request, _("The %(email)s address was confirmed." % user.email))
|
||||
return redirect(reverse("index"))
|
||||
|
||||
return form(
|
||||
{"userform": u_form, "action_name": _("Confirm the email")},
|
||||
"users/user.html",
|
||||
request,
|
||||
{"email": user.email, "firstname": user.firstname, "lastname": user.surname},
|
||||
"users/confirm_email.html",
|
||||
request
|
||||
)
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue