From 51e6b81ac702fc06fb43d15336bcf1e86e407fe0 Mon Sep 17 00:00:00 2001 From: cedrick2711 Date: Thu, 30 Jul 2026 13:24:43 -0400 Subject: [PATCH] =?UTF-8?q?r=C3=A9gler=20probl=C3=A8me=20ou=20les=20coachs?= =?UTF-8?q?=20ne=20voyait=20pas=20leur=20tryouts?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/user_model/coach.py | 11 ++++++----- app/routes/tryouts.py | 4 +--- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/app/models/user_model/coach.py b/app/models/user_model/coach.py index ccd9aa0..e836e0f 100644 --- a/app/models/user_model/coach.py +++ b/app/models/user_model/coach.py @@ -1,5 +1,6 @@ """Coach — evaluates, schedules matches, manages their own org team.""" from app.models.user_model.user import User +from app.extensions import db class Coach(User): @@ -38,8 +39,8 @@ class Coach(User): def get_visible_tryouts(self): from app.models.tryout.tryout import Tryout team_ids = [t.id for t in self.coached_org_teams.all()] - if not team_ids: - return Tryout.query.filter(Tryout.id == -1).all() # empty - return Tryout.query.filter( - Tryout.target_org_team_id.in_(team_ids) - ).order_by(Tryout.date).all() + conditions = [] + if team_ids: + conditions.append(Tryout.target_org_team_id.in_(team_ids)) + conditions.append(Tryout.coach_id == self.id) + return Tryout.query.filter(db.or_(*conditions)).order_by(Tryout.date).all() diff --git a/app/routes/tryouts.py b/app/routes/tryouts.py index f313104..c5f4a3a 100644 --- a/app/routes/tryouts.py +++ b/app/routes/tryouts.py @@ -143,9 +143,7 @@ def view_tryout(tryout_id): elif isinstance(current_user, Manager) and tryout.created_by == current_user.id: can_view = True elif isinstance(current_user, Coach): - org_team = OrgTeam.query.filter_by(coach_id=current_user.id).first() - if org_team and tryout.target_org_team_id == org_team.id: - can_view = True + can_view = current_user.can_manage_this_tryout(tryout) elif isinstance(current_user, Player): is_registered = TryoutRegistration.query.filter_by( tryout_id=tryout_id, player_id=current_user.id).first() is not None