diff --git a/app/main/views/templates.py b/app/main/views/templates.py index 70a854143..3dc26d475 100644 --- a/app/main/views/templates.py +++ b/app/main/views/templates.py @@ -406,7 +406,9 @@ def manage_template_folder(service_id, template_folder_id): def delete_template_folder(service_id, template_folder_id): if not current_service.has_permission('edit_folders'): abort(403) - form = TemplateFolderForm() + form = TemplateFolderForm( + name=current_service.get_template_folder(template_folder_id)['name'] + ) template_folder_path = current_service.get_template_folder_path(template_folder_id) template_folder_name = template_folder_path[-1]["name"] @@ -450,7 +452,6 @@ def delete_template_folder(service_id, template_folder_id): current_service_id=current_service.id, template_folder_id=template_folder_id, template_type="all", - delete_folder=True ) diff --git a/app/templates/views/templates/manage-template-folder.html b/app/templates/views/templates/manage-template-folder.html index b638e8479..2b14dee9f 100644 --- a/app/templates/views/templates/manage-template-folder.html +++ b/app/templates/views/templates/manage-template-folder.html @@ -21,20 +21,16 @@ - {% if not delete_folder %} - {% call form_wrapper() %} - {{ textbox(form.name) }} - {{ page_footer( - 'Save', - delete_link=url_for( - '.delete_template_folder', - service_id=current_service_id, - template_folder_id=template_folder_id - ), - delete_link_text="Delete this folder") }} - {% endcall %} - {% else %} - Back to manage folder page - {% endif %} + {% call form_wrapper(action=url_for('main.manage_template_folder', service_id=current_service.id, template_folder_id=template_folder_id)) %} + {{ textbox(form.name) }} + {{ page_footer( + 'Save', + delete_link=url_for( + '.delete_template_folder', + service_id=current_service_id, + template_folder_id=template_folder_id + ), + delete_link_text="Delete this folder") }} + {% endcall %} {% endblock %} diff --git a/tests/app/main/views/test_template_folders.py b/tests/app/main/views/test_template_folders.py index 506c80ef3..da3a97b60 100644 --- a/tests/app/main/views/test_template_folders.py +++ b/tests/app/main/views/test_template_folders.py @@ -367,7 +367,7 @@ def test_get_manage_folder_page( assert normalize_spaces(page.select_one('title').text) == ( 'folder_two – Templates – service one – GOV.UK Notify' ) - assert page.select_one('input[name=name]') is not None + assert page.select_one('input[name=name]')['value'] == 'folder_two' delete_link = page.find('a', string="Delete this folder") expected_delete_url = "/services/{}/templates/folders/{}/delete".format(service_one['id'], folder_id) @@ -443,9 +443,20 @@ def test_delete_template_folder_should_request_confirmation( 'Yes, delete' ) - assert len(page.select('label')) == 0 - assert len(page.select('button')) == 1 - assert "Back to manage folder page" in page.text + assert page.select_one('input[name=name]')['value'] == 'sacrifice' + + assert len(page.select('form')) == 2 + assert len(page.select('button')) == 2 + + assert 'action' not in page.select('form')[0] + assert page.select('form button')[0].text == 'Yes, delete' + + assert page.select('form')[1]['action'] == url_for( + 'main.manage_template_folder', + service_id=service_one['id'], + template_folder_id=folder_id, + ) + assert page.select('form button')[1].text == 'Save' def test_delete_template_folder_should_detect_non_empty_folder_on_get(