Commit d0ac2fc7 authored by Antoine Bernard's avatar Antoine Bernard

[compte] Ajout confirmation impression ticket.

* On demande la confirmation avant d'imprimer un ticket à la Kfet
* Ajout TODO
parent d92f6045
{% extends "template.html" %}
{% load i18n %}
{% block title %} {% trans "Mot de passe" %} {% endblock %}
{% block h1 %} {% trans "Réinitialisation du mot de passe Cr@ns" %} {% endblock %}
{% block content %}
<p>
{% blocktrans %}
Le mot de passe de l'adhérent va être réinitialisé et un ticket va être
imprimé à la Kfet contenant le mot de passe Crans ainsi que les mots de
passes des machines.
{% endblocktrans %}
</p>
<p>{% trans "Assurez vous d'y être." %}</p>
<p>
{% blocktrans with name=user.nom.0 surname=user.prenom.0 %}
Êtes-vous sur de vouloir réinitialiser le mot de passe de {{name}} {{surname}} ?
{% endblocktrans %}
</p>
<form class="form-full-width" method="post">{% csrf_token %}
<footer>
<input type="submit" value="{% trans "Non" %}" name="n">
<input type="submit" value="{% trans "Oui" %}" name="y">
</footer>
</form>
{% endblock %}
......@@ -733,13 +733,42 @@ class CreateCompteView(CableurMixin, View):
create = CreateCompteView.as_view()
#TODO:
# * proposer d'envoyer un email de réinitialisation à l'adhérent
# * rattraper OSError sur l'intranet de test à la tentative d'impression
# de ticket
class ResetPassView(CableurMixin, RedirectHomeMixin, View):
"""
Classe pour la réinitialisation du mot de passe et l'impression d'un ticket
Classe pour la réinitialisation du mot de passe et
l'impression d'un ticket
"""
def get(self, request, uid, next='/compte/', *args, **kwargs):
subprocess.call(['/usr/scripts/cransticket/dump_creds.py','--pass','--forced','aid=%s' % uid])
messages.success(request, _(u"""Mot de passe réinitialisé, ticket en cours d'impression."""))
template_name = "compte/resetpass.html"
def get(self, request, uid, ptype, *args, **kwargs):
user = get_luser(request, uid, ptype)
return render(
request,
self.template_name,
{ 'user' : user },
)
def post(self, request, uid, next='/compte/', *args, **kwargs):
# Si la réponse reçu n'est pas 'y' aka 'Yes' ou 'Oui'
if not 'y' in request.POST:
return redirect(next)
#Sinon on continue
#et on imprime un ticket
subprocess.call([
'/usr/scripts/cransticket/dump_creds.py',
'--pass',
'--forced',
'aid=%s' % uid,
])
messages.success(
request,
_(u"""Mot de passe réinitialisé, ticket en cours d'impression.""")
)
return redirect(next)
resetpass = ResetPassView.as_view()
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment