From 70d4050bc958590a3fbec15298052c2a7b38270d Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Fri, 10 Feb 2017 16:16:50 +0100 Subject: [PATCH 1/2] updated selector & warning on invitations --- rowers/views.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/rowers/views.py b/rowers/views.py index aa6e50ad..5f838028 100644 --- a/rowers/views.py +++ b/rowers/views.py @@ -5305,7 +5305,7 @@ def team_view(request,id=0,message='',successmessage=''): 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).exclude(rower__team__name=t.name) + inviteform.fields['user'].queryset = User.objects.filter(rower__isnull=False,rower__team__in=myteams).distinct().exclude(rower__team__name=t.name) if inviteform.is_valid(): cd = inviteform.cleaned_data newmember = cd['user'] @@ -5321,7 +5321,7 @@ def team_view(request,id=0,message='',successmessage=''): elif request.user == t.manager: inviteform = TeamInviteForm() - inviteform.fields['user'].queryset = User.objects.filter(rower__isnull=False,rower__team__in=myteams).exclude(rower__team__name=t.name) + inviteform.fields['user'].queryset = User.objects.filter(rower__isnull=False,rower__team__in=myteams).distinct().exclude(rower__team__name=t.name) else: inviteform = '' @@ -5529,7 +5529,7 @@ def rower_invitations_view(request,code=None,message='',successmessage=''): }) else: message = text - url = reverse(rower_invitations_view,kwargs={ + url = reverse(rower_teams_view,kwargs={ 'message':message, }) From 288bac995b30fac9005b0734ebb7c00788aeb02b Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Fri, 10 Feb 2017 16:27:19 +0100 Subject: [PATCH 2/2] Checks for users with that email address --- rowers/tasks.py | 2 +- rowers/teams.py | 12 +++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/rowers/tasks.py b/rowers/tasks.py index eb68297f..b69a44c7 100644 --- a/rowers/tasks.py +++ b/rowers/tasks.py @@ -254,7 +254,7 @@ def handle_sendemail_invite(email,name,code,teamname,manager): message += 'https://rowsandall.com/rowers/me/invitation/'+code+' \n\n' message += 'You can also manually accept your team membership with the code.\n' - message += 'You will need to do this if you registered under a differnt email address than this one.\n' + message += 'You will need to do this if you registered under a different email address than this one.\n' message += 'Code: '+code+'\n' message += 'Link to manually accept your team membership: ' message += 'https://rowsandall.com/rowers/me/invitation\n\n' diff --git a/rowers/teams.py b/rowers/teams.py index 6c3eef22..8531e037 100644 --- a/rowers/teams.py +++ b/rowers/teams.py @@ -169,6 +169,12 @@ def create_invite(team,manager,user=None,email=''): return (0,'Already member of that team') elif email==None or email=='': return (0,'Invalid request - missing email or user') + else: + try: + r2 = Rower.objects.get(user__email=email) + user = User.objects.get(rower=r2) + except Rower.DoesNotExist: + user=None if count_club_members(team.manager)+count_invites(team.manager) < r.clubsize: codes = [i.code for i in TeamInvite.objects.all()] @@ -242,7 +248,11 @@ def reject_invitation(user,id): def send_invite_email(id): - invitation = TeamInvite.objects.get(id=id) + try: + invitation = TeamInvite.objects.get(id=id) + except TeamInvite.DoesNotExist: + return (0,'Invitation doesn not exist') + if invitation.user: email = invitation.user.email name = invitation.user.first_name + " " + invitation.user.last_name