Commit Graph

48 Commits

Author SHA1 Message Date
Chris Hill-Scott
e247de6b00 Fix ghost radio button on API key page
I think the `opacity: 0.5` is a hangover from when the browser default
radio buttons were visible on the page – before the new radios and
checkboxes.
2017-04-26 13:04:35 +01:00
Chris Hill-Scott
f7f0128f0c Remove button padding override
Not sure why we were doing this. But as part of the Elements upgrade
our back buttons got bigger (because they weren’t constrained by the
line in our `app.scss`) but any green submit buttons stayed smaller in
height, so didn’t line up.

This commit removes the override, so all buttons have the size that
Elements intended.
2017-04-10 14:54:28 +01:00
Chris Hill-Scott
87c81c994f Ensure disabled radio buttons are still legible
The Elements CSS was making the `label` and `input` of disabled radio
buttons `opacity: 0.5`. This was resulting in text that was:
- too pale, especially where we were nesting 16px ‘hint’ text inside the
  label
- waaaay too pale when inside a link inside the label

This commit overrides elements to dim the disabled radio button by
making it’s text colour grey, rather than making the whole thing
semi-transparent.
2017-04-10 14:54:27 +01:00
Chris Hill-Scott
31d03acc11 Remove external link styling
The external link icon, and associated mixin, were deprecated in
https://github.com/alphagov/govuk_frontend_toolkit/pull/293

This means we can’t and shouldn’t use them any more.
2017-04-10 14:16:45 +01:00
Chris Hill-Scott
e62bd2a018 Remove override to make beta banner blue
Previously the beta bar was orange, which we didn’t want. So we wrote
some SASS to make it blue.

Now that GOV.UK Frontend Toolkit makes it blue, we can remove this SASS.

See https://github.com/alphagov/govuk_frontend_toolkit/pull/370
2017-04-10 14:14:53 +01:00
Chris Hill-Scott
494b6958b5 Make ‘by month’ heading bold on usage
So that it has the same visual weight as the other headings of the same
level (ie ‘Emails’ and ‘Text messages’).
2017-03-06 14:56:41 +00:00
Chris Hill-Scott
f53127c54f Fix spacing with heading/banner combination
Our CSS adjusts the spacing for the first `.heading-large` on the page
so that it aligns with the navigation. This doesn’t work when something
else comes first on the page, like a notification banner.

But since we only ever user `.heading-large` for the `<h1>`, and there
should only be one `<h1>` on the page we can just change the spacing
for _all_ `<h1>`s.
2017-02-23 10:39:26 +00:00
Chris Hill-Scott
9a8dda2f7a Fix missing skiplink target on product page
We didn’t have an element with an `id` of `content` on the product page
because we didn’t want the styles that come with it (from GOV.UK
Elements here: d6226bd2c8/public/sass/elements/_layout.scss (L9-L20))

This meant that the skiplink didn’t work on the product page because
it’s target was not on the page. The skiplink’s target is hardcoded to
point at `#content`.

The proper way to fix this would be to not hardcode the skiplink to
point at `#content`, ie what this pull request does:
https://github.com/alphagov/govuk_template/pull/275

Until that is merged, we can hack around the problem by overriding the
styles that Elements applies to `#content`, which is what this pull
request does.
2017-02-14 11:33:55 +00:00
Chris Hill-Scott
ac9d4f2daf Break down usage by month, filter by year
The previous, weekly activity breakdown was what we reckoned might be
useful. But now that we have people using the platform it feels like
aggregating a service’s usage by month is:
- matches the timeframe users report on within their organisation
- is consistent with the usage page

And like the usage page this commit also limits the page to only show
one financial year’s worth of data at once (rather than data for all
time).

This commit also makes some changes to the jobs view code so that our
aggregation of failure states is consistent between the dashboard pages
and the jobs pages.
2017-02-08 10:59:26 +00:00
Chris Hill-Scott
92ad308fca Replace beta banner with beta badge
This is part of the new header style that Tim, Stephen et al have been
working on.

This means that we lose the feedback link, so I’m trying out having it
in the top right.
2016-12-07 16:14:30 +00:00
Chris Hill-Scott
257fa7f9bb Shift propositional navigation down
This seems to be a custom thing done on Tim and Stephen’s prototype to
re-align the proposition nav. Not sure if it’s better or worse.
2016-11-18 12:00:01 +00:00
Chris Hill-Scott
ee78d0bf59 Move switch service out of black header
Also following the pattern work that Tim and Stephen have done.
2016-11-18 12:00:01 +00:00
Chris Hill-Scott
bfe234b535 Use two-weight GOV.UK Notify logo
Based on the work Tim, Stephen et. al have done on patterns for admin
interfaces across GaaP.

See their prototype here:
https://govuk-product-page-prototypes.herokuapp.com/govuk-notify
2016-11-18 11:59:40 +00:00
Chris Hill-Scott
4ae28386a6 Always show live key, reword key labels
This is trying to resolve these confusions:

- that you’re in trial mode, which means you can’t have a live key yet (
  or you can but it wont work, which is what we used to have)
- what does simulate mean

The create key page is the right place to resolve these confusions
because it’s where users are actively reading.

This commit also removes the trial mode banner from API integration
page because this where users _aren’t_ actively reading. A whole bunch
of users weren’t seeing this banner at all.

The implementation of the disabled API key options is kinda clunky
because WTForms doesn’t have a native way of doing this.

¯\_(ツ)_/¯
2016-11-04 14:05:30 +00:00
Chris Hill-Scott
f561bfe603 Show expander arrow for all browsers
The polyfill we use for details/summary only renders the arrow if the
browser doesn’t natively support the feature.

The latest versions of Firefox _do_ now support the feature (after 5
years), but for some reason they don’t draw the arrow. So this commit
forces the arrow to be polyfilled in all browsers, and hides the browser
default one, for those browsers that do render it.
2016-10-12 15:55:53 +01:00
Chris Hill-Scott
b760457ba9 Add monthly breakdown of usage
Basically:
- shows all the months from start of given financial year to now or end
  of given financial year (whichever is earliest)
- shows a breakdown of free and paid text messages for each of these
  months

Depends on:
- [x] https://github.com/alphagov/notifications-api/pull/699
2016-10-05 16:11:19 +01:00
Chris Hill-Scott
f22b61b9f4 Add beta banner to homepage
Because the homepage of the app is discoverable to the public, it makes
“gives the wrong impression” for it not to have a beta banner.
2016-07-28 09:08:15 +01:00
Chris Hill-Scott
3ac76192d0 Warn users a template change will break things
When a user adds or removes placeholders in their template we should consider
this a ‘breaking change’ and warn them accordingly.

Implementing this mostly relies on using
https://github.com/alphagov/notifications-utils/pull/37

Temporarily storing the new template until the user confirms that they want to
make the changes in done using hidden fields. This is a bit hacky, but the
complexity of making sessions interact with WTForms was just too much to handle.

This commit also changes the example spreadsheet that we show on this page to
look more like a spreadsheet.
2016-05-31 17:07:05 +01:00
Chris Hill-Scott
c6ab4d2c94 Hide the instructions for formatting a CSV
> On the send pages, we have a call to action in the middle of the
> page with lots of words and placeholder buttony looking things
> above and below it....
>
> You'll also see this every time you use this page, even though you
> probably get it after a single use.
>
> So let's wrap it up under a usefully titled (?) help link that
> expands to reveal all the things.

This commit implements the above.

It also rewords the messaging to talk about various spreadsheet formats,
not just CSV.
2016-05-17 14:52:40 +01:00
Chris Hill-Scott
fc24c93c7f Add style for nested bullets 2016-04-20 15:48:35 +01:00
Chris Hill-Scott
27ad1532e4 Make the flow of using templates better
For users who:
- want to send messages from a template
- want to edit templates

For developers:
- who need to get the ID of a template

This commit mainly cleans up the choose template page so there are less
options, and the options that are there are less wordy.

This means:
- moving ‘send yourself a test’ onto the send messages page, and making
  it button
- stripping a lot of stuff out of the ‘send from API’ page, so it’s more
  obvious what the template ID is
2016-04-19 15:31:19 +01:00
Chris Hill-Scott
b549b98108 Don’t lint SCSS files that have come from outside
We should (and do) keep exact copies of SCSS files that have come from
elsewhere so that we can easily upgrade them. But sometimes they don’t
always pass our linting rules, or throw a lot of warnings, which is
noisy.

This commit:
- moves such files into their own subdirectory
- tells SCSS Lint to ignore files in this directory
2016-04-13 14:30:49 +01:00
Chris Hill-Scott
8a68b4aa80 Indicate which user is you on manage team 2016-04-06 13:46:55 +01:00
Chris Hill-Scott
5d873bdc45 Show a tour when users first create a service
This commit adds a 3 screen tour, similar to those used on GOV.UK Verify
and Passports.

We guerilla tested this on Friday, and it really helped users to build a
mental model of how Notify works, so that when they’re playing around
with it they have a greater sense of what they’re aiming to do. This
makes concepts like templates and placeholders click more quickly.

https://www.pivotaltracker.com/story/show/116710119
2016-04-04 09:25:34 +01:00
Chris Hill-Scott
d537da330e Visually align headings inside grid rows
When the first heading on the page is inside a grid row, it doesn’t
vertically align properly with the navigation. This is because it
isn’t targeted by the selector that does this for pages without
an initial grid row.

This commit:
- adds an extra selector to target these headings
- makes the ‘add new thing’ buttons maintain their alignment with
  the page heading
2016-03-29 16:15:15 +01:00
Chris Hill-Scott
bce535b15d Make external link icons appear 2016-03-23 11:19:11 +00:00
Chris Hill-Scott
c138a4a5e0 Set permissions with checkboxes, not yes/no inputs
The yes/no pattern didn’t work too well, because:
- it didn’t read naturally as a question and answer
- often users left them completely unclicked if they didn’t want to set
  the permission (rather than clicking no)

This commit changes both the invite and edit user pages to use
checkboxes to set permissions. If also rewords these pages to read more
naturally, and explain what the permissions mean.

This meant changing some of the view logic around invites and
persmissions, and I ended up refactoring a bunch of it because I found
it hard to understand what was going on.
2016-03-22 17:18:43 +00:00
Chris Hill-Scott
2c3c802d5c Move documentation into footer, not behind login
https://www.pivotaltracker.com/story/show/115775183
2016-03-21 10:39:57 +00:00
Chris Hill-Scott
d1becbe1e3 Add cookie banner text, page, and footer links
> Let’s start the footer links with the cookie page.
> Banner to say: "GOV.UK Notify uses cookies to make the site simpler. Find out
> more about cookies"
> Standard style one... see
> https://www.registertovote.service.gov.uk/register-to-vote/cookies or
> https://www.digitalmarketplace.service.gov.uk/cookies
>
> Let's link to the feedback form too...
> https://docs.google.com/forms/d/1AL8U-xJX_HAFEiQiJszGQw0PcEaEUnYATSntEghNDGo/viewform
> Call it Support and feedback

https://www.pivotaltracker.com/story/show/115483375
2016-03-17 14:52:34 +00:00
Chris Hill-Scott
8e7b0edc4d Add page explaining how to send template using API
Would like to test something like this and see how well it works.

Intention of having this page is so:
- template IDs are discoverable (https://www.pivotaltracker.com/story/show/115404593)
- it’s obvious there’s an ‘automated’ way to send messages, as well as the CSV
  way (we’ve seen people oblivious to this in research)
2016-03-15 07:11:01 +00:00
Chris Hill-Scott
17b99c9bf2 Add pages to invite, edit, and delete users
This takes the original prototype version of this page, and, using the same
fake data (ie nothing is wired up):
- adds an invite users page
- adds an edit (and delete) user page

Both these pages allow the user to set another user’s permissions.

This commit adds images for the ticks and crosses, so we have control over their
appearance.
2016-02-22 13:39:02 +00:00
Chris Hill-Scott
426a23decd Add a hint about how to use placeholders
Since placeholders (almost) work now, it’s worth telling people what the syntax
is.

This commit also removes the ‘template type’ picker, since you can only create
SMS templates at the moment. This will be revisited when we start looking at how
you add an email template.
2016-02-18 15:23:14 +00:00
Chris Hill-Scott
7e8046be47 Add syntax highlighting to code examples in docs
Uses the Pygments[1] package.

1. http://pygments.org/
2016-02-09 10:33:49 +00:00
Chris Hill-Scott
3f365058ef Fix problems found by SASS Lint 2016-02-08 12:02:22 +00:00
Chris Hill-Scott
28f700366c Fix spacing of first page headers
This commit customises the margins of the first header on each page so that it
lines up with the navigation.
2016-02-04 10:59:18 +00:00
Chris Hill-Scott
9c856af789 Allow textboxes to have width set, default to 2/3
For entering 2 or 3fa codes, we want a textbox that’s just over 6 characters
wide.

To do this, a width can now be passed to the textbox macro. The possible widths
are the same as those provided by GOV.UK Elements, and in the same format (eg
1-4, 1-2, 2-3…)

This commit also adds a new width (5em) which is suitable for 3fa codes, and
adds it to the verify page.
2016-02-02 15:59:41 +00:00
Chris Hill-Scott
686c4127cd Various tweaks
- remove black border from banner
- make banners have internal columns
- make nav 2/3rd width, 19px text and more spaced out
- only show the ‘restricted mode’ banner where it’s needed
- rename ‘restricted mode’ to ‘trial mode’
2016-02-02 15:01:17 +00:00
Chris Hill-Scott
286fc308d9 Make the header bar red
Red for admin is a good reckon.
2016-02-01 13:52:46 +00:00
Chris Hill-Scott
f6aed4fa06 Remove ‘BETA’ label
There’s an argument to be made that the beta label should only apply to
the public-facing parts of services/platforms.

Removing it from here means that we don’t need to deal with the hassle of how it
fits into the navigation. If we have to bring it back then we could follow the
banner example here instead:

http://govuk-elements.herokuapp.com/alpha-beta-banners/#beta-banner
2016-02-01 13:52:46 +00:00
Chris Hill-Scott
e97f69e801 Make ‘GOV.UK Notify’ less shouty
‘GOV.UK’ in the template is set in 30px type to line up perfectly with the
crown. When adding more text, it looks too big.

This commit reduces the type size to 27px (which is still a core type size) and
tweaks the spacing so that things still look nice/aligned.
2016-02-01 13:52:45 +00:00
Chris Hill-Scott
3617f2e936 Move service and user nav to proposition header
This commit moves user-related navigation into the proposition header (the black
bar) at the top of the site. It adds some custom SASS to override GOV.UK
template and align these navigation items to the right (because it looks
better).

It then removes the service chooser dropdown (and its associated SASS and JS) in
favour of a link alongside the user-related navigation items. ‘Switch service’
is the best language for this that we’ve come up with so far.

This means that the only way of adding a new service is from the `/services`
page. So this commit removes the redirect if you land on this page with only one
service (else it would prevent you from ever being able to add more).
2016-02-01 13:52:45 +00:00
Chris Hill-Scott
6bdc0d3fce Tidy up navigation code
- use SASS variables for colours and spacing
- make navigation an include not a macro (because it doesn’t take any
  parameters)
2016-01-05 13:22:08 +00:00
Chris Hill-Scott
5ebeec08ae Use a Node-based tools for handling assets
…or how to move a bunch of things from a bunch of different places into
`app/static`.

There are three main reasons not to use Flask Assets:
- It had some strange behaviour like only
- It was based on Ruby SASS, which is slower to get new features than libsass,
  and meant depending on Ruby, and having the SASS Gem globally installed—so
  you’re already out of being a ‘pure’ Python app
- Martyn and I have experience of doing it this way on Marketplace, and we’ve
  ironed out the initial rough patches

The specific technologies this introduces, all of which are Node-based:
- Gulp – like a Makefile written in Javascript
- NPM – package management, used for managing Gulp and its related dependencies
- Bower – also package management, and the only way I can think to have
  GOV.UK template as a proper dependency

…speaking of which, GOV.UK template is now a dependency. This means it can’t be
modified at all (eg to add a global `#content` wrapper), so every page now
inherits from a template that has this wrapper. But it also means that we have a
clean upgrade path when the template is modified.

Everything else (toolkit, elements) I’ve kept as submodules but moved them to a
more logical place (`app/assets` not `app/assets/stylesheets`, because they
contain more than just SASS/CSS).
2016-01-05 13:12:35 +00:00
Chris Heathcote
1ad5f7f8e6 Trialling 1/4 width nav 2015-12-15 13:48:23 +00:00
Chris Heathcote
8939f710a9 Move navigation into its own css file 2015-12-14 17:05:39 +00:00
Chris Heathcote
ec020a42f4 Initial nav & implementation on dashboard 2015-12-14 16:37:15 +00:00
Chris Heathcote
da80013ec9 Adding beta phase banner 2015-12-03 16:01:00 +00:00
Chris Heathcote
701ce482d4 Create base forms for registration and sign in
Created routes and forms for registration, sign in, and registration
from an invite.
Also tidied up assets folder, removed copy of fronted toolkit.
2015-11-26 10:18:37 +00:00