1
0
mirror of https://gitlab.com/animath/si/plateforme.git synced 2025-02-23 13:01:18 +00:00

Compare commits

...

2 Commits

2 changed files with 7 additions and 2 deletions

View File

@ -5,7 +5,7 @@
"fields": { "fields": {
"pos": 100, "pos": 100,
"name": "Plateforme du TFJM²", "name": "Plateforme du TFJM²",
"pattern": "^https://tfjm.org:8448/.*$", "pattern": "^https://tfjm.org(:8448)?/.*$",
"user_field": "matrix_username", "user_field": "matrix_username",
"restrict_users": false, "restrict_users": false,
"proxy": true, "proxy": true,

View File

@ -2,6 +2,7 @@
# SPDX-License-Identifier: GPL-3.0-or-later # SPDX-License-Identifier: GPL-3.0-or-later
from django.contrib.auth.mixins import LoginRequiredMixin from django.contrib.auth.mixins import LoginRequiredMixin
from django.contrib.auth.models import User
from haystack.generic_views import SearchView from haystack.generic_views import SearchView
@ -30,7 +31,11 @@ class UserMixin(LoginRequiredMixin):
class UserRegistrationMixin(LoginRequiredMixin): class UserRegistrationMixin(LoginRequiredMixin):
def dispatch(self, request, *args, **kwargs): def dispatch(self, request, *args, **kwargs):
user = request.user user = request.user
if user.is_authenticated and not user.registration.is_admin and user.registration.pk != kwargs["pk"]: user_object = User.objects.get(registration__pk=kwargs["pk"])
if user.is_authenticated and not user.registration.is_admin and user.registration.pk != kwargs["pk"] and \
not (user.registration.is_volunteer and user_object.registration.team is not None
and user_object.registration.team.participation.tournament
in user.registration.organized_tournaments.all()):
self.handle_no_permission() self.handle_no_permission()
return super().dispatch(request, *args, **kwargs) return super().dispatch(request, *args, **kwargs)