diff --git a/app/main/views/conversation.py b/app/main/views/conversation.py index 65016bca3..83a06cfb7 100644 --- a/app/main/views/conversation.py +++ b/app/main/views/conversation.py @@ -1,5 +1,5 @@ from flask import jsonify, redirect, render_template, session, url_for -from flask_login import login_required +from flask_login import current_user, login_required from notifications_python_client.errors import HTTPError from notifications_utils.recipients import format_phone_number_human_readable from notifications_utils.template import SMSPreviewTemplate @@ -7,6 +7,7 @@ from notifications_utils.template import SMSPreviewTemplate from app import current_service, notification_api_client, service_api_client from app.main import main from app.main.forms import SearchByNameForm +from app.models.template_list import TemplateList from app.utils import user_has_permissions @@ -38,20 +39,26 @@ def conversation_updates(service_id, notification_id): @main.route("/services//conversation//reply-with") +@main.route("/services//conversation//reply-with/from-folder/") @login_required @user_has_permissions('send_messages') def conversation_reply( service_id, notification_id, + from_folder=None, ): - templates = current_service.get_templates('sms') return render_template( 'views/templates/choose-reply.html', - templates=templates, - show_search_box=(len(templates) > 7), - template_type='sms', + templates_and_folders=TemplateList( + current_service, + template_folder_id=from_folder, + user_id=current_user.id, + template_type='sms' + ), + template_folder_path=current_service.get_template_folder_path(from_folder), search_form=SearchByNameForm(), notification_id=notification_id, + template_type='sms' ) diff --git a/app/templates/views/templates/choose-reply.html b/app/templates/views/templates/choose-reply.html index 05856fb89..23b5a68bf 100644 --- a/app/templates/views/templates/choose-reply.html +++ b/app/templates/views/templates/choose-reply.html @@ -2,6 +2,7 @@ {% from "components/message-count-label.html" import message_count_label %} {% from "components/textbox.html" import textbox %} {% from "components/live-search.html" import live_search %} +{% from "components/folder-path.html" import folder_path %} {% extends "withnav_template.html" %} @@ -11,9 +12,12 @@ {% block maincolumn_content %} +

Choose a template

+ {{ folder_path(template_folder_path, current_service.id, template_type) }} +
- {% if not templates %} + {% if not templates_and_folders.templates_to_show %} {% if current_user.has_permissions('manage_templates') %}

@@ -29,20 +33,35 @@ {% else %} - {{ live_search(target_selector='#template-list .column-whole', show=show_search_box, form=search_form) }} + {{ live_search(target_selector='#template-list .column-whole', show=True, form=search_form) }} -