Commit Graph

264 Commits

Author SHA1 Message Date
Chris Hill-Scott
95f6257852 Merge pull request #1512 from alphagov/email-reply-tweaks
Tweak email reply to pages, add IDs
2017-10-03 14:12:56 +01:00
chrisw
43395bc9d9 Added letters info to service / admin dashboard & activity page 2017-10-03 10:28:34 +01:00
Chris Hill-Scott
26d1bda43c Update email-message.scss
Got my first and last mixed up…
2017-09-28 16:15:48 +01:00
Chris Hill-Scott
c35088796a Hide ID when only one reply to address is shown
Most user will only have one reply to address. Which means they should
never have to worry about IDs. And if you only have one then you never
need its ID, because the last remaining address will always be the
default.

So IDs should only be shown when a service has created more than one
reply to address.

This required a bit of visual tweaking of the _user list_ pattern,
because its spacing wasn’t defined in a way that worked when only the
name of the thing, and not its details were shown on the page.
2017-09-28 11:35:52 +01:00
Chris Hill-Scott
06caccdd26 Fix overridden padding on email subject
Something in a new version of GOV.UK Elements, Template, or Frontend
Toolkit has introduced a rules which removes padding for the last
column in a table.

This is undesirable in the case of email message previews.
2017-09-28 10:47:33 +01:00
Chris Hill-Scott
0b1a08deef Change text style of default banner
The green text looks nicer than the black text.

The bold makes it stand out more.
2017-09-25 15:09:26 +01:00
Chris Hill-Scott
0c73a4cb9f Fix green border on tour banner 2017-08-30 16:36:48 +01:00
Chris Hill-Scott
dd5d6e4d59 Merge pull request #1435 from alphagov/manage-templates-permission
Separate ‘manage service’ and ‘manage templates’ permissions
2017-08-22 12:30:57 +01:00
Chris Hill-Scott
0092c8bb33 Change manage team layout to fit extra option
We’ve moved from three to four permissions. Four permissions don’t fit
in the exiting horizontal layout.

This commit makes the permissions stack vertically instead.

This approach has some downsides:
- makes the permissions less easy to scan vertically
- makes them take up a lot more space (and at lives services, most of
  them have somewhere around 15 team members)

But I think for now it’s better than any horizontal alternative that I
tried.
2017-08-17 17:53:12 +01:00
Chris Hill-Scott
45a0a767f4 Split settings page into multiple sections
There are quite a few more options that there used to be in the settings
page. This means it’s hard to find the thing you want to change.

Grouping options is a common way of making things easier to find.

Grouping by channel (text, email, letter) is something we do elsewhere
that seems to work pretty well.
2017-08-14 16:23:56 +01:00
Chris Hill-Scott
db98af7ec3 Make hit areas bigger on nav
Bigger click areas make them quicker to hit, as per Fitt’s law:
https://en.wikipedia.org/wiki/Fitts%27s_law
2017-08-07 13:08:43 +01:00
Chris Hill-Scott
dc356b6c7c Make focus colour pass WCAG
The default combination of blue on orange is not easy to read.
2017-08-07 13:08:32 +01:00
Chris Hill-Scott
5782ad49d9 Make focus state of switch service align nicely
There is padding on the switch service link so that:
- it lines up with the service name
- it has a bigger hit area (because Fitt’s law[1])

This means that visually, the default focus state overlaps the blue
bar under the GOV.UK banner. So it needs a bit of custom CSS to make it
look right visually.
2017-08-07 13:08:07 +01:00
Chris Hill-Scott
d51ffe6b39 Use yellow warning banner for permissions message
The green bordered banner feels too much like ‘success’ or
‘confirmation’. Doesn’t feel like it’s something which just gives you
the status of a thing, or here’s a thing you should be aware of.
2017-07-27 11:52:54 +01:00
Chris Hill-Scott
c15491974d Use black text with a border for default banner
We use panels with a blue banner to indicate something that’s clickable.
So we should move away from this style for things that are just
notifications. We can’t use teal like other bits of GOV.UK because it
doesn’t pass colour contrast.

Pay are using a box with a green border, similar to the error validation
box (which has a red border). So let’s do the same for now.
2017-07-27 11:52:38 +01:00
Chris Hill-Scott
05b1292e9d Make text black in error/danger banners
For consistency with what GOV.UK Elements does, the text in our banners
should be black, not red. See examples here:
http://govuk-elements.herokuapp.com/errors/#summarise-errors

This also makes us consistent with what Pay are doing.
2017-07-27 11:52:38 +01:00
Chris Hill-Scott
5b4a15495e Fix remove button keyboard focus on whitelist
Replicates @pcraig3’s work here:
https://github.com/alphagov/digitalmarketplace-frontend-toolkit/pull/333
2017-07-17 09:55:11 +01:00
Chris Hill-Scott
5fea26c7f7 Fix alignment and spacing of page footer on mobile
SASS pinched from here:
696ce451a7/source/pay-product-page/stylesheets/modules/_footer-categories.scss
2017-07-12 15:23:09 +01:00
Chris Hill-Scott
ef45a1d83f Merge pull request #1343 from alphagov/show-template-as-first-step-of-tour
Change step 1 of tour to only show the template
2017-07-04 08:55:16 +01:00
Chris Hill-Scott
4b74493b0d Fix redacted placeholder style on orange BG
Also does a tiny bit more tweaking of the vertical position to get it
looking aligned correct.
2017-06-30 14:04:12 +01:00
Chris Hill-Scott
37b710b57f Style redacted placeholders
The visual convention for redaction is heavy black crossing-out.

Our text colour isn’t always black exactly though (usually it’s very
dark grey, sometimes just dark grey). `currentColor` is a magical CSS
value that let’s us set the background colour to whatever the text
colour is. So both the text and redaction look like they are part of the
same thing.

Couple of subtle visual things here:
- opacity to make the colour better match the text colour – a filled box
  naturally looks darker than thin text, so this knocks it back a bit
- an inset shadow to take a few pixels of the bottom edge – the visual
  weight of text is biased upwards because text has ore capital letters
  and ascenders than descenders – this make it look aligned visually
2017-06-30 14:04:12 +01:00
Chris Hill-Scott
480a57bba4 Change step 1 of tour to only show the template
We’ve made a few changes to the tour recently, without changing the
help text on the left hand side of the screen. So the stuff you see on
the right side of the screen doesn’t quite sync up any more.

This commit adds an extra, introductory page that just shows the
template and a next button, which better matches the ‘every message
starts with a template’ help text.
2017-06-29 12:16:47 +01:00
Chris Hill-Scott
6e48dc7689 Add a message saying a template has been redacted
This is useful if it’s been redacted by someone who isn’t you.
2017-06-28 15:27:09 +01:00
Chris Hill-Scott
9569521142 Add feature to mark a template as redacted
Works similarly to the delete template flow, because it’s a destructive,
one-way action.

Not on the edit template page, because it’s not something you want to be
considering every time you’re editing a template. And we saw that people
couldn’t find the delete button when it was on this page.

Adds a bit more CSS for the `dangerous` banner type, because the content
here is quite complicated. Breaking it into a list helps, but the
spacing didn’t look right, so needed some tweaking.

Can ship independently of the code that shows the redaction, but needs
the API first.
2017-06-28 15:27:07 +01:00
Chris Hill-Scott
867143e871 Center-align pill text when there’s no big number
When the text is left aligned it looks messy because the spacing is so
uneven and there are no big numbers to give it some rhythm.
2017-06-23 13:49:27 +01:00
Chris Hill-Scott
02f8e4e14b Remove unused CSS
This stuff if leftover from when we used to have the sidebar of links
next to each template.
2017-06-20 10:06:15 +01:00
Chris Hill-Scott
18e8b570d7 Make click areas bigger on template picker
Generally, bigger click areas are better[1], as long as they don’t cause
ambiguity.

This commit expands the clickable area of links to templates to include
hint text underneath which states the type of template.

1. https://en.wikipedia.org/wiki/Fitts%27s_law
2017-06-20 10:05:21 +01:00
Chris Hill-Scott
84ee8b8327 Stop fixed position elements flying about
Normally, fixed position elements are positioned at `top: 0`.

The code that stops them from overlapping the footer does so by:
- setting the position to absolulte
- setting `top` to a calculated value (eg `1500px`) which makes it sit
  above the footer

The problem is caused because we’re animating `top`, so when scrolling
back up the page elements are getting animated from `1500px` to `0px`,
ie flying up from the bottom of the screen.
2017-06-15 11:47:32 +01:00
Chris Hill-Scott
cbeade0380 Ease fixed-position elements into place
The transition between something being static in the page and fixed to
the top of the viewport is a bit jarring.

This commit adds a bit of animation so that, as elements become fixed,
they appear to catch up with the scrolling of the page.
2017-06-15 11:14:30 +01:00
Chris Hill-Scott
085f5f9b22 Stick H1 at top of page on conversation view
You’ll quite often be landing half way down this page. So the context
afforded by being able to see the phone number gives you some
reassurance that you’ve landed in the right place.
2017-06-10 12:03:10 +01:00
Chris Hill-Scott
e7ed1c1cfe Line up linked message in viewport
We anchor link to the relevant message in a thread. Which is good, but
it leaves the messages hard against the top edge of the viewport. This
looks sloppy. So this commit:

- makes each message focusable
- shifts the focused message with CSS to sit away from the viewport
2017-06-10 12:03:10 +01:00
Chris Hill-Scott
f6d8e55579 Add two-way messaging view
> Once an inbound message has been received, there should be a way to
> see the other messages in the system from the same service to the same
> number. Both in and outbound. Nice inbox/whatsapp stylee view or some
> such. This way the context of the reply is understood.
>
> Initially will only see the outbound template, not the actual message,
> but we’re going to change this for the rest (soon), so that you can
> always see the full message for all outbound.
2017-06-10 12:03:10 +01:00
Chris Hill-Scott
e373296bd9 Show inbound messages on the dashboard
This commit adds two things:

a section on the dashboard to show how many inbound messages the
service has received in the last 7 days, and how recently an inbound
message has been received
---

Doesn’t show the contents of any messages, just like how the rest of the
dashboard is an aggregation, never individual messages.

a page to show all the inbound messages the service has received in
the last 7 days
---

This shows the first line of the message. Eventually this will link
through to a ‘conversation’ page, where a service can see all the
messages it’s received from a given phone number.
2017-06-05 15:42:36 +01:00
Chris Hill-Scott
b9bf18b936 Add a form to filter notifications by recipient
Because manually editing the URL isn’t a great user interface, this
commit adds a search field to do this on the user’s behalf.

For this pass at the story it doesn’t do any validation – the user will
just get no results if they search by something which isn’t a phone
number or email address.

If the user navigates to a different ‘bucket’ of notifications (eg
delivered, failed) then the search term is reset, because they’ve
changed the filter which is at a level above the search term.
2017-05-30 15:11:34 +01:00
Chris Hill-Scott
47c55ccb2b Add tail to SMS message
Because:
- drawing things in CSS is fun
- when we have inbound messages, having a tail pointing the other way
  will help differentiate which messages are inbound
2017-05-24 16:14:02 +01:00
Chris Hill-Scott
217e975ae9 Clean up unused SCSS in SMS message component
Things we don’t do with SMS messages any more:
- put paragraphs in them (we use `<br>` tags instead, to allow for
  multiple linebreaks)
- pick them using radio buttons
- render the template’s name as part of the template
- render the phone number that the message will be sent from as part of
  the template
2017-05-24 14:18:23 +01:00
Chris Hill-Scott
f425c5756d Make sure row numbers stay vertically aligned
Just looks tidier.
2017-05-23 14:36:27 +01:00
Chris Hill-Scott
a0cc792222 Make row numbers bold
They’re headings, not part of the data.
2017-05-23 14:36:26 +01:00
Chris Hill-Scott
3106ea0e15 Make send yourself a test form stay at top of page
You might need to scroll this page quite a lot to see where a
placeholder appears in your template – especially if you have a long
email or letter.

One of the things I’m trying to stop happening so much is a lot of
scrolling back and forth. This would happen if you were scrolling down
to see the placeholder, then back up to fill in its value.

So this commit makes the textbox ‘sticky’, ie it always stays at the top
of the viewport, even when you scroll down. This lets you see the
placeholder and the textbox side by side, no matter how long the
template is.

The code to do this mostly comes from the GOV.UK Frontend Toolkit
(documented here: d9489a9870/docs/javascript.md (stick-at-top-when-scrolling)).
I had to add some extra CSS to make it look good when it overlaps the
content of the page, which the GOV.UK Frontend Toolkit implementation
doesn’t really anticipate.
2017-05-22 10:50:41 +01:00
Chris Hill-Scott
3829002d65 Merge pull request #1261 from alphagov/wrap-email-meta
Make meta email preview meta info wrap nicely
2017-05-05 14:10:42 +01:00
Chris Hill-Scott
9be17bd728 Make meta email preview meta info wrap nicely
Because the email addresses can get pretty long, and have no spaces in
them, they sometimes break out of their containing box. This looks messy
and causes horizontal scrolling.
2017-05-03 15:12:25 +01:00
Chris Hill-Scott
d1cd74daa8 Update utils with to make letters unclickable
Brings in:
- [ ] https://github.com/alphagov/notifications-utils/pull/159

Means:
- renaming a bunch of things
- removing any CSS that targeted the link, and making it target the
  containing element too
2017-05-03 12:20:45 +01:00
Chris Hill-Scott
e9754e92df Add a back button to the scheduler
We’ve seen in research a user getting stuck playing with the
scheduler. They picked a day, but then didn’t want to choose one of the
options for that day. There’s no way to do this except pick a day and
then un-pick it.

What they ended up doing was clicking the grey back button, which took
them back to the previous page, making them upload their file again.

This commit adds a ‘back’ link for the scheduler. ‘Back’ seems like
sensible naming because that’s the thing that the user tried to click,
and the UI of a link matches the thing they clicked to get into this
situation.
2017-04-26 11:36:45 +01:00
Chris Hill-Scott
ac948ceb19 Make delete link flush left when there’s no button
The delete link was designed to be used with a button, where it needs
some padding to separate it from the button.

We now have a case where it’s being used without an accompanying button,
so we need a variation without that padding.
2017-04-18 13:49:01 +01:00
Chris Hill-Scott
685cce37bf Remove ‘mode’ banner type
No longer used anywhere.
2017-04-12 09:58:47 +01:00
Chris Hill-Scott
7fcabbc0e6 Add hover state for new radio select styles
Because they look like links, they should have all the clicking
affordance of links.
2017-04-11 17:22:44 +01:00
Chris Hill-Scott
bde140f560 Fix overlapping UI with new radio buttons
Not sure what about the new radios is causing this, but they no longer
expand the size of the container, causing an overlap.

The fixed height was originally for performance reasons, but removing
it doesn’t seem to cause the page to jump around on load, so I think
it’s OK.
2017-04-11 17:05:02 +01:00
Chris Hill-Scott
53b10f14f6 Merge pull request #1222 from alphagov/toolkit-upgrade
Upgrade GOV.UK Template, Frontend Tookit, and Elements
2017-04-11 14:03:08 +01:00
Chris Hill-Scott
a592898eff Make radio select work w/ new checkboxes/radios
The visual appearance of radio and checkbox form inputs changed in
GOV.UK Elements here:

https://github.com/alphagov/govuk_elements/pull/296

This was subsequently reimplemented with different markup and no
Javascript here:
https://github.com/alphagov/govuk_elements/pull/406

This has meant making the following changes to our app:
- changing the markup in our radio/checkbox macros to match the example
  markup given by GOV.UK Elements
- removing the previous Javascript file because it’s no longer needed to
  make the radios appear visual selected
- making the buttons on the scheduled job picker look like links,
  because the grey button style looked weird with the new radio buttons
2017-04-10 14:18:12 +01:00
Chris Hill-Scott
80898e350e More tweaks to width of elements
- SMS message preview gets slightly wider so it lines up with a 4/8
  column
- Edit email box gets wider to match more closely the width of the
  previewed and delivered emails
2017-04-10 10:28:27 +01:00