Commit Graph

1184 Commits

Author SHA1 Message Date
Chris Hill-Scott
1c127f6fe0 Fix broken script tag
The HTML validator picks up this error in our code:
> Self-closing syntax (/>) used on a non-void HTML element. Ignoring
> the slash and treating as a start tag.
2017-02-14 11:55:27 +00:00
Chris Hill-Scott
8d116aaae3 Use valid HTML value for autocomplete attribute
We had a valid reason for setting this to `nope` (see
2124821e00). But it’s not valid HTML, so
got us a fail in the accessibility audit.
2017-02-14 11:55:05 +00:00
Chris Hill-Scott
01fdd1d034 Turn off HTML5 validation on registration form
We do our own server-side validation of things like email address. We
don’t want the browser also trying to do it based on the input type of a
form field. It’s bad because the browser validation message comes up as
a nasty little tooltip under the field.
2017-02-14 11:55:05 +00:00
Chris Hill-Scott
d1b53682cd Remove <h2> tag around service name in nav
The heading structure of most pages is incorrect (`<h2>` followed by
`<h1>`). The `<h1>` indicates the main purpose of the page, the service
name (currently the first `<h2>`) doesn't need to be a heading.
2017-02-14 11:53:53 +00:00
Chris Hill-Scott
135ff1ee77 Include service name in page <title>
In pages specific to a service (e.g. dashboard and sub pages) the title
needs to distinguish which service it applies to. This is mainly to give
context to screen reader users who could be managing multiple services.

Implementing this uses template inheritance:

`page_title` includes `per_page_title` includes `service_page_title`

‘GOV.UK Notify’ is inserted into every page title.

Pages that set `service_page_title` get the service name inserted too.
2017-02-14 11:53:53 +00:00
Chris Hill-Scott
549695de4e Add extra text to label rows for screenreaders
This is mainly for the ‘check’ page where we show users the contents of
their spreadsheet.

> The structure of the table means that the first cell is treated as a
> column header, so moving through columns in row 2 for example
> associates the data 2 with 1 (column header) - this has no logical
> meaning
2017-02-14 11:51:38 +00:00
Chris Hill-Scott
cd7cb8884c Send focus to error summary before single error
> If both sections of the page have errors and the page is submitted,
> focus moves to the mobile numbers section so screen reader users may
> not be aware of preceding errors - focus should move to a dedicated
> error summary at the top of the page.

Right now we use Javascript to focus the first error on a page (if any
errors are found). This commit adds more JS to then focus the error
summary, if there is one on the page. So this is where the focus will
rest.

It also makes some modifications to the ‘dangerous’ banner to make it
focusable, and to visually indicate that it is focused.
2017-02-14 11:51:19 +00:00
Chris Hill-Scott
d2918486e9 Add error summary to whitelist page
> If both sections of the page have errors and the page is submitted,
> focus moves to the mobile numbers section so screen reader users may
> not be aware of preceding errors - focus should move to a dedicated
> error summary at the top of the page.

This commit adds the dedicate error summary at the top of the page,
following the GOV.UK Elements style from:
http://govuk-elements.herokuapp.com/errors/
2017-02-14 11:51:19 +00:00
Chris Hill-Scott
ffab83729c Make screen reader announce when API key is copied
Currently screen reader users would click the ‘Copy API key’ button but
not get any feedback. This commit adds an ARIA attribute which tells the
screenreader to announce any changes in to the content of the element
(eg when it changes from showing the API to showing the text ‘API key
copied to clipboard’).
2017-02-14 11:50:12 +00:00
Chris Hill-Scott
90cb44f332 Add a skip link to the preview page
The accessibility audit raised the issue that screen reader users could
miss the table of data on the preview page, because it’s after the
submit/back buttons.

> The back button is before the table of error messages - a screen
> reader user might read the initial error summary then get to the back
> button and not realise the error detail are later in the sequence.

> The send and back buttons are before the table of field values - a
> screen reader user might read the template details ror summary then
> get to the buttons and not realise the field details are later in the
> sequence.

This commit add a skip link to navigate the users directly to the table,
which:
- allows them to skip past a lot of content which they might already
  have read
- makes them aware that the table exists

It’s added:
– as the first thing after the `<h1>` when there are no errors with the
  file
- as the last thing in the error summary when there are errors with the
  file

The link is hidden from those interacting with the site visually.
2017-02-14 11:49:54 +00:00
Chris Hill-Scott
56808066d6 Fix duplicate on product page 2017-02-14 11:48:06 +00:00
Chris Hill-Scott
1eebb990fd Merge pull request #1114 from alphagov/page-title-fix-activity-breakdown
Fix page title on activity breakdown
2017-02-09 10:59:26 +00:00
Chris Hill-Scott
909fd5ba03 Fix page title on activity breakdown 2017-02-09 10:48:17 +00:00
Chris Hill-Scott
7bd5525983 Add comma-separation to counts of failed messages 2017-02-09 10:19:19 +00:00
Chris Hill-Scott
ba61b37415 Merge pull request #1109 from alphagov/usage-by-year-2
Break down usage by month, filter by year
2017-02-09 09:36:23 +00:00
Chris Hill-Scott
27b95308ad Merge pull request #1111 from alphagov/service-30
Updated service count for NOMS - Assisted Prison Visit Scheme
2017-02-08 17:21:04 +00:00
Pete Herlihy
c3da85ba80 Updated service count for NOMS - Assisted Prision Visit Scheme 2017-02-08 16:44:40 +00:00
Chris Hill-Scott
21cdef72ce Merge pull request #1110 from alphagov/add-usage-link-to-nav
Add usage link to navigation
2017-02-08 11:45:40 +00:00
Chris Hill-Scott
eab943d353 Add usage link to navigation
We’ve seen services that have a lot of activity on their dashboard
miss the usage feature because the link gets pushed a long way down the
page.

We don’t want to move it up the page, because for most users the
templates/jobs stuff is more useful. And we don’t want to remove it
because it’s a useful part of the onboarding to understand the Notify
proposition.

So this commit adds it as a link to the nav, to make users more aware of
it, and as a quick way of getting into it for the small subset of users
who will care about it (a lot).

Order of the links is determined by what’s likely to be most useful for
first time users surfing the nav. Usage is more interesting than
settings, but less interesting than team members.
2017-02-08 11:35:35 +00:00
Pete Herlihy
3297cf5911 Merge pull request #1107 from alphagov/update-product-page
Update to 29 services for GOV.UK Verify
2017-02-08 11:22:30 +00:00
Chris Hill-Scott
3c7b41aace Limit months shown to current and past
Matches what we do on the usage page. No need to see months in the
future because there’s no way you’ll have sent any messages in those
months, unless you’re Marty McFly.
2017-02-08 11:16:11 +00:00
Chris Hill-Scott
ac9d4f2daf Break down usage by month, filter by year
The previous, weekly activity breakdown was what we reckoned might be
useful. But now that we have people using the platform it feels like
aggregating a service’s usage by month is:
- matches the timeframe users report on within their organisation
- is consistent with the usage page

And like the usage page this commit also limits the page to only show
one financial year’s worth of data at once (rather than data for all
time).

This commit also makes some changes to the jobs view code so that our
aggregation of failure states is consistent between the dashboard pages
and the jobs pages.
2017-02-08 10:59:26 +00:00
Pete Herlihy
1a668e1304 Update to 29 services for GOV.UK Verify 2017-02-07 14:02:49 +00:00
Chris Hill-Scott
2a502753a4 Filter and navigate usage by financial year
Right now we tell people that the usage page is for the current
financial year. This is a lie – it’s for all time.

So this commit calls through to the API to get the stats for (by
default) the current financial year.

We already do this for the monthly breakdown, this just does the same
thing for the yearly totals.

It also adds navigation to show the data for other financial years:
- previous so you can go back and see your usage and verify that the
  bill you’re about to pay is correct
- next so that you can check what your SMS allowance is going to be
  before you actually get into it
2017-02-06 12:25:48 +00:00
Rebecca Law
b9d88cccc3 Merge pull request #1103 from alphagov/testing-doc
Testing doc
2017-02-03 10:44:38 +00:00
Rebecca Law
d1449a26ad Use table instead of lists.
Edits to contents.
2017-02-03 10:35:35 +00:00
Rebecca Law
35cc9106c2 Match words to the create api key page 2017-02-02 16:58:15 +00:00
Rebecca Law
93081d4387 Edits to the integration testing doc
Linked to in the footer and the documentation page.
2017-02-02 16:14:56 +00:00
Rebecca Law
b1150efbbc Merge pull request #1100 from alphagov/implement-suspend-service
Add Suspend and Resume service buttons to service-settings page.
2017-02-02 16:08:48 +00:00
Chris Hill-Scott
d2680fe885 Require email address for reporting problems
If you report a problem we want to be able to get back to you to find
out more information, or to update you on the status of a fix. So it
shouldn’t be possible to report a problem without providing an email
address.

This commit makes `email_address` a required field when `ticket_type` is
problem.

This requires a bit of fiddling with the tests which weren’t expecting
to have to provide an email address. So the tests now either:
- pass an email address
- check for an error when they don’t pass an email address
2017-02-02 15:18:41 +00:00
Chris Hill-Scott
4ef087fb01 Add a confirmation page
Generally I prefer confirmation pages to the flash message thing
(they’re harder to miss). So this commit adds one.

It also adds some logic to this page, so that, depending what the user
has told us about the thing they’ve submitted, we can tell them how
quickly to expect a response.
2017-02-02 15:18:41 +00:00
Chris Hill-Scott
438868257f Triage tickets based on time of day and services
TL;DR, as much as possible we should work out how to prioritise tickets
and not put that burden on the user. However, there are some cases where
we can’t.

In business hours all tickets are high priority, ie we will at least
acknowledge them within 30 mins.

If we are not in business hours then we need to know if a ticket is
serious enough to get someone out of bed. Only the user can tell us
this, but we can give them some examples to help them decide.

In addition, out-of-hours tickets are only a priority if the user has
live services. Normally we can determine this and do the
priority-setting in the background.

If they can’t log in then we can’t determine what services they have. So
in this case they will need to use the emergency email address, which
only users with live services will have.

The logic for this gets fairly complex. It might be to easier to
understand what’s going on by walking through the test cases, which are
a bit more declarative.

N.B. Deskpro’s ‘urgency’ is descending, eg 10 is the most urgent and 1
is the least.
2017-02-02 15:18:40 +00:00
Chris Hill-Scott
8d7869ee54 Don’t ask for a user’s email address if we know it
If a user is logged in then we already know their name and email
address. So there’s no need for them to fill them again on the support
form.

One concern we might have about this is the user not realising we’re
doing this, and the feedback form looking like a bit of a black hole.
So we’re replaying their email address on this page to reassure them
that:
- we know who they are
- and that they’ll get a reply
2017-02-02 15:18:40 +00:00
Chris Hill-Scott
1df3c11ae9 Split support into two pages
The kind of communications we’re getting at the moment can broadly be
broken down into:
- problems
- questions and feedback

We will need to triage problems differently, because they could
potentially be urgent/severe/emergency/P1/whatever language we use.
Questions or feedback will never be P1.

Two reasons for making the user categorise their tickets themselves:

- Outside of hours we can’t get someone out of bed in order to decide if
  a ticket is a problem or just feedback

- We can tailor the subsequent pages to whether it’s a problem or
  feedback (eg showing a link to the status page if the user is having
  a problem)

This commit let’s users make the choice with a pair of radio buttons.

It also cleans up a bunch of the tests and parameterizes them so we’re
testing the flow for both ticket types.
2017-02-02 15:18:40 +00:00
Chris Hill-Scott
abc9343be4 Rename support link in navigation to save space
Technically it’s _support, feedback and questions_ but that’s way too
long. And it’s all support really.
2017-02-02 15:18:40 +00:00
Chris Hill-Scott
4503724ad6 Add a support index page
Our support process is about to get more fully fledged so we’ll need
an index page to route people properly.

We reckon that users will also want to know what the support process is,
so let’s explain it on this page.
2017-02-02 15:18:39 +00:00
Pete Herlihy
d040527dec Merge pull request #1102 from alphagov/api-key-labels
Api key labels updated to clarify Live, Team and Test
2017-02-02 13:33:28 +00:00
Pete Herlihy
97a4975985 Stopped hiding the label that showed if a key was a live key
Happy to be overruled by @quis on this one....
2017-02-02 13:01:15 +00:00
Pete Herlihy
4040429f41 Updated API key type hint text on list of keys page 2017-02-02 12:52:11 +00:00
Rebecca Law
e929088bea Updates to the integration_testing documentation.
Added a link to this doc in the documentation page.
2017-02-01 10:27:02 +00:00
Rebecca Law
7f31bd7548 Merge branch 'master' into testing-doc 2017-01-31 16:36:03 +00:00
Rebecca Law
26974886ec Add Suspend and Resume service buttons to service-settings page. 2017-01-31 15:56:06 +00:00
Chris Hill-Scott
1ef24887e8 Add link to performance platform 2017-01-31 15:29:05 +00:00
Rebecca Law
6d883b59ad Changed deactivate service to archive service.
need to deploy https://github.com/alphagov/notifications-api/pull/808 first
2017-01-31 09:54:51 +00:00
Chris Hill-Scott
53561c8a82 Merge pull request #1095 from alphagov/quis-patch-1
Update count of services on dashboard
2017-01-30 11:48:58 +00:00
Rebecca Law
dc9524f01e WIP: First attempt at adding a testing doc to the links in the footer.
This may result in changing the developer document section completely.
2017-01-27 17:32:20 +00:00
Chris Hill-Scott
b538e20569 Update count of services on dashboard
One of the services in Notify is actually 2 services sharing an account.
2017-01-27 14:40:17 +00:00
Chris Hill-Scott
a99aeaa136 Make page title on template usage page match link
For consistency. Going to revisit this page shortly.
2017-01-25 14:43:56 +00:00
Rebecca Law
49ce146790 Merge pull request #1091 from alphagov/fix-back-button
Fix back button on breaking-change.html
2017-01-25 08:57:41 +00:00
Rebecca Law
de94f369a7 A bug was reported on where editting a template with a breaking change.
The url was not being properly formed, missing the tempalte_id, meaning the back button on the page did not work.

This fixes that, includes a check of the url for the back button.
2017-01-24 17:42:18 +00:00