Commit Graph

3076 Commits

Author SHA1 Message Date
Chris Hill-Scott
f2c0765c02 Give everyone who can see dashboard the upload nav 2020-03-12 10:37:59 +00:00
David McDonald
577091cec7 Merge pull request #3363 from alphagov/remove-user-from-service-event
Add event for remove_user_from_service
2020-03-10 15:49:37 +00:00
David McDonald
c248fee772 Add event for remove_user_from_service
Follows our existing patterns of events for managing users
2020-03-10 13:52:39 +00:00
Rebecca Law
6bd69be5d8 Merge pull request #3362 from alphagov/fix-message-too-long-error
Fix the error message for message-too-long
2020-03-10 13:07:13 +00:00
Rebecca Law
040da762ed Fix the error message for message-too=long
There was a bug that displayed the error message with 2 red error boxes around the error message.
Also need another else to handle a new error message from the API, the old one can be removed after the API is deployed. But this can go first. I tested this branch with API master and the API branch with the change. I tested one off SMS and a CSV upload.
2020-03-10 09:29:38 +00:00
Leo Hemsted
5535db273c Revert "upgrade flask_login to 0.5.0" 2020-03-09 16:48:27 +00:00
Leo Hemsted
2862cd1d30 Merge pull request #3357 from alphagov/flask-login
upgrade flask_login to 0.5.0
2020-03-09 16:07:47 +00:00
Katie Smith
99fd317087 Update letter pricing
The pricing page had the correct data, but there were a few pages where
the minimum and maximum price were out of date.
2020-03-09 16:05:23 +00:00
Katie Smith
4a832cfebb Fix tests relating to buttons on uploads and service settings pages
Some of the tests for buttons on the uploads page were not testing that
the right button was present / absent. There are hidden cookie buttons
in the HTML which means that we were sometimes finding one of these on
the page instead of the intended button.

On the service settings page, we changed the service setting buttons to
links some time ago, so tests that the buttons weren't on the page were
always passing.
2020-03-09 15:29:48 +00:00
Katie Smith
8c30dbfb69 Add international_letters permission to settings page
This is a permission that can only be toggled by Platform Admin and
which requires the `letter` permission in order to be turned on.
2020-03-09 14:17:20 +00:00
Leo Hemsted
e4cd77a645 upgrade flask_login to 0.5.0
flask_login sets a bunch of variables in the session object. We only use
one of them, `user_id`. We set that to the user id from the database,
and refer to it all over the place.

However, in flask_login 0.5.0 they prefix this with an underscore to
prevent people accidentally overwriting it etc. So when a user logs in
we need to make sure that we set user_id manually so we can still use
it.

flask_login sets a bunch of variables on the `flask.session` object.
However, this session object isn't the one that gets passed in to the
request context by flask - that one can only be modified outside of
requests from within the session_transaction context manager (see [1]).
So, flask_login populates the normal session and then we need to copy
all of those values across.

We didn't need to do this previously because we already set the
`user_id` value on line 20 of tests/__init__.py, but now that
flask_login is looking for `_user_id` instead we need to do this
properly.

[1] https://flask.palletsprojects.com/en/1.1.x/testing/#accessing-and-modifying-sessions
2020-03-09 12:04:17 +00:00
Chris Hill-Scott
4a154fddcf Merge pull request #3353 from alphagov/reverse-sort-scheduled-jobs
Reverse sort scheduled jobs
2020-03-06 16:40:16 +00:00
Leo Hemsted
a2ebc2fb7a Merge pull request #3355 from alphagov/invite-bug
move invite error handler to top level
2020-03-06 14:44:11 +00:00
Leo Hemsted
2d8d2d712a move invite error handler to top level
ensure we catch org errors as well as regular errors
2020-03-06 13:20:31 +00:00
Katie Smith
a85f7fa2c1 Replace the .column-... classes in _grids.scss
We had 7 classes in _grids.scss named `.column-...` which were being
used to give a certain column width. These worked by using `@include
grid column()`, which is now deprecated.

`.column-whole` and `.column-three-quarters` can be removed and replaced
with `govuk-grid-column-full` and `govuk-grid-column-three-quarters`
respectively. The other column classes don't have a direct replacment in
GOV.UK Frontend. To get round this, we overwrite the `$govuk-grid-width`
SASS map in `extensions.scss` to add in extra widths, then use this with
the `govuk-grid-column` mixin to create new classes in for our custom
widths in `_grids.scss`
2020-03-06 11:11:41 +00:00
Katie Smith
bf949044bc Replace column-two-thirds with govuk-grid-column-two-thirds 2020-03-06 11:11:41 +00:00
Katie Smith
07bcb4220e Replace column-one-third with govuk-grid-column-one-third
Also replaces `column-third`, with `govuk-grid-column-one-third`, since
this appears to be an alias of `column-one-third`.
2020-03-06 11:11:41 +00:00
Katie Smith
076d99c9dc Replace column-full with govuk-grid-column-full 2020-03-06 11:11:41 +00:00
Katie Smith
b9b9a138f9 Replace grid-row with govuk-grid-row
Replaced all instances of `grid-row` in the HTML and JavaScript with
`govuk-grid-row`, which is the new GOV.UK Frontend class.
2020-03-06 11:11:41 +00:00
Chris Hill-Scott
be48f3bac5 Merge pull request #3354 from alphagov/recently-not-yet
Say ‘recently’ not ‘yet’ because jobs aren’t forever
2020-03-06 10:35:59 +00:00
Chris Hill-Scott
3ad00adfb3 Reverse chronologically sort scheduled jobs
Now that scheduled jobs are mixed in with regular jobs it looks weird
for the sort order to be different. This makes the sort order
consistently go from furthest in the future to furthest in the past.

The old sort order made sense when scheduled jobs were displayed
separately on the dashboard.
2020-03-06 10:15:51 +00:00
Chris Hill-Scott
cfe18dd52a Merge pull request #3351 from alphagov/pluralise-org-usage
Don’t pluralise counts of one on org usage page
2020-03-06 09:52:20 +00:00
Chris Hill-Scott
3c3355536e Say ‘recently’ not ‘yet’ because jobs aren’t forever
We’re going to change the jobs page so that it only shows jobs within
the last n days (your data retention)<sup>1</sup>.

This will match how long uploaded letters stick around for.

Therefore it’s not accurate to say ‘yet’, because that implies all-time.
Since the data retention for different channels could be different it’s
hard and maybe unhelpful to give an exact time period. ‘Recently’ is
content we used here before, but then changed.

1. https://www.pivotaltracker.com/story/show/171623239
2020-03-06 09:49:04 +00:00
Leo Hemsted
1558d05be7 ensure highlighting div size always matches the relevant textarea 2020-03-05 16:38:26 +00:00
Chris Hill-Scott
e8c3a49812 Don’t pluralise counts of one on org usage page
1 email sent.

1 free text message sent.
2020-03-05 14:40:32 +00:00
Pea M. Tyczynska
8ecccca6c2 Merge pull request #3348 from alphagov/no-embedded-images-in-SVG-logo-files
Do not allow to upload SVG logos with embedded raster images in them
2020-03-04 15:41:03 +00:00
Pea Tyczynska
44519fcf8e Do not allow to upload SVG logos with embedded raster images in them
Those are for example png or jpg images. They do not render properly.
2020-03-04 15:35:12 +00:00
Chris Hill-Scott
b64c5ae78a Merge pull request #3344 from alphagov/uploads-navigation
Fix navigation around uploads and jobs
2020-03-04 12:14:08 +00:00
Leo Hemsted
8ccf97b029 Merge pull request #3339 from alphagov/remove-png-letter-logos
don't convert letter logo svgs to pngs
2020-03-04 10:18:19 +00:00
Chris Hill-Scott
22d1b353d5 Merge pull request #3341 from alphagov/hide-postage-validation-failed
Don’t show the postage when validation has failed
2020-03-03 14:37:14 +00:00
Chris Hill-Scott
3df3db1609 Fix navigation around uploads and jobs
The uploads and jobs page should start showing in the _Uploads_ menu on
the left hand side.

If you’ve navigated to a job from the uploads page (ie you haven’t got
to that page because you’ve just sent the job) then you should see a
link back to the uploads page.
2020-03-03 14:33:20 +00:00
Chris Hill-Scott
e155794cbc Merge pull request #3333 from alphagov/uploads-page-ready
Redesign the uploads page to accommodate different kinds of uploads
2020-03-03 13:44:38 +00:00
Chris Hill-Scott
b236df523c Don’t show the postage when validation has failed
The postage covers up some of the letter, so it can hide the problem. It
also implies that the letter has been put in an envelope, which will
never happen if it fails validation.

This matches what we do for uploaded letters.
2020-03-03 12:57:43 +00:00
Chris Hill-Scott
7a780d115e Test that addresses display on uploads page
We didn’t have a test that checked for the first two lines of the
address being displayed when rendering one-off letters on the uploads
page.

I double checked in the database and we store addresses in the `to`
field with newlines, not commas.
2020-03-03 10:50:07 +00:00
Chris Hill-Scott
58176d5fa0 State when organisation has no live services
The page looks broken otherwise.
2020-03-03 10:34:20 +00:00
Leo Hemsted
a3ccd9660b don't convert letter logo svgs to pngs
https://github.com/alphagov/notifications-template-preview/pull/371
stops using png logos when rendering png previews of templated letters.

when that is merged we no longer need to convert to pngs when we upload
a new letter logo.
2020-03-02 18:00:26 +00:00
Chris Hill-Scott
39c3d14350 Fix incorrect numbers for free text message count
We were looking at the wrong field in the JSON.
2020-02-28 16:38:35 +00:00
Chris Hill-Scott
d2d5510376 Add a search as you type form
As in other places where we have a long list of things where you might
want to jump to a specific thing. We use this pattern where there are
more than 7 things, per the magical number 7[1]

1. https://en.wikipedia.org/wiki/The_Magical_Number_Seven,_Plus_or_Minus_Two
2020-02-28 16:24:42 +00:00
Chris Hill-Scott
3c140ecdbf Add some subheadings
This helps differentiate the totals from the rest of the page, and it
harmonises it with the per-service usage page.
2020-02-28 15:41:59 +00:00
Chris Hill-Scott
fa6a59915c Make each service name a <h2> 2020-02-28 13:43:17 +00:00
Chris Hill-Scott
519176f903 Use new grid classes from GOV.UK frontend 2020-02-28 13:40:07 +00:00
Chris Hill-Scott
408fcf05eb Add financial year filter
Otherwise this page will become less useful come April 1st…
2020-02-28 12:46:50 +00:00
Chris Hill-Scott
bd9e127e57 Sum up usage for an whole organisation
We invoice on a per organisation basis, so it’s useful to know the per
organisation figures without needing to do any spreadsheet-fu.
2020-02-28 12:17:49 +00:00
Chris Hill-Scott
4d89d36847 Use big numbers for organisation usage
This is the pattern we use to display counts of things on the dashboard
and usage pages. It does some nice stuff like dealing with
comma-separating and formatting monetary amounts.

This commit also adds some logic to show the free allowance used if the
service hasn’t spent anything on text messages yet.
2020-02-28 12:16:33 +00:00
Chris Hill-Scott
63f704c64f Fix accidental switch of previous and next
We were showing the previous page link when we meant to show the next
page link because the variables were swapped round in the code.
2020-02-27 17:51:01 +00:00
Chris Hill-Scott
e638b68af1 Add some more content to the empty page state
We think that we need to make it clear what the difference between
uploading a letter and uploading a spreadsheet is, and where you go to
do each.

We get some confusion about uploading being behind the ‘Send’ button on
the template page. There’s some concern that launching the upload page
will increase this confusion, unless we head it off with some messaging.
2020-02-27 17:36:31 +00:00
Chris Hill-Scott
ee8436ca85 Differentiate between different kinds of uploads
Knowing what kind of upload a thing is is useful.

And the information that is useful to show about each upload depends on
what kind of upload it is.
2020-02-27 17:34:51 +00:00
Chris Hill-Scott
eed5e0fdd7 Combine scheduled and already-sent jobs
I’m hoping that if I can design something that clearly differentiates
them then we won’t need to do so by putting them in separate tables,
which then need labelling, which would clutter up the page.
2020-02-27 17:33:41 +00:00
Chris Hill-Scott
f9310dd2ed Use template_type property directly from API
It’s included in the job/upload response now[1]. So we don’t need to
fetch the template every time we want to access it.

1. https://github.com/alphagov/notifications-api/pull/2728
2020-02-27 16:46:51 +00:00
Pea M. Tyczynska
b6e0b7f97d Merge pull request #3307 from alphagov/send-by-email-setting
Users now able to set the send by email setting by themselves
2020-02-27 16:15:16 +00:00