mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-08-16 20:49:00 -04:00
Let users delete letter contact blocks
Because they can delete email reply to addresses and text message senders.
This commit is contained in:
@@ -736,7 +736,16 @@ def service_add_letter_contact(service_id):
|
||||
)
|
||||
|
||||
|
||||
@main.route("/services/<service_id>/service-settings/letter-contact/<letter_contact_id>/edit", methods=['GET', 'POST'])
|
||||
@main.route(
|
||||
"/services/<service_id>/service-settings/letter-contact/<letter_contact_id>/edit",
|
||||
methods=['GET', 'POST'],
|
||||
endpoint="service_edit_letter_contact",
|
||||
)
|
||||
@main.route(
|
||||
"/services/<service_id>/service-settings/letter-contact/<letter_contact_id>/delete",
|
||||
methods=['GET'],
|
||||
endpoint="service_confirm_delete_letter_contact",
|
||||
)
|
||||
@user_has_permissions('manage_service')
|
||||
def service_edit_letter_contact(service_id, letter_contact_id):
|
||||
letter_contact_block = current_service.get_letter_contact_block(letter_contact_id)
|
||||
@@ -753,12 +762,28 @@ def service_edit_letter_contact(service_id, letter_contact_id):
|
||||
is_default=True if letter_contact_block['is_default'] else form.is_default.data
|
||||
)
|
||||
return redirect(url_for('.service_letter_contact_details', service_id=service_id))
|
||||
|
||||
if (request.endpoint == "main.service_confirm_delete_letter_contact"):
|
||||
flash("Are you sure you want to delete this contact block?", 'delete')
|
||||
return render_template(
|
||||
'views/service-settings/letter-contact/edit.html',
|
||||
form=form,
|
||||
letter_contact_id=letter_contact_block['id'])
|
||||
|
||||
|
||||
@main.route(
|
||||
"/services/<service_id>/service-settings/letter-contact/<letter_contact_id>/delete",
|
||||
methods=['POST'],
|
||||
)
|
||||
@user_has_permissions('manage_service')
|
||||
def service_delete_letter_contact(service_id, letter_contact_id):
|
||||
service_api_client.delete_letter_contact(
|
||||
service_id=current_service.id,
|
||||
letter_contact_id=letter_contact_id,
|
||||
)
|
||||
return redirect(url_for('.service_letter_contact_details', service_id=current_service.id))
|
||||
|
||||
|
||||
@main.route("/services/<service_id>/service-settings/sms-sender", methods=['GET'])
|
||||
@user_has_permissions('manage_service', 'manage_api_keys')
|
||||
def service_sms_senders(service_id):
|
||||
|
||||
@@ -246,10 +246,12 @@ class HeaderNavigation(Navigation):
|
||||
'service_accept_agreement',
|
||||
'service_confirm_agreement',
|
||||
'service_confirm_delete_email_reply_to',
|
||||
'service_confirm_delete_letter_contact',
|
||||
'service_confirm_delete_sms_sender',
|
||||
'service_dashboard',
|
||||
'service_dashboard_updates',
|
||||
'service_delete_email_reply_to',
|
||||
'service_delete_letter_contact',
|
||||
'service_delete_sms_sender',
|
||||
'service_download_agreement',
|
||||
'service_edit_email_reply_to',
|
||||
@@ -381,6 +383,7 @@ class MainNavigation(Navigation):
|
||||
'service_accept_agreement',
|
||||
'service_confirm_agreement',
|
||||
'service_confirm_delete_email_reply_to',
|
||||
'service_confirm_delete_letter_contact',
|
||||
'service_confirm_delete_sms_sender',
|
||||
'service_edit_email_reply_to',
|
||||
'service_edit_letter_contact',
|
||||
@@ -535,6 +538,7 @@ class MainNavigation(Navigation):
|
||||
'send_notification',
|
||||
'service_dashboard_updates',
|
||||
'service_delete_email_reply_to',
|
||||
'service_delete_letter_contact',
|
||||
'service_delete_sms_sender',
|
||||
'service_download_agreement',
|
||||
'service_letter_validation_preview',
|
||||
@@ -769,10 +773,12 @@ class CaseworkNavigation(Navigation):
|
||||
'service_accept_agreement',
|
||||
'service_confirm_agreement',
|
||||
'service_confirm_delete_email_reply_to',
|
||||
'service_confirm_delete_letter_contact',
|
||||
'service_confirm_delete_sms_sender',
|
||||
'service_dashboard',
|
||||
'service_dashboard_updates',
|
||||
'service_delete_email_reply_to',
|
||||
'service_delete_letter_contact',
|
||||
'service_delete_sms_sender',
|
||||
'service_download_agreement',
|
||||
'service_edit_email_reply_to',
|
||||
@@ -1039,10 +1045,12 @@ class OrgNavigation(Navigation):
|
||||
'service_accept_agreement',
|
||||
'service_confirm_agreement',
|
||||
'service_confirm_delete_email_reply_to',
|
||||
'service_confirm_delete_letter_contact',
|
||||
'service_confirm_delete_sms_sender',
|
||||
'service_dashboard',
|
||||
'service_dashboard_updates',
|
||||
'service_delete_email_reply_to',
|
||||
'service_delete_letter_contact',
|
||||
'service_delete_sms_sender',
|
||||
'service_download_agreement',
|
||||
'service_edit_email_reply_to',
|
||||
|
||||
@@ -458,6 +458,13 @@ class ServiceAPIClient(NotifyAdminAPIClient):
|
||||
}
|
||||
)
|
||||
|
||||
@cache.delete('service-{service_id}')
|
||||
def delete_letter_contact(self, service_id, letter_contact_id):
|
||||
return self.post(
|
||||
"/service/{}/letter-contact/{}/archive".format(service_id, letter_contact_id),
|
||||
data=None
|
||||
)
|
||||
|
||||
def get_sms_senders(self, service_id):
|
||||
return self.get(
|
||||
"/service/{}/sms-sender".format(service_id)
|
||||
|
||||
@@ -33,7 +33,11 @@
|
||||
{{ checkbox(form.is_default) }}
|
||||
</div>
|
||||
{% endif %}
|
||||
{{ page_footer('Save') }}
|
||||
{{ page_footer(
|
||||
'Save',
|
||||
delete_link=url_for('.service_confirm_delete_letter_contact', service_id=current_service.id, letter_contact_id=letter_contact_id),
|
||||
delete_link_text='Delete'
|
||||
) }}
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
||||
|
||||
Reference in New Issue
Block a user