From 855df28f2a5b8e6012e3a2005039f5fca87dbf17 Mon Sep 17 00:00:00 2001 From: Laura Barluzzi Date: Wed, 30 Aug 2017 16:20:11 -0700 Subject: [PATCH] address Oliver's feedback --- cadasta/organization/views/default.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/cadasta/organization/views/default.py b/cadasta/organization/views/default.py index eef1dd60f..f5bef8cd7 100644 --- a/cadasta/organization/views/default.py +++ b/cadasta/organization/views/default.py @@ -292,13 +292,14 @@ class OrganizationMembersRemove(mixins.OrganizationMixin, permission_denied_message = error_messages.ORG_USERS_REMOVE def admin_is_deleting_themselves(self): - organization = Organization.objects.get(slug=self.kwargs['slug']) member_to_remove = self.kwargs['username'] user = self.request.user.username + if user != member_to_remove: + return False user_is_admin = OrganizationRole.objects.get( - organization=organization, + organization__slug=self.kwargs['slug'], user=self.request.user).admin - return user_is_admin and user == member_to_remove + return user_is_admin def get_object(self): return OrganizationRole.objects.get( @@ -319,9 +320,7 @@ def delete(self, *args, **kwargs): if self.admin_is_deleting_themselves(): messages.add_message(self.request, messages.ERROR, _("Administrators cannot remove themselves.")) - return redirect('organization:members_edit', - slug=self.kwargs['slug'], - username=self.kwargs['username']) + return redirect('organization:members_edit', **self.kwargs) return super().delete(*args, **kwargs)