mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-08-23 07:46:23 -04:00
Merge pull request #2518 from alphagov/delete-folder-refinements
Make some refinements to the delete folder journey
This commit is contained in:
@@ -419,16 +419,18 @@ def manage_template_folder(service_id, template_folder_id):
|
||||
@login_required
|
||||
@user_has_permissions('manage_templates')
|
||||
def delete_template_folder(service_id, template_folder_id):
|
||||
|
||||
if not current_service.has_permission('edit_folders'):
|
||||
abort(403)
|
||||
form = TemplateFolderForm()
|
||||
template_folder_path = current_service.get_template_folder_path(template_folder_id)
|
||||
template_folder_name = template_folder_path[-1]["name"]
|
||||
|
||||
template_folder = current_service.get_template_folder(template_folder_id)
|
||||
|
||||
form = TemplateFolderForm(name=template_folder['name'])
|
||||
|
||||
if len(current_service.get_template_folders_and_templates(
|
||||
template_type="all", template_folder_id=template_folder_id
|
||||
)) > 0:
|
||||
flash("You must empty this folder before you can delete it".format(template_folder_name), 'info')
|
||||
flash("You must empty this folder before you can delete it".format(template_folder['name']), 'info')
|
||||
return redirect(
|
||||
url_for(
|
||||
'.choose_template', service_id=service_id, template_type="all", template_folder_id=template_folder_id
|
||||
@@ -440,12 +442,12 @@ def delete_template_folder(service_id, template_folder_id):
|
||||
template_folder_api_client.delete_template_folder(current_service.id, template_folder_id)
|
||||
|
||||
return redirect(
|
||||
url_for('.choose_template', service_id=service_id)
|
||||
url_for('.choose_template', service_id=service_id, template_folder_id=template_folder['parent_id'])
|
||||
)
|
||||
except HTTPError as e:
|
||||
msg = "Folder is not empty"
|
||||
if e.status_code == 400 and msg in e.message:
|
||||
flash("You must empty this folder before you can delete it".format(template_folder_name), 'info')
|
||||
flash("You must empty this folder before you can delete it", 'info')
|
||||
return redirect(
|
||||
url_for(
|
||||
'.choose_template',
|
||||
@@ -457,15 +459,14 @@ def delete_template_folder(service_id, template_folder_id):
|
||||
else:
|
||||
abort(500, e)
|
||||
|
||||
flash("Are you sure you want to delete the ‘{}’ folder?".format(template_folder_name), 'delete')
|
||||
flash("Are you sure you want to delete the ‘{}’ folder?".format(template_folder['name']), 'delete')
|
||||
return render_template(
|
||||
'views/templates/manage-template-folder.html',
|
||||
form=form,
|
||||
template_folder_path=template_folder_path,
|
||||
template_folder_path=current_service.get_template_folder_path(template_folder_id),
|
||||
current_service_id=current_service.id,
|
||||
template_folder_id=template_folder_id,
|
||||
template_type="all",
|
||||
delete_folder=True
|
||||
)
|
||||
|
||||
|
||||
|
||||
@@ -21,20 +21,16 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% 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 %}
|
||||
<a href="{{url_for('.manage_template_folder', service_id=current_service.id, template_folder_id=template_folder_id)}}">Back to manage folder page</a>
|
||||
{% 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 %}
|
||||
|
||||
Reference in New Issue
Block a user