From affab72cd2c079fb1a733f30dbe0b657b01ad417 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Wed, 17 Mar 2021 08:57:24 +0100 Subject: [PATCH] changing can_coahc --- rowers/models.py | 11 +++++++++++ rowers/views/teamviews.py | 4 +--- rowers/views/userviews.py | 1 - 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/rowers/models.py b/rowers/models.py index 283cdcaf..362fc604 100644 --- a/rowers/models.py +++ b/rowers/models.py @@ -1117,6 +1117,17 @@ class Rower(models.Model): return coaches + def can_coach(self): + if self.rowerplan not in ['coach','freecoach']: + return False + + rs = Rower.objects.filter(coachinggroups__in=[self.mycoachgroup]) + rekwests = CoachOffer.objects.filter(coach=self) + if len(rs)+len(rekwests) < self.clubsize and self.offercoaching: + return True + + return False + @property def ispaid(self): return self.rowerplan in ['pro','plan','coach'] diff --git a/rowers/views/teamviews.py b/rowers/views/teamviews.py index f0850a33..b826d7c7 100644 --- a/rowers/views/teamviews.py +++ b/rowers/views/teamviews.py @@ -225,12 +225,10 @@ def rower_teams_view(request): potentialcoaches = [t.manager for t in memberteams if t.manager not in coaches and 'coach' in t.manager.rower.rowerplan] offercoaches = [ - r.user for r in Rower.objects.filter( - offercoaching=True,rowerplan__in='coach').exclude(user=request.user) + r.user for r in Rower.objects.all().exclude(user=request.user) if r.can_coach() ] potentialcoaches = list(set(potentialcoaches+offercoaches)) potentialcoaches = [c for c in potentialcoaches if c.rower not in invitedcoaches+coaches] - potentialcoaches = [c for c in potentialcoaches if teams.get_coach_club_size(c.rower)