Add button to cancel invitation of invited user.

This commit is contained in:
Rebecca Law
2016-03-01 16:12:26 +00:00
parent e3740f314f
commit 219c740071
4 changed files with 33 additions and 9 deletions

View File

@@ -4,8 +4,7 @@ from flask import (
redirect,
abort,
url_for,
flash
)
flash)
from flask_login import (
login_required,
@@ -79,7 +78,7 @@ def invite_user(service_id):
@main.route("/services/<service_id>/users/<user_id>", methods=['GET', 'POST'])
@login_required
def edit_user(service_id, user_id):
def edit_user_permissions(service_id, user_id):
if request.method == 'POST':
return redirect(url_for('.manage_users', service_id=service_id))
@@ -116,6 +115,13 @@ def delete_user(service_id, user_id):
)
@main.route("/services/<service_id>/cancel-invited-user/<invited_user_id>", methods=['POST'])
def cancel_invited_user(service_id, invited_user_id):
invite_api_client.cancel_invited_user(service_id=service_id, invited_user_id=invited_user_id)
return redirect(url_for('main.manage_users', service_id=service_id))
def _get_permissions(form):
permissions = []
if form.get('send_messages') and form['send_messages'] == 'yes':

View File

@@ -28,3 +28,9 @@ class InviteApiClient(BaseAPIClient):
endpoint = '/service/{}/invite'.format(service_id)
resp = self.get(endpoint)
return [User(data) for data in resp['data']]
def cancel_invited_user(self, service_id, invited_user_id):
data = {'status': 'cancelled'}
resp = self.post(url='/service/{0}/invite/{0}'.format(service_id, invited_user_id),
data = data)
return resp['data']

View File

@@ -31,9 +31,6 @@ Manage users GOV.UK Notify
{{ boolean_field(item.has_permissions(service_id, 'send_messages')) }}
{{ boolean_field(item.has_permissions(service_id, 'manage_service')) }}
{{ boolean_field(item.has_permissions(service_id, 'manage_api_keys')) }}
{% call field(align='right') %}
<a href="{{ url_for('.edit_user', service_id=service_id, user_id=item.id)}}">Change</a>
{% endcall %}
{% endcall %}
{% if invited_users %}
@@ -47,7 +44,7 @@ Manage users GOV.UK Notify
{{ boolean_field(item.has_permissions(service_id, 'manage_service')) }}
{{ boolean_field(item.has_permissions(service_id, 'api_keys')) }}
{% call field(align='right') %}
<a href="{{ url_for('.edit_user', service_id=service_id, user_id=item.id)}}">Change</a>
<a href="{{ url_for('.cancel_invited_user', service_id=service_id, invited_user_id=item.id)}}">Cancel invitation</a>
{% endcall %}
{% endcall %}
{% endif %}