Merge pull request #2448 from alphagov/alphabetical-sort-letter-brandings

Make letter brandings easier to find with sorting and filtering
This commit is contained in:
Chris Hill-Scott
2018-11-07 13:50:05 +00:00
committed by GitHub
5 changed files with 51 additions and 19 deletions

View File

@@ -785,7 +785,14 @@ class LetterBranding(StripWhitespaceForm):
def __init__(self, choices=[], *args, **kwargs):
super().__init__(*args, **kwargs)
self.dvla_org_id.choices = choices
self.dvla_org_id.choices = list(sorted(
choices,
key=lambda choice: (
choice[0] != kwargs.get('dvla_org_id'),
choice[0] != '001',
choice[1],
),
))
dvla_org_id = RadioField(
'Which logo should this services letter have?',

View File

@@ -832,7 +832,10 @@ def service_preview_email_branding(service_id):
@user_is_platform_admin
def set_letter_branding(service_id):
form = LetterBranding(choices=email_branding_client.get_letter_email_branding().items())
form = LetterBranding(
choices=email_branding_client.get_letter_email_branding().items(),
dvla_org_id=current_service.dvla_organisation,
)
if form.validate_on_submit():
current_service.update(
@@ -840,11 +843,10 @@ def set_letter_branding(service_id):
)
return redirect(url_for('.service_settings', service_id=service_id))
form.dvla_org_id.data = current_service.dvla_organisation
return render_template(
'views/service-settings/set-letter-branding.html',
form=form,
search_form=SearchTemplatesForm(),
)