1
0
mirror of https://gitlab.com/animath/si/plateforme.git synced 2025-04-27 22:12:38 +00:00

Prevent some errors

This commit is contained in:
Emmy D'Anello 2025-04-23 21:02:49 +02:00
parent 032b67ac51
commit 25e281ce32
Signed by: ynerant
GPG Key ID: 3A75C55819C8CF85
2 changed files with 6 additions and 5 deletions

View File

@ -557,8 +557,8 @@ class ParticipationDetailView(LoginRequiredMixin, DetailView):
if not self.get_object().valid:
raise PermissionDenied(_("The team is not validated yet."))
if user.registration.is_admin or user.registration.participates \
and user.registration.team.participation \
and user.registration.team.participation.pk == kwargs["pk"] \
and user.registration.team \
and user.registration.team.participation_id == kwargs["pk"] \
or user.registration.is_volunteer \
and (self.get_object().tournament in user.registration.interesting_tournaments
or self.get_object().final

View File

@ -726,10 +726,11 @@ class PhotoAuthorizationView(LoginRequiredMixin, View):
def get(self, request, *args, **kwargs):
filename = kwargs["filename"]
path = f"media/authorization/photo/{filename}"
if not os.path.exists(path):
student_qs = ParticipantRegistration.objects.first(Q(photo_authorization__endswith=filename)
| Q(photo_authorization_final__endswith=filename))
if not os.path.exists(path) or not student_qs.exists():
raise Http404
student = ParticipantRegistration.objects.get(Q(photo_authorization__endswith=filename)
| Q(photo_authorization_final__endswith=filename))
student = student_qs.get()
user = request.user
if not (student.user == user or user.registration.is_admin or user.registration.is_volunteer and student.team
and student.team.participation.tournament in user.registration.organized_tournaments.all()):