mirror of
https://gitlab.com/animath/si/plateforme-corres2math.git
synced 2024-12-05 02:06:52 +00:00
Prevent errors when a not authenticated user tries to see a user detail page
This commit is contained in:
parent
55a727612c
commit
833f9147ce
@ -31,6 +31,10 @@ class TestIndexPage(TestCase):
|
|||||||
response = self.client.get(reverse("registration:reset_admin"))
|
response = self.client.get(reverse("registration:reset_admin"))
|
||||||
self.assertRedirects(response, reverse("login") + "?next=" + reverse("registration:reset_admin"), 302, 200)
|
self.assertRedirects(response, reverse("login") + "?next=" + reverse("registration:reset_admin"), 302, 200)
|
||||||
|
|
||||||
|
User.objects.create()
|
||||||
|
response = self.client.get(reverse("registration:user_detail", args=(1,)))
|
||||||
|
self.assertRedirects(response, reverse("login") + "?next=" + reverse("registration:user_detail", args=(1,)))
|
||||||
|
|
||||||
|
|
||||||
class TestRegistration(TestCase):
|
class TestRegistration(TestCase):
|
||||||
def setUp(self) -> None:
|
def setUp(self) -> None:
|
||||||
|
@ -158,6 +158,8 @@ class UserDetailView(LoginRequiredMixin, DetailView):
|
|||||||
|
|
||||||
def dispatch(self, request, *args, **kwargs):
|
def dispatch(self, request, *args, **kwargs):
|
||||||
user = request.user
|
user = request.user
|
||||||
|
if not user.is_authenticated:
|
||||||
|
return self.handle_no_permission()
|
||||||
# Only an admin or the concerned user can see the information
|
# Only an admin or the concerned user can see the information
|
||||||
if not user.registration.is_admin and user.pk != kwargs["pk"]:
|
if not user.registration.is_admin and user.pk != kwargs["pk"]:
|
||||||
raise PermissionDenied
|
raise PermissionDenied
|
||||||
|
Loading…
Reference in New Issue
Block a user