From b93a1e89c8ddbfe938db26cd29c1c86394e9f363 Mon Sep 17 00:00:00 2001 From: Chris Hill-Scott Date: Wed, 9 Mar 2016 12:18:11 +0000 Subject: [PATCH] Fix bug which prevented viewing an email job MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The template for viewing a job was not getting all the variables it needed in order to display an email template. Hadn’t noticed this before, because email templates require more variables than SMS templates. This commit fixes that bug. --- app/assets/stylesheets/components/email-message.scss | 1 + app/main/views/jobs.py | 7 ++++--- app/main/views/send.py | 12 +++++++----- app/templates/views/jobs/job.html | 4 ++-- 4 files changed, 14 insertions(+), 10 deletions(-) diff --git a/app/assets/stylesheets/components/email-message.scss b/app/assets/stylesheets/components/email-message.scss index 860b3d99e..c8b9bbee3 100644 --- a/app/assets/stylesheets/components/email-message.scss +++ b/app/assets/stylesheets/components/email-message.scss @@ -17,6 +17,7 @@ @include core-19; border-bottom: 0; border-top: 1px solid $border-colour; + vertical-align: top; } th { diff --git a/app/main/views/jobs.py b/app/main/views/jobs.py index 093c91163..24949756e 100644 --- a/app/main/views/jobs.py +++ b/app/main/views/jobs.py @@ -40,6 +40,7 @@ def view_job(service_id, job_id): service = services_dao.get_service_by_id_or_404(service_id) try: job = job_api_client.get_job(service_id, job_id)['data'] + template = templates_dao.get_service_template_or_404(service_id, job['template'])['data'] notifications = notification_api_client.get_notifications_for_service(service_id, job_id) finished = job['status'] == 'finished' return render_template( @@ -55,11 +56,11 @@ def view_job(service_id, job_id): finished_at=job['updated_at'] if finished else None, uploaded_file_name=job['original_file_name'], template=Template( - templates_dao.get_service_template_or_404(service_id, job['template'])['data'], - prefix=service['name'] + template, + prefix=service['name'] if template['template_type'] == 'sms' else '' ), service_id=service_id, - from_name=service['name'], + service=service, job_id=job_id ) except HTTPError as e: diff --git a/app/main/views/send.py b/app/main/views/send.py index 27d1ffe4d..f89e614ce 100644 --- a/app/main/views/send.py +++ b/app/main/views/send.py @@ -203,12 +203,14 @@ def check_messages(service_id, upload_id): if not contents: flash('There was a problem reading your upload file') + template = templates_dao.get_service_template_or_404( + service_id, + session['upload_data'].get('template_id') + )['data'] + template = Template( - templates_dao.get_service_template_or_404( - service_id, - session['upload_data'].get('template_id') - )['data'], - prefix=service['name'] + template, + prefix=service['name'] if template['template_type'] == 'sms' else '' ) recipients = RecipientCSV( diff --git a/app/templates/views/jobs/job.html b/app/templates/views/jobs/job.html index 3af945de8..ddec1812b 100644 --- a/app/templates/views/jobs/job.html +++ b/app/templates/views/jobs/job.html @@ -24,9 +24,9 @@ {% elif 'email' == template.template_type %} {{ email_message( template.subject, - template, + template.formatted_as_markup, from_address='{}@notifications.service.gov.uk'.format(service.email_from), - from_name=from_name + from_name=service.name )}} {% endif %}