Commit Graph

654 Commits

Author SHA1 Message Date
Chris Hill-Scott
148492a635 Put all nested items on page
So that the live search can filter things, they need to be on the page
when it loads. We want to make search work across folders, so all the
things in subfolders need to be in the page.

They also need the full path appending to them, so that you can tell
which ones are in which folders.

This won’t show items that are in a folder above the one you’re
currently in – my reckon is that when you’re narrowing down by clicking
into a folder that you only want to search for things in that folder.
2018-11-23 14:31:05 +00:00
Chris Hill-Scott
5df1978c62 Merge pull request #2529 from alphagov/download-pdf-footer
Put download PDF link in the sticky footer on the sent letter page
2018-11-22 13:23:10 +00:00
Chris Hill-Scott
fe5112a4c3 Merge pull request #2528 from alphagov/dont-wrap-users
Don’t wrap users onto multiple lines
2018-11-22 13:23:02 +00:00
Chris Hill-Scott
b317bd7a0b Put download PDF in footer
This makes its positioning consistent with the previous page in the
one-off sending journey.

It gives us more space to put information about the status of the letter
above the preview of the letter.
2018-11-22 12:36:29 +00:00
Chris Hill-Scott
0ed66828fc Merge pull request #2526 from alphagov/stick-email-status
Stick email status to bottom of screen
2018-11-22 12:31:14 +00:00
Chris Hill-Scott
8b84bf27e3 Don’t wrap users onto multiple lines
It looks cleaner to truncate instead. You can always see the full email
address by clicking into ‘edit’.
2018-11-22 10:44:09 +00:00
Chris Hill-Scott
c7118a80e2 Stick email status to bottom of screen
We’ve moved away from using the expand/collapse pattern on the page
where you click ‘send’. Instead we’re putting the send button in the
sticky footer.

So it’s a bit jarring to still have the expand/collapse on the page you
see after you’ve sent an email. This commit replaces it with the sticky
footer as well.

This is only relevant for emails because:

1. Text messages are generally short enough to fit on the screen
2. We don’t show the status of letters because they don’t really change
2018-11-22 10:20:39 +00:00
Chris Hill-Scott
65389b0bb5 Merge pull request #2513 from alphagov/empty-folder-message
Improve the empty folder state
2018-11-20 13:50:53 +00:00
Chris Hill-Scott
32c36bf70b Make the empty folder state more useful
Currently if there’s nothing in a folder you just get an empty page.
This looks a bit broken, or like the page hasn’t finished loading.

This commit adds a message to the page to show that it’s intentionally
blank.

The message is contextual based on type of template, because there might
be templates in the current folder, even if you can’t see them at the
moment (because you’re filtering).
2018-11-20 12:29:38 +00:00
Chris Hill-Scott
9bd91ed60a Style spacing for sticky footers
Sticky footers need slightly different spacing to sticky headers so they
look balanced. They can’t just inherit the same spacing.
2018-11-19 15:24:02 +00:00
Chris Hill-Scott
d3e7557058 Link current level in hierarchy from manage folder
Because that’s the page you come directly back from.
2018-11-19 11:28:36 +00:00
Chris Hill-Scott
d49622c5dc Style folder hierarchy in headings
This makes the display of folders in the `<h1>` look like the prototype.

It alters the behaviour we’ve initially built here by only ever showing
a maximum of two levels of hierarchy (the current folders and its
parent).
2018-11-19 10:50:03 +00:00
Tom Byers
d1805e7fc0 Merge pull request #2469 from alphagov/make-current-sticky-js-generic
Allow our sticky navs to stick to bottom as well as top
2018-11-15 09:59:37 +00:00
Tom Byers
eeb096aa62 Add missed .stopped method to Sticky Element 2018-11-14 16:42:52 +00:00
Tom Byers
8411598390 Remove transition if element is stuck onload
Fade-in and out for sticky elements should only be
when they move from being in-page to stuck from a
user interaction.
2018-11-14 10:25:08 +00:00
Chris Hill-Scott
807396f8b9 Add comment to explain combining of flex and float
Just so no-one thinks it’s redundant and removes it.
2018-11-13 14:22:48 +00:00
Chris Hill-Scott
66cf12ba65 Run folder-blue.svg through SVGOMG
Does the same optimisations we’ve done for the other SVGs.

https://jakearchibald.github.io/svgomg/
2018-11-13 14:15:38 +00:00
Chris Hill-Scott
a82ce7de1f Fix folder navigation in IE 10
IE10 doesn’t support flexbox. We can work around this using floats.

I think the flexbox will override it, so will be ignored by newer
browsers.
2018-11-13 14:01:19 +00:00
Chris Hill-Scott
e0ecc95ac6 Fix folder icon in IE 10
IE 10 supports using SVG[1] but has some buggy behaviour when they’re
used as background images.

Without an explicit width/height it stretches the viewBox of the SVG to
fill the containing element. This causes the content of the file to
display centered within the viewBox.

Explicitly setting the width and height seems to be the thing that fixes
this. Out of the suggested fixes on Stackoverflow[2] this one seems to
be the most straightforward.

1. https://caniuse.com/#feat=svg
2. https://stackoverflow.com/questions/17944354/svg-background-image-position-is-always-centered-in-internet-explorer-despite-b
2018-11-13 13:57:03 +00:00
Chris Hill-Scott
07dd59f5b6 Add folder icons to template list
To make it easier to identify what is a folder.
2018-11-12 11:53:37 +00:00
Chris Hill-Scott
fb339a08a8 Refactor CSS to better use inherited naming 2018-11-12 11:53:37 +00:00
Chris Hill-Scott
55fa85d79b Fix copypaste error 2018-11-12 09:54:25 +00:00
Chris Hill-Scott
2743216519 Show form elements for templates and folders
This commit adds:
- checkboxes to let you select a template or folder
- radio buttons to let you select where to move those template(s) and/or
  folder(s) to

It only does the `get` part of this work; handling the `post` and
calling API will be done in a subsequent commit.
2018-11-12 08:37:46 +00:00
Chris Hill-Scott
e4f8f4e98a Merge pull request #2379 from alphagov/add-folder-icons
Add folder icons
2018-11-09 15:05:28 +00:00
Tom Byers
c04c57b043 Fix linting errors 2018-11-08 22:47:52 +00:00
Tom Byers
412b1f1117 Add extra checks for resize and onload
Position of elements are normally checked when you
scroll but we also need it to check when the page
loads.

Re-calculate element positions if window resizes.

Adds a flag to mark if all elements have a height
which will not change as their contents have
loaded.
2018-11-08 22:45:24 +00:00
Tom Byers
fa1d669f4f Rename script to reflect what it now does 2018-11-08 22:39:39 +00:00
Tom Byers
deaa253e65 Add stop-at-bottom functionality
Detach all methods from sticky reference so they
can be attached to different objects.

Split sticky into stickAtTop and stickAtBottom and
make new versions of all methods and properties
specific to stickAtBottom.

Add CSS for stickAtBottom and call on load
2018-11-08 22:39:38 +00:00
Tom Byers
ef76d4eeb3 Record height of each sticky element
Function borrowed from stop-at-bottom JS.
2018-11-08 15:11:01 +00:00
Tom Byers
53d43073ef Refactor stick-at-top to remove top-specific code 2018-11-08 15:11:01 +00:00
Tom Byers
9e1ceb13ea Make local copy of stick-at-top JS 2018-11-08 15:11:01 +00:00
Chris Hill-Scott
666d55e82b Merge pull request #2428 from alphagov/api-key-page-neatness
Make API key page handle multiple lines of text better
2018-11-07 11:17:53 +00:00
Chris Hill-Scott
549e48de49 Merge pull request #2434 from alphagov/send-one-off-letter
Let people send one-off letters from the admin app
2018-11-02 09:33:04 +00:00
Chris Hill-Scott
1319de4b21 Make the corner of the spreadsheet grey again
It was being overriden to white by the scrollable table code.
2018-11-01 16:03:16 +00:00
Chris Hill-Scott
92aa144bf2 Merge pull request #2438 from alphagov/scrollable-spreadsheet
Make the example spreadsheet scroll horizontally
2018-11-01 15:53:00 +00:00
Chris Hill-Scott
54bd321504 Make the example spreadsheet scroll horizontally
This replicates how we let large spreadsheets scroll horizontally.

Pro: this looks nicer and is more usable

Con: the code for this feels a bit fragile, especially the calling of
`.maintainWidth` twice, ie as many times as a it takes to get stuff to
render properly.
2018-11-01 15:31:14 +00:00
Chris Hill-Scott
b7b5c844a7 Put pattern behind logo images
So that white on transparent images are visible.
2018-11-01 13:51:02 +00:00
Chris Hill-Scott
d6b785d3fa Style ‘Download PDF’ link 2018-10-31 14:29:38 +00:00
Chris Hill-Scott
dea1ffa569 Merge pull request #2424 from alphagov/templates-page-spacing
Make spacing tighter on templates page
2018-10-31 09:39:00 +00:00
Chris Hill-Scott
b727a50c13 Don’t have copy API key button jump around
It’s annoying that this button moves after you click on it. It’s
happening because the API key is wrapping onto multiple lines.

This commit fixes the height of the container so that it doesn’t reflow
when it has less content in it.

Uses a bit of flexbox to vertically centre the text.
2018-10-30 13:10:19 +00:00
Chris Hill-Scott
846b927459 Make spacing tighter on templates page
The prototype for folders tightens up the templates page to fit more
templates on the screen. Partly because it looks better, and partly
because the sticky bottom toolbar means that there’s less available
space. So reducing the spacing means that roughly the same number of
templates fit on the screen.

For those who won’t see the checkboxes (people who don’t have the send
permission) or use folders, this just means that they’ll have slightly
less scrolling to do if they have a lot of templates.

Doing this before adding the folders so that:
- we roll out changes more gradually
- once we add the folders we can see if the spacing has stayed
  consistent
- changing where the margins are applied to resolve the inconsistent
  spacing when there is/isn’t tabbed navigation or a search box shown
2018-10-29 15:00:17 +00:00
Chris Hill-Scott
c01d761a3c Show if a letter has been cancelled
At the moment we are manually cancelling letters for people when they
ask us to. Once’s we’ve done this there is no indication that it’s
happened except for the date going red on the list of letters.

This commit adds some error messaging and styling to show when a letter
is cancelled.

Letting people cancel their own letters will be a future enhancement.
2018-10-29 11:51:41 +00:00
Chris Hill-Scott
c8801bd905 Add thinner version of the blue icon
This is needed for when the icon is displayed at a larger size. The
thicker blue icon looks too big if it’s displayed at over 20px high
(the use case for this is displaying it at 30px high).
2018-10-18 16:28:26 +01:00
Chris Hill-Scott
8ee9e2a675 Rename blue folder as bold
To prepare for having a non-bold (same thickness as the black) blue
version of the icon
2018-10-18 16:27:52 +01:00
Chris Hill-Scott
ed3381e81c Add folder icons
These are copied from the prototype but with the following changes:
- redrawn to snap exactly to pixels
- slightly thicker border for the blue version, and a thinner border for
  the black version, so they look better in situ
- run through https://jakearchibald.github.io/svgomg/ for optimal file
  size

This commit doesn’t do anything with the images yet, it just adds them
to the repo.
2018-10-12 17:01:17 +01:00
Tom Byers
3655e63d34 Merge pull request #2262 from alphagov/remove_branding_type_from_set_email_branding_page
Remove branding type from set email branding page
2018-08-31 13:56:44 +01:00
Tom Byers
151488fa78 Update email preview page
No longer requires the branding_type GET param.

Retains the 'govuk' default brand.
2018-08-29 16:16:15 +01:00
Tom Byers
0df88ea182 Remove branding_type from set_email_branding page
Includes updates to the controller so
branding_type is got from the email_branding model
instead of from user input.

Follows on from:

https://github.com/alphagov/notifications-admin/pull/2249
2018-08-29 11:43:35 +01:00
Chris Hill-Scott
fbd2102832 Use task list pattern for request to go live
We’ve found a significant property of users (about 25%) who request to
go live aren’t completing all the items on the checklist.

In 1 of 6 (17%) of the usability testing sessions we did on this process
we saw someone skip straight past the checklist page because of big
green button syndrome. While 1 in 6 people would normally be a small
number[1] in the context of a usability testing session, it’s enough to
cause a big workload for our team (assuming it is the sole cause of
people not completing the items on the checklist).

The initial reason for using the tick cross pattern for the checklist
was:
- it was coherent with the rest of Notify
- the task list pattern didn’t have a way of showing that something
  still needed doing – it put more visual emphasis on the things
  the user had already done

There’s been some interesting discussion on the GOV.UK Design System
backlog about users failing to complete items in the task list. A few
people have tried different patterns for communicating that items in the
task list still need ‘completing’.

So this commit:
- adds a task list pattern
- uses the task list pattern for the request to go live checklist

The task list is adapted from the one in the design system in that:
- the ‘completed’ label has a black, not blue background (because Notify
  often uses blocks of blue to indicate something that’s clickable)
- it adds an explicit ‘not complete’ label which is visually not
  filled in (sort of how ticked/unticket radio buttons work)

1. With the caveat that looking only at task completion, or quantifying
   qualitative not good practices and the intention here is to show that
   the numbers are close enough to say that they could be symptomatic of
   the same problem. Leisa Reichelt’s Mind the Product talk is good on
   this https://vimeo.com/284015765
2018-08-29 11:29:43 +01:00
Chris Hill-Scott
3483490f03 Fix colour preview not loading on page load
The event was changed from `change` to `input`. The trigger was not updated accordingly.
2018-08-22 16:51:16 +01:00