diff --git a/app/main/views/service_settings.py b/app/main/views/service_settings.py
index 5c8f83ae3..abc6dd620 100644
--- a/app/main/views/service_settings.py
+++ b/app/main/views/service_settings.py
@@ -275,6 +275,10 @@ def service_set_letter_contact_block(service_id):
current_service['id'],
letter_contact_block=form.letter_contact_block.data.replace('\r', '') or None
)
+ if request.args.get('from_template'):
+ return redirect(
+ url_for('.view_template', service_id=service_id, template_id=request.args.get('from_template'))
+ )
return redirect(url_for('.service_settings', service_id=service_id))
return render_template(
'views/service-settings/set-letter-contact-block.html',
diff --git a/app/templates/views/templates/_template.html b/app/templates/views/templates/_template.html
index f7c05eac9..76e533474 100644
--- a/app/templates/views/templates/_template.html
+++ b/app/templates/views/templates/_template.html
@@ -35,7 +35,7 @@
{% if current_user.has_permissions(permissions=['manage_templates'], admin_override=True) and template.template_type == 'letter' %}
Edit
-
Edit
+
Edit
Edit
{% endif %}
{{ template|string }}
diff --git a/tests/app/main/views/test_service_settings.py b/tests/app/main/views/test_service_settings.py
index 9fd2b4252..dfcbac884 100644
--- a/tests/app/main/views/test_service_settings.py
+++ b/tests/app/main/views/test_service_settings.py
@@ -1,6 +1,7 @@
from unittest.mock import call, ANY, Mock
import pytest
+import uuid
from flask import url_for
from bs4 import BeautifulSoup
from werkzeug.exceptions import InternalServerError
@@ -619,6 +620,30 @@ def test_set_letter_contact_block_saves(
mock_update_service.assert_called_once_with(service_one['id'], letter_contact_block='foo bar baz waz')
+def test_set_letter_contact_block_redirects_to_template(
+ logged_in_client,
+ service_one,
+ mock_update_service,
+):
+ service_one['can_send_letters'] = True
+ fake_template_id = uuid.uuid4()
+ response = logged_in_client.post(
+ url_for(
+ 'main.service_set_letter_contact_block',
+ service_id=service_one['id'],
+ from_template=fake_template_id,
+ ),
+ data={'letter_contact_block': ''},
+ )
+ assert response.status_code == 302
+ assert response.location == url_for(
+ 'main.view_template',
+ service_id=service_one['id'],
+ template_id=fake_template_id,
+ _external=True,
+ )
+
+
def test_set_letter_contact_block_has_max_10_lines(
logged_in_client,
service_one,