Commit Graph

3995 Commits

Author SHA1 Message Date
Chris Hill-Scott
2ddf3d5cfe Link to notification from API integration
It’s useful to be able to see what the email or text message looks like,
especially if you’ve sent it with a test API key (so it isn’t in your
inbox or on your phone). We already have the page for this, so we just
need to link to it.
2018-09-06 10:50:18 +01:00
Chris Hill-Scott
01fdcb8998 Use NHS.UK branding is for all NHS services
Anyone choosing ‘NHS’ for their organisation type gets should get the
NHS branding. We don’t want to hard-code an ID for NHS branding anywhere
because it won’t be consistent between environments.

So instead we can say that anyone who chooses ‘NHS’ as their
organisation type should get whatever branding has `nhs.uk` as its
domain.

This allows us to easily manage the branding the same way we do other
brands, but gives us the efficiency of having it auto applied.
2018-09-05 10:32:44 +01:00
Chris Hill-Scott
46dcaf3e54 Mark which brands are used as default on list
So that:
- we can see when a brand should be getting used as a default but isn’t
- we’re careful updating brands which will get auto-applied to new
  services
2018-09-05 10:32:44 +01:00
Chris Hill-Scott
243fdb0260 Assign email branding based on user’s email domain
When a user creates a service we can take a pretty good guess at what
organisation they’re from.

For many organisations, especially local councils, GOV.UK branding is
not appropriate for their service. But right now every service:
- gets created with GOV.UK branding
- has to ask us to change it, even if they’ve already done so for other
  services they run

This commit starts using the `domain` field on the email branding table
to lookup what email branding to assign to a service automatically,
where we’re sure there’s a sensible default.
2018-09-05 10:32:44 +01:00
Chris Hill-Scott
2e7ae91029 Persist canonical domain in email branding
When saving an email branding it’s possible we might not enter the
canonical domain for an organisation into the domain field. Because
we’re going to use the canonical domain to look up the brandings this
will cause a mismatch.

Rather than validate this and show an error, let’s just save the correct
thing instead. From the user’s perspective this means everything will
just work (ie a user with a given email address will automatically get
the right branding for their organisation).
2018-09-05 10:32:44 +01:00
Chris Hill-Scott
80423dfb3f Don’t allow adding unknown domains to branding lookup
We should make sure we’re not putting typos in the branding list. We can
validate what gets entered here against our known list of public-sector
domains.
2018-09-05 10:32:43 +01:00
Chris Hill-Scott
47c9b71fa8 Add canonical domain info to agreement class
Because we alias domains (eg `foo.gsi.gov.uk` to `foo.gov.uk`, or where
a local council has multiple domains) it could be hard to look up a
brand (which has one domain field).

Therefore we need a way of getting the canonical domain from a user’s
email address, which we can later use to look up their branding.
2018-09-05 10:32:43 +01:00
Chris Hill-Scott
d80b735b2b Refactor some of the logic into form
It’s messy having a lot of logic in the view methods. Handling the form
stuff can be better encapsulated inside the `Form` subclass itself.
2018-09-05 10:25:39 +01:00
Chris Hill-Scott
80801d827a Put the currently selected branding top of list
There’s something that feels a bit off about not being able to see the
name of the currently-selected branding when you land on the page.

Putting it at the top also means that you can easily switch back to it
if you change your mind.
2018-09-05 10:07:36 +01:00
Chris Hill-Scott
f387f1e6ba Merge pull request #2268 from alphagov/request-to-go-live-better-data
Make the data we get from the go live requests more useful
2018-09-04 16:25:59 +01:00
Chris Hill-Scott
b8eb7c324c Merge pull request #2279 from alphagov/cache-email-branding
Cache email branding in Redis
2018-09-04 14:51:54 +01:00
Chris Hill-Scott
28b80856df Cache email branding in Redis
If we’re going to be referring to email branding as part of the service
creation journey then we should make sure it doesn’t slow things down
too much by adding an extra API call. Caching things in Redis is a way
of avoiding unneeded API calls.
2018-09-03 14:46:48 +01:00
Athanasios Voutsadakis
c64433b3e7 Disable paas-proxy header check on staging
See: alphagov/notifications-api#2052
2018-09-03 11:10:58 +01:00
Chris Hill-Scott
631c3478ae Remove branding attribute from service model
To correspond with us dropping this column from the database.

Remove the attribute from the model gives us more confidence that it’s
not being used (because it will raise exceptions in any tests that refer
to it).
2018-08-31 14:05:33 +01:00
Tom Byers
3655e63d34 Merge pull request #2262 from alphagov/remove_branding_type_from_set_email_branding_page
Remove branding type from set email branding page
2018-08-31 13:56:44 +01:00
Chris Hill-Scott
d2503e8a26 Merge pull request #2266 from alphagov/remove-reference-to-service-branding
Remove reference to service branding on the settings page
2018-08-31 13:48:29 +01:00
Chris Hill-Scott
7f458ad066 Explain text message sender
We sometimes have to do this over support tickets as part of the go-live
process; now we’re directing people to add a sender (as part of the task
list) we can explain what it is in context.
2018-08-31 10:50:59 +01:00
Chris Hill-Scott
3c563ddca6 Use commas not tabs to delimit service info
Zendesk strips out the tabs. Commas are the next best thing because
Excel will automatically use them if you select ‘Split text into
columns’.
2018-08-30 15:31:46 +01:00
Chris Hill-Scott
86ad77e545 Add question about research consent
Since GDPR came into effect it’s less clear about whether we can
contact teams for user research purposes.

If we make people opt-in (or not) we know we’re safe to contact them (or
not).

Since we mostly care about how services are using Notify for real (ie
live services) or services that are considering adopting it (ie those
who have contacted us with a question) it feels like the go-live process
is the most appropriate place to collect this consent.
2018-08-30 15:31:46 +01:00
Chris Hill-Scott
12e0e12ced Replace channels and volumes with volumes/channel
Now that we’re a more mature platform we don’t care so much about the
load that one service might put on our platform.

We do care about intended volumes for two reasons:
- modelling the benefits that services get from using Notify
- managing stocks of envelopes (while our letter volumes are small
  enough that they could be skewed by one new service)

Changing to the ‘how many per year’ question also has the benefit of
mapping directly to the data we store in the ‘beta partners’
spreadsheet.
2018-08-30 15:31:46 +01:00
Chris Hill-Scott
80339046df Remove question about which features people use
This is an optional question. We don’t really use the answer to it now
that we have some adoption of all these features.
2018-08-30 15:31:45 +01:00
Chris Hill-Scott
9d720fd4bd Add data to copy into beta partners spreadsheet
Currently we keep track of live services in the ‘beta partners’
spreadsheet:
https://docs.google.com/spreadsheets/d/1JYhE5sJaOJUVMPPDenO2eKqElC75Rygxb1_2mpRKy98/edit#gid=503930061

Every time a service goes live we need to enter some data into the
spreadsheet about that service. Most of that data is copied from the
request to go live ticket.

This commit adds a line to the ticket with all the data needed by the
spreadsheet. It’s in the same order as in the spreadsheet, and it’s
tab-delimted so it should paste right on in there.
2018-08-30 15:31:45 +01:00
Chris Hill-Scott
2ff81ea59d Reword templates line on go live task list
This version might read a little clearer and look a little neater.
2018-08-30 14:36:40 +01:00
Pete Herlihy
18985821a9 Advising about future letter pricing from 1 October
This is just the pricing page, we'll sort the pricing table etc separately...

W're removing non-crown pricing as we won't be charged differently any more.  But we will retain the concept of non-crown as we may change differently ourselves in the future.
2018-08-30 11:53:52 +01:00
Tom Byers
c2075b6d71 Make label for None branding_style read as 'GOV.UK' 2018-08-30 11:44:36 +01:00
Tom Byers
ad0ffcc3f3 Fix issue that happens with branding_style of None
Setting the branding_style to 'None' causes the
API to remove the email_branding field from a
service model. The branding request page
controller was depending on that value being
to present get the brand type.

The email preview page (used in an iframe on
various pages) wasn't able to recognise a
branding_style of 'None', causing a blank page to
render.
2018-08-30 11:38:47 +01:00
Chris Hill-Scott
896072f169 Remove reference to service branding on settings
This attribute is deprecated in favour of an attribute on the
`email_branding` itself.
2018-08-30 09:20:44 +01:00
Tom Byers
272049bb17 Update branding request page
It was getting the brand_type from the service
model. This changes the controller to get it from
the new email_branding model instead.
2018-08-29 16:16:21 +01:00
Tom Byers
151488fa78 Update email preview page
No longer requires the branding_type GET param.

Retains the 'govuk' default brand.
2018-08-29 16:16:15 +01:00
Chris Hill-Scott
5b5aada3b7 Merge pull request #2261 from alphagov/robots.txt
Serve robots.txt from the admin app
2018-08-29 16:04:26 +01:00
Chris Hill-Scott
09876532ae Serve robots.txt from the admin app
We’re getting rid of the PaaS proxy, which is where this file is
currently served from.

Values copied from 3632313fdf/ansible/roles/nginx/files/robots.txt
2018-08-29 15:54:17 +01:00
Chris Hill-Scott
fab754a535 Merge pull request #2260 from alphagov/remove-govuk-from-brand-type
Remove GOV.UK as option when creating a branding
2018-08-29 15:53:19 +01:00
Chris Hill-Scott
87040c153c Merge pull request #2250 from alphagov/task-list-go-live
Try to get more users to do the things we require before going live
2018-08-29 15:53:10 +01:00
Chris Hill-Scott
d7f42a868c Merge pull request #2244 from alphagov/request-letter-branding
Tell people they can have their logo on letters
2018-08-29 15:52:58 +01:00
Sakis
162fd3773e Merge pull request #2258 from alphagov/remove-header-check-preview
Disable paas-proxy header check on preview
2018-08-29 14:58:54 +01:00
Chris Hill-Scott
278f7e534c Remove GOV.UK as option when creating a branding
It doesn’t make sense to create a brand which doesn’t get shown.

This will make it safe to remove this option from the database.
2018-08-29 12:42:42 +01:00
Tom Byers
0df88ea182 Remove branding_type from set_email_branding page
Includes updates to the controller so
branding_type is got from the email_branding model
instead of from user input.

Follows on from:

https://github.com/alphagov/notifications-admin/pull/2249
2018-08-29 11:43:35 +01:00
Pete Herlihy
1569babc57 Update service count to 346 and orgs to 112 2018-08-29 11:41:30 +01:00
Chris Hill-Scott
06869ee2f3 Make the whole line a link
This looks cleaner than having part of the line as a link, and because
of the active opening word feels like more of a call to action.
2018-08-29 11:36:01 +01:00
Chris Hill-Scott
7c6627254b Update content to work in task list pattern
We probably don't need to use a lead-in for a task list / table.

Also moves the line about making the service live within one day to the
next screen.
2018-08-29 11:29:44 +01:00
Chris Hill-Scott
45eb16b4db Check text message sender before going live
We often check that a service has an appropriate text message sender as
a condition of them going live. We don’t mention this anywhere.

The services for whom GOVUK is definitely not an appropriate sender are
those in local government. As we have more of these teams starting to
use Notify, we should streamline the process by making this check
automated.

This commit adds that check, for teams who:
- have text message templates
- have self-declared as NHS or local government
2018-08-29 11:29:44 +01:00
Chris Hill-Scott
fbd2102832 Use task list pattern for request to go live
We’ve found a significant property of users (about 25%) who request to
go live aren’t completing all the items on the checklist.

In 1 of 6 (17%) of the usability testing sessions we did on this process
we saw someone skip straight past the checklist page because of big
green button syndrome. While 1 in 6 people would normally be a small
number[1] in the context of a usability testing session, it’s enough to
cause a big workload for our team (assuming it is the sole cause of
people not completing the items on the checklist).

The initial reason for using the tick cross pattern for the checklist
was:
- it was coherent with the rest of Notify
- the task list pattern didn’t have a way of showing that something
  still needed doing – it put more visual emphasis on the things
  the user had already done

There’s been some interesting discussion on the GOV.UK Design System
backlog about users failing to complete items in the task list. A few
people have tried different patterns for communicating that items in the
task list still need ‘completing’.

So this commit:
- adds a task list pattern
- uses the task list pattern for the request to go live checklist

The task list is adapted from the one in the design system in that:
- the ‘completed’ label has a black, not blue background (because Notify
  often uses blocks of blue to indicate something that’s clickable)
- it adds an explicit ‘not complete’ label which is visually not
  filled in (sort of how ticked/unticket radio buttons work)

1. With the caveat that looking only at task completion, or quantifying
   qualitative not good practices and the intention here is to show that
   the numbers are close enough to say that they could be symptomatic of
   the same problem. Leisa Reichelt’s Mind the Product talk is good on
   this https://vimeo.com/284015765
2018-08-29 11:29:43 +01:00
Athanasios Voutsadakis
c7cce495bd Disable paas-proxy header check on preview
See: https://github.com/alphagov/notifications-api/pull/2052
2018-08-28 13:58:31 +01:00
Chris Hill-Scott
b0694977c2 Alias Barking and Dagenham council’s domain 2018-08-28 09:47:24 +01:00
Chris Hill-Scott
cfc41085a1 Mark agreement signed by Mid Sussex District Council 2018-08-24 17:20:29 +01:00
Rebecca Law
54b63ed5e5 Merge pull request #2249 from alphagov/add-brand-type-to-email-branding
Add brand type to email branding.
2018-08-24 13:50:36 +01:00
Rebecca Law
be050657f6 Default the brand_type for new email brands 2018-08-24 13:11:40 +01:00
Chris Hill-Scott
74b480d967 Mark agreement signed by Herefordshire council 2018-08-24 12:24:31 +01:00
Rebecca Law
2b08b84c9e Merge branch 'master' into add-brand-type-to-email-branding 2018-08-24 11:09:31 +01:00
Rebecca Law
f7f202b670 Fix the EmailBranding 2018-08-23 17:44:34 +01:00