Don't fallback to dvla_organisation if letter branding unset

The template preview app now accepts a null value for the `filename` 
parameter. If a service doesn't have a letter branding option set, 
previously we defaulted to their dvla_organisation (probably HM 
Government). Now, we pass through None, so that we generate letters 
without any logo or branding.
This commit is contained in:
Leo Hemsted
2019-02-12 15:47:50 +00:00
parent a8ee92cf03
commit afc5c96927
6 changed files with 10 additions and 16 deletions

View File

@@ -52,13 +52,10 @@ from app.models import (
def create_letters_pdf(self, notification_id):
try:
notification = get_notification_by_id(notification_id, _raise=True)
# We only need this while we are migrating to the new letter_branding model
letter_logo_file_name = notification.service.letter_branding.filename if notification.service.letter_branding\
else notification.service.dvla_organisation.filename
pdf_data, billable_units = get_letters_pdf(
notification.template,
contact_block=notification.reply_to_text,
filename=letter_logo_file_name,
filename=notification.service.letter_branding and notification.service.letter_branding.filename,
values=notification.personalisation
)

View File

@@ -205,7 +205,7 @@ class ServiceSchema(BaseSchema):
created_by = field_for(models.Service, 'created_by', required=True)
organisation_type = field_for(models.Service, 'organisation_type')
dvla_organisation = field_for(models.Service, 'dvla_organisation')
letter_logo_filename = fields.Method(serialize='get_letter_logo_filename')
letter_logo_filename = fields.Method(dump_only=True, serialize='get_letter_logo_filename')
permissions = fields.Method("service_permissions")
email_branding = field_for(models.Service, 'email_branding')
organisation = field_for(models.Service, 'organisation')
@@ -213,8 +213,7 @@ class ServiceSchema(BaseSchema):
letter_contact_block = fields.Method(serialize="get_letter_contact")
def get_letter_logo_filename(self, service):
return service.letter_branding.filename if service.letter_branding\
else service.dvla_organisation.filename
return service.letter_branding and service.letter_branding.filename
def service_permissions(self, service):
return [p.permission for p in service.permissions]

View File

@@ -265,9 +265,7 @@ def preview_letter_template_by_notification_id(service_id, notification_id, file
}
service = dao_fetch_service_by_id(service_id)
# We only need this while we are migrating to the new letter_branding model
letter_logo_filename = service.letter_branding.filename if service.letter_branding \
else service.dvla_organisation.filename
letter_logo_filename = service.letter_branding and service.letter_branding.filename
data = {
'letter_contact_block': notification.reply_to_text,
'template': template_for_letter_print,