diff --git a/rowers/views/teamviews.py b/rowers/views/teamviews.py index 2c393f85..224a2ef7 100644 --- a/rowers/views/teamviews.py +++ b/rowers/views/teamviews.py @@ -16,10 +16,16 @@ def team_view(request,id=0,userid=0): except Team.DoesNotExist: raise Http404("Team doesn't exist") + q = User.objects.filter(rower__isnull=False,rower__team__in=myteams).distinct().exclude(rower__team__name=t.name) + mygroups = [request.user.rower.mycoachgroup] + q2 = User.objects.filter(rower__isnull=False,rower__coachinggroups__in=mygroups).distinct().exclude(rower__team__name=t.name) + + q = q | q2 if request.method == 'POST' and request.user == t.manager: inviteform = TeamInviteForm(request.POST) - inviteform.fields['user'].queryset = User.objects.filter(rower__isnull=False,rower__team__in=myteams).distinct().exclude(rower__team__name=t.name) + + inviteform.fields['user'].queryset = q if inviteform.is_valid(): cd = inviteform.cleaned_data newmember = cd['user'] @@ -37,7 +43,7 @@ def team_view(request,id=0,userid=0): elif request.user == t.manager: inviteform = TeamInviteForm() - inviteform.fields['user'].queryset = User.objects.filter(rower__isnull=False,rower__team__in=myteams).distinct().exclude(rower__team__name=t.name) + inviteform.fields['user'].queryset = q else: inviteform = '' @@ -186,9 +192,13 @@ def rower_teams_view(request,message='',successmessage=''): invitedcoaches = [rekwest.coach for rekwest in mycoachrequests] coaches = teams.rower_get_coaches(r) - print coaches,'aap' potentialcoaches = [t.manager for t in memberteams if t.manager not in coaches and t.manager.rower.rowerplan == 'coach'] + offercoaches = [ + r.user for r in Rower.objects.filter( + offercoaching=True,rowerplan='coach').exclude(user=request.user) + ] + potentialcoaches = list(set(potentialcoaches+offercoaches)) potentialcoaches = [c for c in potentialcoaches if c.rower not in invitedcoaches+coaches]