Manager ne pouvait pas voir les tryouts.
probleme avec discord bot
This commit is contained in:
cedrick2711
2026-08-06 14:46:51 -04:00
parent 68e3da6601
commit fcf10bcdff
13 changed files with 279 additions and 117 deletions
+19 -6
View File
@@ -56,7 +56,7 @@ def create_tryout():
max_players = request.form.get('max_players')
target_org_team_id = request.form.get('target_org_team_id')
manager_id = request.form.get('manager_id')
coach_id = request.form.get('coach_id')
coach_ids = request.form.getlist('coach_ids')
try:
date_obj = datetime.strptime(date_str, '%Y-%m-%d').date()
@@ -86,9 +86,15 @@ def create_tryout():
created_by=current_user.id, status='upcoming',
target_org_team_id=int(target_org_team_id) if target_org_team_id else None,
manager_id=int(manager_id) if manager_id else None,
coach_id=int(coach_id) if coach_id else None,
)
db.session.add(tryout)
db.session.flush()
# Assign coaches via many-to-many
if coach_ids:
coach_users = User.query.filter(User.id.in_([int(c) for c in coach_ids])).all()
tryout.coaches = coach_users
db.session.commit()
flash('Tryout created successfully!', 'success')
return redirect(url_for('tryouts.view_tryout', tryout_id=tryout.id))
@@ -125,7 +131,7 @@ def edit_tryout(tryout_id):
max_players = request.form.get('max_players')
target_org_team_id = request.form.get('target_org_team_id')
manager_id = request.form.get('manager_id')
coach_id = request.form.get('coach_id')
coach_ids = request.form.getlist('coach_ids')
try:
date_obj = datetime.strptime(date_str, '%Y-%m-%d').date()
@@ -156,7 +162,14 @@ def edit_tryout(tryout_id):
tryout.max_players = int(max_players) if max_players else None
tryout.target_org_team_id = int(target_org_team_id) if target_org_team_id else None
tryout.manager_id = int(manager_id) if manager_id else None
tryout.coach_id = int(coach_id) if coach_id else None
# Update coaches via many-to-many
if coach_ids:
coach_users = User.query.filter(User.id.in_([int(c) for c in coach_ids])).all()
tryout.coaches = coach_users
else:
tryout.coaches = []
db.session.commit()
flash('Tryout updated successfully!', 'success')
return redirect(url_for('tryouts.view_tryout', tryout_id=tryout.id))
@@ -174,8 +187,8 @@ def view_tryout(tryout_id):
can_view = False
if isinstance(current_user, Admin):
can_view = True
elif isinstance(current_user, Manager) and tryout.created_by == current_user.id:
can_view = True
elif isinstance(current_user, Manager):
can_view = tryout.created_by == current_user.id or tryout.manager_id == current_user.id
elif isinstance(current_user, Coach):
can_view = current_user.can_manage_this_tryout(tryout)
elif isinstance(current_user, Player):