From 26f5965a6a5e59293aaaeec0c7f79b3739740e9c Mon Sep 17 00:00:00 2001 From: chirac Date: Mon, 11 Jul 2016 23:49:08 +0200 Subject: [PATCH] Proprifie les tests de controle et les acl --- machines/views.py | 6 +++--- users/views.py | 20 ++++++++++---------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/machines/views.py b/machines/views.py index f20a6aa6..2050ec16 100644 --- a/machines/views.py +++ b/machines/views.py @@ -77,7 +77,7 @@ def new_machine(request, userid): except User.DoesNotExist: messages.error(request, u"Utilisateur inexistant" ) return redirect("/machines/") - if not request.user.has_perms(('cableur',)) and str(userid)!=str(request.user.id): + if not request.user.has_perms(('cableur',)) and user != request.user: messages.error(request, "Vous ne pouvez pas ajouter une machine à un autre user que vous sans droit") return redirect("/users/profil/" + str(request.user.id)) machine = NewMachineForm(request.POST or None) @@ -106,7 +106,7 @@ def edit_machine(request, interfaceid): messages.error(request, u"Interface inexistante" ) return redirect("/machines") if not request.user.has_perms(('cableur',)): - if str(interface.machine.user.id)!=str(request.user.id): + if interface.machine.user != request.user: messages.error(request, "Vous ne pouvez pas éditer une machine d'un autre user que vous sans droit") return redirect("/users/profil/" + str(request.user.id)) machine_form = BaseEditMachineForm(request.POST or None, instance=interface.machine) @@ -132,7 +132,7 @@ def new_interface(request, machineid): messages.error(request, u"Machine inexistante" ) return redirect("/machines") if not request.user.has_perms(('cableur',)): - if str(machine.user.id)!=str(request.user.id): + if machine.user != request.user: messages.error(request, "Vous ne pouvez pas ajouter une interface à une machine d'un autre user que vous sans droit") return redirect("/users/profil/" + str(request.user.id)) machine_form = BaseEditMachineForm(request.POST or None, instance=machine) diff --git a/users/views.py b/users/views.py index d1515ed4..8d0bfac5 100644 --- a/users/views.py +++ b/users/views.py @@ -53,14 +53,14 @@ def new_user(request): @login_required def edit_info(request, userid): - if not request.user.has_perms(('cableur',)) and str(userid)!=str(request.user.id): - messages.error(request, "Vous ne pouvez pas modifier un autre user que vous sans droit cableur") - return redirect("/users/profil/" + str(request.user.id)) try: user = User.objects.get(pk=userid) except User.DoesNotExist: messages.error(request, "Utilisateur inexistant") return redirect("/users/") + if not request.user.has_perms(('cableur',)) and user != request.user: + messages.error(request, "Vous ne pouvez pas modifier un autre user que vous sans droit cableur") + return redirect("/users/profil/" + str(request.user.id)) if not request.user.has_perms(('cableur',)): user = BaseInfoForm(request.POST or None, instance=user) else: @@ -93,15 +93,15 @@ def state(request, userid): @login_required def password(request, userid): - if not request.user.has_perms(('cableur',)) and str(userid)!=str(request.user.id): - messages.error(request, "Vous ne pouvez pas modifier un autre user que vous sans droit cableur") - return redirect("/users/profil/" + str(request.user.id)) try: user = User.objects.get(pk=userid) except User.DoesNotExist: messages.error(request, "Utilisateur inexistant") return redirect("/users/") - if not request.user.has_perms(('bureau',)) and str(userid)!=str(request.user.id) and Right.objects.filter(user=user): + if not request.user.has_perms(('cableur',)) and user != request.user: + messages.error(request, "Vous ne pouvez pas modifier un autre user que vous sans droit cableur") + return redirect("/users/profil/" + str(request.user.id)) + if not request.user.has_perms(('bureau',)) and user != request.user and Right.objects.filter(user=user): messages.error(request, "Il faut les droits bureau pour modifier le mot de passe d'un membre actif") return redirect("/users/profil/" + str(request.user.id)) u_form = PassForm(request.POST or None) @@ -296,14 +296,14 @@ def mon_profil(request): @login_required def profil(request, userid): - if not request.user.has_perms(('cableur',)) and str(userid)!=str(request.user.id): - messages.error(request, "Vous ne pouvez pas afficher un autre user que vous sans droit cableur") - return redirect("/users/profil/" + str(request.user.id)) try: users = User.objects.get(pk=userid) except User.DoesNotExist: messages.error(request, "Utilisateur inexistant") return redirect("/users/") + if not request.user.has_perms(('cableur',)) and users != request.user: + messages.error(request, "Vous ne pouvez pas afficher un autre user que vous sans droit cableur") + return redirect("/users/profil/" + str(request.user.id)) machines = Interface.objects.filter( machine=Machine.objects.filter(user__pseudo=users) )