Commit Graph

27 Commits

Author SHA1 Message Date
Chris Hill-Scott
6fa0f06f5d Enable autosizing for some textboxes
This commit makes textboxes auto-resize any time they might be used to
enter long passages of text which would otherwise make them scroll
internally.
2019-10-31 17:53:45 +00:00
Chris Hill-Scott
7e3b7711bc Add standard back links to the support journey
Removes the non-standard, bottom of page back links where present.

Adds sticky footer to pages with long text boxes.
2019-10-17 13:44:04 +01:00
karlchillmaid
cc9bb476e5 Replace don't with do not 2019-09-23 13:21:57 +01:00
karlchillmaid
00562cd0e7 Amend link 2019-08-08 12:28:10 +01:00
karlchillmaid
04880e8372 Update Slack link to use unique ID 2019-08-08 12:24:10 +01:00
karlchillmaid
a68db38dd5 Update 'your message' 2019-07-12 11:43:54 +01:00
Chris Hill-Scott
e1c4e51995 Make ‘thanks’ page consistent with support page
On the support page we now promise that we’ll:
- look at tickets within half an hour
- reply within one working day

The thanks page was always promising a reply within half an hour, during
business hours or an emergency. This commit changes the ‘thanks’ page to
be consistent with the support page.
2019-07-12 11:43:32 +01:00
Chris Hill-Scott
8872e30567 Update app/templates/views/support/index.html
Co-Authored-By: karlchillmaid <karl.chillmaid@digital.cabinet-office.gov.uk>
2019-04-16 14:44:21 +01:00
karlchillmaid
cf9001d6e8 Amends based on 2i
Amends based on 2i
2019-04-11 10:31:33 +01:00
karlchillmaid
0e315477f0 Remove status page link
Remove status page link - it makes more sense to only show this as part of the 'report a problem' flow.
2019-04-11 10:31:31 +01:00
karlchillmaid
6833a551b9 Update support information
Update support information
2019-04-11 10:31:30 +01:00
karlchillmaid
fce2c709f6 Update Slack contact information
Update Slack contact information
2019-04-11 10:31:28 +01:00
karlchillmaid
23c772f5b8 Update status page link
Update status page link
2019-04-11 10:31:28 +01:00
karlchillmaid
adf02729bc Update introduction
Update introduction
2019-04-11 10:31:28 +01:00
Chris Hill-Scott
d9da219b7e Use a macro for form tags
This will stop us repeatedly forgetting to add `novalidate` and
`autocomplete='off'` to our forms (which is how most of them are set
up).

It uses sensible defaults, based on how we most-commonly configure
forms:
- most of our forms are `post`ed (but this can be overridden)
- `autocomplete` should only be enabled where it makes sense, otherwise
  it’s more annoying than useful (but this can be overriden)
- we should never be using HTML5 form validation because our own error
  styles and messages are better
2018-09-19 12:43:15 +01:00
Chris Hill-Scott
3d7422a8f6 Fix untypographic apostrophe
😱
2018-03-21 14:42:24 +00:00
chrisw
90e18e04ee Updated support views to represent new url structure 2017-11-29 13:58:12 +00:00
Chris Hill-Scott
7fc2a5b134 Remove HTML5 validation
This commit:
- uses WTForms email fields wherever we collect email addresses
- makes sure we don’t let the default HTML5 form validation get trigged
  (using `novalidate`[1])

We don’t want to use the default validation because:
- it looks out of place
- it’s not well supported by assistive technology

1. https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-novalidate
2017-10-16 17:17:54 +01:00
Chris Hill-Scott
b4c05ed697 Use ‘Continue’ not ‘Next’ for button text
The service manual recommends to:

> Make sure your ‘Continue’ button is:
>
> - labelled ‘Continue’, not ‘Next’
> - aligned to the left so users don’t miss it

– https://www.gov.uk/service-manual/design/question-pages
2017-07-24 16:52:17 +01:00
Chris Hill-Scott
109b41a430 Fix broken link in support process
The idea is if you decide your problem isn’t such an emergency after
all, we direct you to the form where you can report it as such. This
link wasn’t working because it didn’t understand `False` to mean ‘not
severe’. Only ‘no’ means not severe.

The result was that users got sent in a bit of a convoluted loop
where they were asked again if their problem was an emergency or not.

Testing this by making sure that both:
- the URL in the link is what we expected
- when visited it gives the page title we expect

Because even if we had had the first test only, it wouldn’t have caught
this bug.
2017-07-15 07:23:22 +01: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
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
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