diff --git a/rowers/teams.py b/rowers/teams.py
index e5fea1ec..6c3eef22 100644
--- a/rowers/teams.py
+++ b/rowers/teams.py
@@ -403,7 +403,7 @@ def process_invite_code(user,code):
t = invitation.team
result = add_member(t.id,r)
- send_invite_accept_email(invitation.id)
+ send_invite_accept_email(invitation)
invitation.delete()
return result
diff --git a/rowers/templates/teams.html b/rowers/templates/teams.html
index 839abbc0..59ef3dd9 100644
--- a/rowers/templates/teams.html
+++ b/rowers/templates/teams.html
@@ -38,7 +38,7 @@
- {% if invites or requests or myrequests %}
+ {% if invites or requests or myrequests or myinvites %}
Invitations and Requests
@@ -77,13 +77,28 @@
| {{ i.team.name }} |
{{ i.team.manager.first_name }} {{ i.team.manager.last_name }} |
- {{ user.first_name }} {{ user.last_name }} |
+ {{ i.user.first_name }} {{ i.user.last_name }} |
Accept
|
Reject
|
{% endfor %}
+ {% for i in myinvites %}
+
+ | {{ i.team.name }} |
+ {{ i.team.manager.first_name }} {{ i.team.manager.last_name }} |
+ {% if i.user %}
+ {{ i.user.first_name }} {{ i.user.last_name }} |
+ {% else %}
+ {{ i.email }} |
+ {% endif %}
+
+ |
+ Revoke
+ |
+
+ {% endfor %}
diff --git a/rowers/urls.py b/rowers/urls.py
index 4ef85712..91fa0155 100644
--- a/rowers/urls.py
+++ b/rowers/urls.py
@@ -215,7 +215,7 @@ urlpatterns = [
url(r'^team/create/$',views.team_create_view),
url(r'^me/team/(\d+)/drop/(\d+)$',views.manager_member_drop_view),
url(r'^me/invitation/(\d+)/reject$',views.invitation_reject_view),
- url(r'^me/invitation/c/(?P
\w+.*)/$',views.rower_invitations_view),
+ url(r'^me/invitation/(\d+)/revoke$',views.invitation_revoke_view),
url(r'^me/invitation/$',views.rower_invitations_view),
url(r'^me/invitation/(\w+.*)/$',views.rower_invitations_view),
url(r'^me/request/c/(?P\w+.*)/$',views.manager_requests_view),
diff --git a/rowers/views.py b/rowers/views.py
index 3cf0192f..aa6e50ad 100644
--- a/rowers/views.py
+++ b/rowers/views.py
@@ -5378,6 +5378,7 @@ def rower_teams_view(request,message='',successmessage=''):
invites = TeamInvite.objects.filter(user=request.user)
requests = TeamRequest.objects.filter(user=request.user)
myrequests = TeamRequest.objects.filter(team__in=myteams)
+ myinvites = TeamInvite.objects.filter(team__in=myteams)
return render(request, 'teams.html',
{
@@ -5389,7 +5390,23 @@ def rower_teams_view(request,message='',successmessage=''):
'myrequests':myrequests,
'message':message,
'successmessage':successmessage,
+ 'myinvites':myinvites,
})
+@user_passes_test(iscoachmember,login_url="/",redirect_field_name=None)
+def invitation_revoke_view(request,id):
+ res,text = teams.revoke_invite(request.user,id)
+ if res:
+ successmessage = text
+ url = reverse(rower_teams_view,kwargs={
+ 'successmessage':successmessage
+ })
+ else:
+ message = text
+ url = reverse(rower_teams_view,kwargs={
+ 'message':message
+ })
+
+ return HttpResponseRedirect(url)
@user_passes_test(iscoachmember,login_url="/",redirect_field_name=None)
def manager_member_drop_view(request,teamid,userid,