Commit Graph

2462 Commits

Author SHA1 Message Date
Katie Smith
a978a2fbe5 Refactor contact link template 2018-08-13 13:40:03 +01:00
Katie Smith
979fd9bbe4 Allow service contact details to be phone number, email or url
Service contact details are needed if the upload document permission is
enabled - this used to be a link but services can now choose to use a
link, email address or phone number. The form to add or change service
contact details now gives these options and validates the data according
to the type of contact details provided.

When validating phone numbers we can't use the existing validation
because we want to allow landlines too, so there is a basic check that
the phone number is the right length and doesn't include certain
characters.
2018-08-13 10:33:39 +01:00
Chris Hill-Scott
fdf3670661 Remove basic view setting and preview 2018-08-09 17:51:34 +01:00
Chris Hill-Scott
347912876c Relabel existing permissions
Since we have added a new, 5th permission the existing permissions
should be relabelled so that the five make sense as a coherent set.

We especially want to make sure that:
- the labels work against the checkboxes and against the tick/crosses on
  the manage users page (a long time ago this page was layed out
  differently so didn’t have space for full labels)
- there is no confusion between usage and reports

This commit also:
- re-adds a line about what all users can see (‘sent messages’) but
  continues to omit the additional bullet points about templates and
  team members (because we think this is clear enough from reading the
  permissions)
- refactors the `Form` subclass so that the content and order of the
  permissions only have to be defined once
- brings back the ‘permissions’ legend on the `fieldset`
2018-08-09 13:49:06 +01:00
Chris Hill-Scott
646ba6e8c3 Add a ‘See dashboard’ permission
Our research and prototyping around ‘basic view’ found that:
- a lot of users who send messages rarely or never look at the dashboard
  (yet it’s the first page they see when they sign in)
- team managers like the idea of taking away things that users don’t
  need in order to make the interface simpler

We’ve disentangled the simpler way of sending messages from being part
of ‘basic view’. This means we can give managers the option of taking
away the dashboard as an independent choice, not something that’s
wrapped up in a separate ‘view’.

I think that this checkbox is a more straightforward proposition than
‘basic view’ ever was (despite all the work we did to explain it and
develop the nested checkbox pattern). In research users would often
explain the feature back to us as being about hiding the dashboard – we
should try to make Notify operate in terms of concepts that come
naturally to people wherever possible.
2018-08-09 13:49:06 +01:00
Chris Hill-Scott
d2fc613270 Put counts back on notifications page
We think there is some need for users who don’t need to see the
dashboard to quickly find out which messages have failed.

So this commit brings back the status filters for all users (previously
those with ‘basic view’ wouldn’t have had them).

This makes it less of a drastic change when the `view_activity`
permission is removed from a user.
2018-08-09 11:56:16 +01:00
Chris Hill-Scott
e34ca2a8ee Make it clear which template you’re sending
The one downside of skipping the template page is that you no longer
get such strong confirmation that you’ve picked the correct template.
You still see the preview of the template, but it’s further down the
page, and the name of the template has disappeared.

This commit adds the name of the template to the page title, to:
- have some continuity from the previous page
- make it easier to double-check you’ve chosen the correct template
2018-08-09 11:56:15 +01:00
Chris Hill-Scott
8c92d0a3c2 Remove other references to ‘upload recipients’
For consistency.
2018-08-09 11:56:14 +01:00
Chris Hill-Scott
bcf538fa10 Remove separation between upload and send
Now that you can access upload from within the send one off message
flow, it doesn’t need its own linkbutton on the template page.
2018-08-09 11:56:14 +01:00
Chris Hill-Scott
3bd62c2aef Offer link to upload
‘Upload recipients’ and ‘Send to one recipient’ have always been
slightly clunky phrases.

Now that basic view jumps straight into the ‘Send to one recipient’
flow there’s no way for users to get to the ‘Upload recipients’ flow.

By adding a link to it from the ‘Send to one recipient’ flow it’s
possible for users of basic view to access it.

But we don’t want to introduce too much inconsistency between basic view
and admin view because users will be migrating from one to another. They
might also be talking to their manager, who wouldn’t be able to tell
them where to click if they were looking at two completely different
interfaces.

This also means that we can keep the left-hand navigation in basic view
nice and simple with the two options (‘Templates’ and ‘Sent messages’),
rather than trying to introduce something like ‘Send one message’ and
‘Send lots of messages’ later on.
2018-08-09 11:56:13 +01:00
Chris Hill-Scott
b9b0d0870b Merge pull request #2210 from alphagov/revert-track-basic-view
Revert "Track event when someone previews basic view"
2018-08-09 09:37:54 +01:00
Chris Hill-Scott
4256c56b7a Merge pull request #2202 from alphagov/hide-branding-request-api-permission
Hide email branding change link if the user doesn’t have the manage service permission
2018-08-09 09:36:54 +01:00
Chris Hill-Scott
7b1d4136bf Revert "Track event when someone previews basic view"
This reverts commit 77d96032bf.
2018-08-08 08:55:06 +01:00
Tom Byers
a2a02a5185 Add preview step to branding selection flow
Gives platform admins a chance to preview the
combination of brand type and custom brand
(coloured banner and logo) set for service before
saving.
2018-08-07 16:56:37 +01:00
Rebecca Law
ae1f1c95d6 Merge branch 'master' into flexible-data-retention 2018-08-06 15:37:11 +01:00
Chris Hill-Scott
cecfe86e73 Hide email branding change if not manage service
If you have the API keys permission you can see the settings page. But you 
can’t change or request stuff, like email branding. So we shouldn’t show the 
link that suggests you can.
2018-08-06 11:25:19 +01:00
Chris Hill-Scott
dd2364654a Merge pull request #2166 from alphagov/basic-view-description
Revise how we talk about what basic view is
2018-08-02 17:41:26 +01:00
Chris Hill-Scott
26823b6122 Fix straight apostrophe 2018-08-02 17:35:37 +01:00
karlchillmaid
8eaf7caa05 Updated hint text
Updated hint text
2018-08-02 17:31:16 +01:00
karlchillmaid
48ddce8410 Removed reference to 'their' sent messages
Removed reference to 'their' sent messages – because users will be able to see all sent messages
2018-08-02 17:09:20 +01:00
karlchillmaid
5c5fe54cb4 Updated content to include next steps
Updated content to explain what users need to do next.

Includes explicit instructions and a repetition of 'team members'.
2018-08-02 16:58:43 +01:00
Chris Hill-Scott
cabb0a74c1 Fix broken keys for basic view event tracking
Bad copy/paste…
2018-08-02 16:44:15 +01:00
Chris Hill-Scott
d92340b7cf Merge pull request #2197 from alphagov/track-basic-view
Track onboarding of basic view in Google Analytics
2018-08-02 16:17:14 +01:00
Chris Hill-Scott
fc5f3ee132 Merge pull request #2192 from alphagov/jobs-one-off
Show uploaded files in basic view
2018-08-02 15:23:58 +01:00
Chris Hill-Scott
8e6efadb23 Track virtual page view when enabling basic view
So we can see what pages people go to after turning it on.
2018-08-02 15:23:52 +01:00
Chris Hill-Scott
77d96032bf Track event when someone previews basic view
We’re interested to know which services are looking at the basic view
preview (even if they’re not turning it on).

This commit logs their service IDs as events into Google Analytics.
2018-08-02 15:23:52 +01:00
Chris Hill-Scott
c551ce9a42 Show jobs in basic view
There are some teams who send jobs on a daily/weekly basis. They have
team members who only use Notify for this purpose. So they would
probably benefit from basic view, because they don’t need to see the
dashboard.

This commit:
- adds a new item (uploaded files) to the basic view navigation for
  teams that have sent at least one job
- makes the job pages visible to basic view users

I think we should do this now, rather than as a later enhancement to
basic view. We only have one chance to announce the feature, so teams
who do send jobs may otherwise discount it as not useful for them and
the opportunity to have them use it is lost.
2018-08-01 10:45:02 +01:00
Rebecca Law
d512f330cd Edit, don’t duplicate, existing templates 2018-07-31 16:23:46 +01:00
karlchillmaid
6b33bc7956 Remove reference to 'one-off' messages
Basic view should work for sending multiple messages too.
2018-07-31 12:35:36 +01:00
Chris Hill-Scott
1304561a70 Use service model to look up service attributes
This is better than just keying into the JSON because it means you get
an exception straight away when looking up a key that doesn’t exist
(which via mocking you could ordinarily miss).
2018-07-30 14:56:36 +01:00
Chris Hill-Scott
036923c382 Make a service model and use for permissions
Having the service floating about as JSON is a bit flakey. Could easily
introduce a mistake where you mistype the name of a key and silently
get `None`.

Also means doing awkward things like `if 'permission' in
current_service['permissions']`, whereas for users we can do the
much cleaner `user.has_permission()`.

So this commit:
- introduces a model
- adds a `.has_permission` method similar to the one we have for users
2018-07-30 14:56:36 +01:00
karlchillmaid
8b608f7a89 Updated caseworker permissions content
Updated description of caseworker / basic view permissions
2018-07-30 11:53:00 +01:00
karlchillmaid
cef8c6d90e Updated content
Updated the description of what basic view does
2018-07-30 11:50:39 +01:00
Chris Hill-Scott
2070314cb1 Fix missing organisation services from user search
The list of services this page was looking at only included those not
belonging to an organisation.

On production this excludes services we’ve added to organisations to
make the management of those services easier (eg ‘GDS’ and ‘DVLA’).
2018-07-30 11:31:52 +01:00
Chris Hill-Scott
19632ea4ab Add option to copy existing template when adding
Sometimes when setting up a service you might have a few very similar
templates, in which only a small amount of content. Or you might even
have a few of services, which are used by different teams but have
similar templates.

Copy and pasting, especially from one service to another, is a pain.
This commit makes it easier by allowing users to copy an existing
template when choosing to add a new one, instead of starting from
scratch.
2018-07-30 11:31:51 +01:00
Chris Hill-Scott
7d535544db Merge pull request #2164 from alphagov/rename-basic-nav
Improve navigation in basic view
2018-07-20 14:54:15 +01:00
Pete Herlihy
eee9059fd7 Updated the service and org counts 2018-07-20 13:59:11 +01:00
Rebecca Law
0081a70d4b Fix the link on the data-retention/edit.html
Adding new service_api_client methods to get data for the right amount of days.
2018-07-19 17:09:52 +01:00
Rebecca Law
ce754be464 Addressing comments from PR review.
Update tests
Use a table to display the data retention data.
2018-07-18 15:31:34 +01:00
Rebecca Law
be51a668cf Fix capitalisation on Data Retention 2018-07-17 15:56:28 +01:00
Rebecca Law
4b8b571a87 Adding views to view, add and edit service data retention policies.
Only visible to a platform admin.
A service can have a custom number of days to retain the notification data for each notification type.
2018-07-17 14:39:04 +01:00
Pea Tyczynska
2fab363253 Link to user services on User Information page 2018-07-16 17:37:26 +01:00
Pea Tyczynska
b3d99507bd Fix displaying of services on User Information page 2018-07-16 17:37:26 +01:00
Chris Hill-Scott
9fe66d6866 Revise how we talk about what basic view is
The page where you switch on the feature
---

This content aims to describe:
- the benefit of basic view – ‘make Notify quicker and simpler’
- who it benefits – ‘team members who only need to send messages’
- how it does it – ‘by hiding…’
- what it prevents users from being able to do or see –  ‘everything
  except…’
- what it allows users to do – ‘send messages’, [see] ‘templates, a list
  of sent messages’

I’m still keen to mention sent messages here, as it feels weird not to
mention it at all when it’s 1 of only 2 options in Basic view. I don’t
think it’s as important to mention it on the Edit team member screen.

I’ve specifically used ‘a list of sent messages’ rather than just ‘sent
messages’, to make it seem less like a noun (new feature).

The page where you choose whether someone has basic view
---

Switches the focus from what you can see to what you can’t.

Aims to be consistent with both:
- the description of permissions in admin view
- the language used to describe basic view in settings
2018-07-16 17:00:02 +01:00
Pea (Malgorzata Tyczynska)
d76f30e9f8 Merge pull request #2158 from alphagov/admin_platform_users_search
Admin can find users by email and see information about them
2018-07-16 16:11:36 +01:00
Pea Tyczynska
8258de084c Change part of the tests to use client_request
Two tests retained the old syntax because of mocker conflict:
when logging in as a user through client_request, it sets up a
side_effect on user_api_client.get_user to the user you log in
as. If you later want to set return_value for get_user to
something else, problems start :d.
2018-07-16 15:37:53 +01:00
Chris Hill-Scott
b946a6008d Add H1 to sent messages page
> Suggest making the H1 visible here for consistency, but also to make
> it clear to users what they’re looking at.

> This screen is similar to – but not exactly the same as – the
> individual text, email and letter dashboard screens from Admin view,
> so the H1 could help to distinguish it from them for users who may
> have interacted with both.
2018-07-13 17:02:27 +01:00
Chris Hill-Scott
ca9fe6c8f6 Rename ‘Send a message’ to ‘Templates’ in basic view
From Karl:

> Templates – this should be consistent with Admin view. Users may
> switch from Basic to Admin view (or vice versa), they will also
> interact with users who have a different view or permissions to them.
> Neither should have to learn new interfaces and language if possible.

> ‘Send a message’ was a nice, active label – but Notify options aren’t
> usually actions. If we’re going to change this we should be consistent
> across both Admin and Basic views.

> For the same reason, I have rejected ‘see’, ‘search’ and ‘view sent
> messages’. It will be interesting to see in user testing whether users
> read ‘sent messages’ as ‘send messages’.
2018-07-13 17:02:27 +01:00
Rebecca Law
13d05c5461 Allow a platform admin user to set flexible data retention for a service for a specified notification type.
Still a work in progress
2018-07-13 16:47:26 +01:00
Pea Tyczynska
4cd465753a Add view that displays user information, including:
- name
- email
- phone number
- services
- last login
- failed login attempts if any

The view can be accessed from results of find_users_by_email

logged_in_at added to User serialization on admin frontend as
a part of this work
2018-07-13 16:01:52 +01:00