Commit Graph

7524 Commits

Author SHA1 Message Date
Tom Byers
eaa1a67d76 Add allowed_file_extensions arg to file_upload
Safari has a bug where it stops input[type=file]
elements working if they don't specify the types
of file to accept (via the `accept` attribute).

It seems to just effect certain versions of Mojave
but completely blocks this action so worth fixing.

This adds a 'allowed_file_extensions' keyword
argument to the file_upload component to let you
specify a value to be passed to `accept`.

This was spotted on x-gov Slack:

https://ukgovernmentdigital.slack.com/archives/C06GCJW7R/p1607952390112800

...and StackOverflow:

https://stackoverflow.com/q/64843459/679924
2020-12-16 14:48:10 +00:00
Chris Hill-Scott
d1ab09db05 Merge pull request #3739 from alphagov/refactor-user-live-services
Remove separate function for live service check
2020-12-14 15:22:10 +00:00
Katie Smith
373365b2b0 Add class to letter specification links
To make them show up as non-visited links.
2020-12-11 11:33:34 +00:00
Katie Smith
57189f57e4 Add form validation for max service and org name
There was a recent error in the logs because a service tried to change
its name to one exceeding 255 characters (which is a limit on the
database field). We can easily catch these errors on the form, so that
the user doesn't see an error page.
2020-12-11 11:33:34 +00:00
Tom Byers
0cae383294 Merge pull request #3730 from alphagov/add-govuk-radios-4
Add GOVUK radios [part 4]
2020-12-11 11:31:58 +00:00
Chris Hill-Scott
5027be31fc Remove separate function for live service check
When we get a support ticket we need to check whether a user has any
live services.

We have a method for this on the user model now, so we don’t need a
separate function in the feedback code.

It wasn’t very well tested so I’ve adapted the old tests from the
feedback view to work against the method on the user model too.
2020-12-10 15:43:45 +00:00
Chris Hill-Scott
f3bf8c88b0 Merge pull request #3726 from alphagov/uksv
Update link to reflect withdrawn guidance
2020-12-10 13:58:08 +00:00
Tom Byers
b1d0d216e0 Convert radios on add org page
Changes OrganisationCrownStatusForm.crown_status.

This also effects NewOrganisationForm, which
inherits from OrganisationCrownStatusForm.

Because of that this commit also updates the
template used for the edit org crown status page,
which uses NewOrganisationForm for its form.
2020-12-10 10:19:50 +00:00
Tom Byers
0cdbb850aa Convert radios in edit org type page (basic)
Changes the OrganisationTypeField class used by
OrganisationOrganisationTypeForm.organisation_type

OrganisationTypeField is also used by the forms in
/add-service:
- CreateServiceForm
- CreateNhsServiceForm

Because of that, this commit also includes changes
to the template for that route.

Note: this also moves where OrganisationTypeField
appears in app/main/forms.py so it can use
GovukRadiosField.
2020-12-10 10:19:49 +00:00
Tom Byers
58149ce34c Convert radios on SMS prefix page
Includes changing form.enabled to use
OnOffField, for consistency with other on/off
fields.

OnOffField's data is a boolean, not a string, so
some of the logic using it needed to be changed.
2020-12-09 15:03:43 +00:00
Tom Byers
1612812c5d Convert radios on disable platform admin
Uses ServiceOnOffSettingForm.enabled.
2020-12-09 15:03:43 +00:00
Tom Byers
2e98681a5e Convert radios on set international {sms|letters}
Uses ServiceOnOffSettingForm.enabled.
2020-12-09 15:03:43 +00:00
Tom Byers
645f7911ab Convert radios on set {email|sms|letters} pages
All use the ServiceSwitchChannelForm.enabled
field, inherited from ServiceOnOffSettingForm.
2020-12-09 15:03:43 +00:00
Tom Byers
c9151e2663 Convert radios on set-service-setting.html
Uses the ServiceOnOffSettingForm.enabled.

Effects the following routes:
- /services/<service_id>/service-settings/switch-live
- /services/<service_id>/service-settings/switch-count-as-live
- /services/<service_id>/service-settings/permissions/<permission>
- /services/<service_id>/service-settings/permissions/broadcast

Includes changes to make the GOVUK radios
component render the h1 in the page. This is done
so the legend doesn't just duplicate the h1 and
is recommended in the design system guidance for
the radios component for pages that just ask you
for one piece of information.

https://design-system.service.gov.uk/components/radios/#how-it-works
2020-12-09 15:03:43 +00:00
Tom Byers
b917fa3c74 Make OnOffField inherit from GovukRadiosField
Means that ServiceOnOffSettingForm.enabled ends up
using the GovukRadiosField methods for rendering.
2020-12-09 15:03:43 +00:00
Tom Byers
ca3d111f03 Merge pull request #3727 from alphagov/add-govuk-radios-2
Add GOVUK radios [part 2]
2020-12-09 14:50:06 +00:00
Leo Hemsted
d5f54d2d78 Merge pull request #3735 from alphagov/show-allowed-broadcast-provider
show allowed broadcast provider
2020-12-09 09:52:22 +00:00
Leo Hemsted
c805e7bd9c show allowed broadcast provider
in the "training"/"live" window
2020-12-04 10:52:09 +00:00
Tom Byers
677cf9fb7e Merge pull request #3732 from alphagov/fix-footer-link-styles
Put underlines back on footer links
2020-12-04 10:47:24 +00:00
Tom Byers
4b80364381 Put underlines back on footer links
Raised by the service assessment accessibility
review as a problem for the footer due to it
having a mix of text and links.

This also makes it match the latest GOVUK Frontend
style.
2020-12-04 09:28:14 +00:00
Chris Hill-Scott
bb34081599 Tell browser to connect to asset domain earlier
When a browser loads a Notify page it does the following:
- DNS and TLS handshake for notifications.service.gov.uk
- download some HTML
- sees that the HTML needs to load some CSS
- DNS and TLS handshake for static.notifications.service.gov.uk
- downloads the CSS

We can speed things up a bit in modern browsers by parallelizing this
process a bit. Modern browsers support some HTTP headers[1] that allow
them to connect to other origins sooner.

After this change the steps are:
- DNS and TLS handshake for notifications.service.gov.uk
- receive response headers and simultaneously:
  - download some HTML
  - DNS and TLS handshake for static.notifications.service.gov.uk
- sees that the HTML needs to load some CSS
- downloads the CSS

1. https://developer.mozilla.org/en-US/docs/Web/Performance/dns-prefetch
2020-12-03 11:01:05 +00:00
Tom Byers
1fea95fae4 Convert radios on link-service-to-org page (basic) 2020-12-02 16:00:33 +00:00
Tom Byers
eac4b97cc3 Convert radios on user page (basic)
Covers the page for both new and existing users.
2020-12-02 16:00:32 +00:00
Tom Byers
8fa385220b Convert radios on uploads preview page (basic) 2020-12-02 16:00:32 +00:00
Tom Byers
ae59f602db Convert radios on edit postage page (basic) 2020-12-02 16:00:32 +00:00
Tom Byers
641f03cb5b Convert radios on support triage page (basic) 2020-12-02 16:00:32 +00:00
Tom Byers
ca50cf63cb Convert radios on /support page (basic) 2020-12-02 16:00:32 +00:00
Tom Byers
0f269a1259 Convert radios on set inbound page (basic) 2020-12-02 16:00:32 +00:00
Tom Byers
d0b8610cd8 Convert radios on research consent (basic) 2020-12-02 16:00:32 +00:00
Tom Byers
25b89dd30a Convert radios on data retention page (basic) 2020-12-02 16:00:32 +00:00
Tom Byers
b1d65f33c7 Convert radios on clear cache page (basic) 2020-12-02 16:00:32 +00:00
Tom Byers
e979aef43f Convert radios on provider ratio page (basic)
Also changes the CSS for the radios slider variant
component.
2020-12-02 16:00:32 +00:00
Tom Byers
45526598c6 Convert radios on edit org agreement page (basic) 2020-12-02 16:00:32 +00:00
Tom Byers
6aaa4d906b Convert radios on add nhs local org page (basic) 2020-12-02 16:00:32 +00:00
Tom Byers
52929d835d Convert radios for P.Admin email branding (basic) 2020-12-02 16:00:32 +00:00
Chris Hill-Scott
60f6c3e47f Update link to reflect withdrawn guidance
United Kingdom Security Vetting have their own organisation page on GOV.UK now
2020-12-02 10:38:19 +00:00
Chris Hill-Scott
b579f68411 Limit jobs sent from contact list by data retention
On the uploads page we only show jobs which are within a service’s data
retention.

This commit does the same for when we’re listing the jobs for a contact
list. This matches the UI, which says a contact list has been ‘used
`<count_of_jobs>` in the last <data_retention> days’
2020-12-01 13:57:56 +00:00
Chris Hill-Scott
4b2744b684 Merge pull request #3440 from alphagov/show-jobs-on-contact-list
Show jobs grouped within the contact list they were sent from
2020-12-01 11:48:02 +00:00
Tom Byers
8ab756709a Merge pull request #3717 from alphagov/fix-nesting-in-content-page-sub-nav
Fix nesting in content page sub nav
2020-12-01 11:08:46 +00:00
Chris Hill-Scott
45b60e9555 Show usage count on uploads page
Because we’re be grouping jobs under their parent contact lists it’s
good to have some information ‘scent’ to help people find their jobs,
ie by clicking into a contact list. It also lets you see which list have
been used more than others, maybe because the update hasn’t been sent
to that group of people yet.

The hint text under uploads always says when they were used. For contact
lists this is a bit more complicated, since they can:
- never have been used
- been used multiple times

This commit makes use of the new fields being returned by the API to say
determine when these messages are relevant. They also let us
differentiate between a contact list that’s never been used, and one
that has been used, but not recently enough to show any jobs against it.
2020-11-30 13:54:54 +00:00
Chris Hill-Scott
423875011c Show jobs on contact list
It’s a bit unintuitive that starting a job from a contact list makes a
copy of the file, which has no relationship to the list it was copied
from. This is more of an implementation detail, rather than something
that comes from people’s mental models of what is going on. Or at least
that’s what I hypothesise.

I think it’s clearer to show jobs that come from contact lists within
the lists that they were created from. By naming the jobs by template
this gives a clearer view of what messages have been sent to the group
over time.
2020-11-30 13:54:54 +00:00
Chris Hill-Scott
149456b73a Add some more macros for counting things 2020-11-30 13:54:53 +00:00
Chris Hill-Scott
8f5c07336d Add method to get jobs for a contact list
Because the API lets us query jobs by contact list now, let’s add the
model and client layer code that will let us display them in the admin
app.
2020-11-30 13:54:53 +00:00
Chris Hill-Scott
236ddf053d Make created_at a property of contact lists
The view layer shouldn’t be having to deal with converting dates as
strings. This is an artefact of how we send data from the API to the
admin app. The model layer should be responsible for turning JSON into
richer types, where it can.
2020-11-30 13:54:53 +00:00
Chris Hill-Scott
fc1ca3ab2f Refactor to make pagination reusable
The responses we get to paginated queries from the API are fairly
consistent, so we should be able to reuse the code that takes JSON
from the API and turns it into Python objects. This commits factors out
that code so that it is reusable (by inheriting from it).
2020-11-30 13:54:53 +00:00
Rebecca Law
9463a94263 Remove the api_key component that was not being used on a few pages but imported. 2020-11-26 08:37:33 +00:00
Tom Byers
2f5f836dda Correct 'thing' to users on manage folder page
The checkboxes component that lets you choose
which users have permission to see the folder is
currently using the noun of 'folder' in the
summary it generates.

This is because this page users the
TemplateFolderForm class, which defaults the
permissions to 'folder'.

This updates the field_label attribute, used by
the code that generates the summary, to 'user' to
match the type of permission.
2020-11-24 14:22:08 +00:00
Chris Hill-Scott
6ebecec1f1 Merge pull request #3714 from alphagov/fix-focus-colour-edit-letter-links
Fix the focus colour on edit template links
2020-11-20 09:58:10 +00:00
Chris Hill-Scott
806552ce1d Remove line about beta from the roadmap
We’re not in beta any more, and we don’t need to explain what beta means
any more.
2020-11-19 15:59:18 +00:00
karlchillmaid
83c3d31629 Remove bullets and update content 2020-11-19 15:05:35 +00:00