1
0
mirror of https://gitlab.crans.org/mediatek/med.git synced 2025-07-06 03:23:55 +02:00

Buttons in user admin

This commit is contained in:
Alexandre Iooss
2019-08-08 21:51:37 +02:00
parent 0c504e85fc
commit c225f5045e
6 changed files with 113 additions and 32 deletions

View File

@ -11,14 +11,14 @@ from django.shortcuts import get_object_or_404, redirect, render
from django.template import loader
from django.template.context_processors import csrf
from django.utils import timezone
from django.utils.translation import ugettext_lazy as _
from reversion import revisions as reversion
from med.settings import ASSO_EMAIL, ASSO_NAME, EMAIL_FROM, \
REQ_EXPIRE_STR, SITE_NAME
from media.models import Emprunt
from users.forms import BaseInfoForm
from users.forms import PassForm
from users.models import Adhesion, Request, Right, User
from users.models import Adhesion, Request, User
def form(ctx, template, request):
@ -40,7 +40,7 @@ def password_change_action(u_form, user, request, req=False):
if req:
req.delete()
return redirect("/")
return redirect("/users/profil/" + str(user.id))
return redirect("/")
def reset_passwd_mail(req, request):
@ -83,8 +83,11 @@ def new_user(request):
"L'utilisateur %s a été crée, un mail pour "
"l'initialisation du mot de passe a été "
"envoyé" % user.username)
return redirect("/users/profil/" + str(user.id))
return form({'userform': user}, 'users/user.html', request)
return redirect("/")
return form({
'form': user,
'title': _('New user'),
}, 'users/user.html', request)
@login_required
@ -100,8 +103,12 @@ def edit_info(request):
reversion.set_comment("Champs modifié(s) : %s" % ', '.join(
field for field in user.changed_data))
messages.success(request, "L'user a bien été modifié")
return redirect("/users/profil/")
return form({'userform': user}, 'users/user.html', request)
return redirect("/")
return form({
'form': user,
'password_change': True,
'title': _('Edit user profile'),
}, 'users/user.html', request)
@login_required
@ -112,7 +119,10 @@ def password(request):
u_form = PassForm(request.POST or None)
if u_form.is_valid():
return password_change_action(u_form, request.user, request)
return form({'userform': u_form}, 'users/user.html', request)
return form({
'form': u_form,
'title': _('Change password'),
}, 'users/user.html', request)
@login_required
@ -122,7 +132,7 @@ def adherer(request, userid):
users = User.objects.get(pk=userid)
except User.DoesNotExist:
messages.error(request, "Utilisateur inexistant")
return redirect("/users/")
return redirect("/")
adh_year = Adhesion.objects.all().order_by('annee_debut').reverse().first()
with transaction.atomic(), reversion.create_revision():
reversion.set_user(request.user)
@ -130,7 +140,7 @@ def adherer(request, userid):
adh_year.save()
reversion.set_comment("Adhesion de %s" % users)
messages.success(request, "Adhesion effectuee")
return redirect("/users/profil/" + userid)
return redirect("/")
def process(request, token):