Commit Graph

35 Commits

Author SHA1 Message Date
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
91b4545adc Don’t mix errors with valid rows
Brings in: https://github.com/alphagov/notifications-utils/pull/11

Changes the number of rows shown to be at most 15 (either 15 rows with errors
or 15 valid rows.
2016-03-14 16:53:21 +00:00
Chris Hill-Scott
144de21745 Make nav and page headings reflect permissions
> If you have the Edit templates permission but not the Send messages permission, the navigation should read
>
> - Text message templates
> - Email templates
> - Letter templates
>
> The page headings should also read
>
> - Text message templates
> - Email templates
> - Letter templates

respectively

https://www.pivotaltracker.com/story/show/115488955
2016-03-14 10:39:53 +00:00
Chris Hill-Scott
02dfb2820d Merge pull request #256 from alphagov/name-1-not-test-name
Use ‘name 1’ when sending yourself a message
2016-03-10 19:41:12 +00:00
Chris Hill-Scott
25103aaef0 Use ‘name 1’ when sending yourself a message
We reckon this is better than ‘test name’, ‘test date’, etc.
2016-03-10 12:03:26 +00:00
Rebecca Law
f6d98b63ea Refactored register_errorhandlers so that it handles HTTPError
Remove most cases where we catch HTTPError
2016-03-10 11:53:29 +00:00
Chris Hill-Scott
91e9cd37b1 Make text of ‘send’ button say ‘email’ or ‘text…’
Previously the send button on the ‘Check and confirm’ page always said
‘Send x messages’, irrespective of whether you were sending emails or text
messages.

This commit makes it say one of
- Send 1 email
- Send 29 emails
- Send 1 text message
- Send 999 text messages
2016-03-09 12:28:22 +00:00
Chris Hill-Scott
b93a1e89c8 Fix bug which prevented viewing an email job
The template for viewing a job was not getting all the variables it needed in
order to display an email template. Hadn’t noticed this before, because email
templates require more variables than SMS templates.

This commit fixes that bug.
2016-03-09 12:25:33 +00:00
Chris Hill-Scott
c1bf48f91e Don’t catch exceptions if API fails to create job
There is no good reason why the API should fail to create a job at this point.
If it’s returning a 404, this is an error, and we should be monitoring for it.
So we should let it raise, and throw a 500.
2016-03-08 18:36:23 +00:00
Chris Hill-Scott
eb3734f1d1 Give the user better error messages for CSV files
Makes uses of the additions to utils in https://github.com/alphagov/notifications-utils/pull/9

This commit strips out a lot of the complex stuff that the views and templates
in this app were doing. There is now a cleaner separation of concerns:

- utils returns the number and type of errors in the csv
- `get_errors_for_csv` helper in this app maps the number and type of errors
  onto human-friendly error messages
- the view and template just doing the glueing-together of all the pieces

This is (hopefully) easier to understand, definitely makes the component
parts easier to test in isolation, and makes it easier to give more specific
error messages.
2016-03-08 18:36:22 +00:00
Chris Hill-Scott
049004c1b3 Merge pull request #235 from alphagov/fix-bad-first-column
Validate column heading.
2016-03-04 11:38:57 +00:00
Rebecca Law
f6db12b094 Merge pull request #227 from alphagov/poll-job-page
Make job page poll for updates
2016-03-04 11:07:14 +00:00
Rebecca Law
e3c692ede7 Validate column heading.
Still need to show that it is the heading that is wrong.
2016-03-04 10:09:46 +00:00
Rebecca Law
3e1d60af86 Merge branch 'master' into revalidate-csv-file 2016-03-03 15:38:14 +00:00
Rebecca Law
35c3be5146 Add test.
Remove else since it is not needed.
2016-03-03 15:26:52 +00:00
Chris Hill-Scott
990e626631 Remove tick banner
I’d like to see if we can get away without this now that the page updates. In
research the ‘We’ve started’ part of the message confused people, especially
when they’d only sent one message.
2016-03-03 14:28:36 +00:00
Nicholas Staples
8287e1bad1 Fix permission names, all tests passing. 2016-03-03 12:15:24 +00:00
Rebecca Law
584fac9683 If the file was invalid and Upload a CSV file was clicked, the job was created, then the send would fail when sending the file, trying to replace a placeholder that didn't exist.
This commit calls send_messages again if the files exist on the request.
2016-03-03 11:14:43 +00:00
Nicholas Staples
9b31761001 Merge remote-tracking branch 'origin/master' into add_send_permission 2016-03-03 09:20:19 +00:00
Nicholas Staples
1b59e5c7f1 Review comments fixed. All tests passing. 2016-03-03 09:02:56 +00:00
Rebecca Law
789264a863 Change label to exclude the type of message being sent.
Fix send email to self, it was always using mobile number to send mesasge. This fixes that.
2016-03-02 17:02:41 +00:00
Nicholas Staples
dde2fba705 Merge with master again. 2016-03-02 13:53:05 +00:00
Chris Hill-Scott
b57ac2f7e5 Accept CSVs with 'email address' or 'phone number'
CSV files currently have ‘to’ as the recipient column. This is changing in
https://github.com/alphagov/notifications-api/pull/109

The admin app also has to validate that the CSV files have the right columns,
because the API expects any CSV that it’s given to have been checked (also we
want things to actually work).

This commit is the minimum code change needed. In the future it should reuse
the same code as the API for processing CSV files. This will need more thinking.
2016-03-02 10:41:35 +00:00
Nicholas Staples
efaf826e86 Merge with master. 2016-03-01 15:53:58 +00:00
Nicholas Staples
ffe30c3070 Permissions added for templates and send_messages pages. All tests passing.
Fix up page heading.
2016-02-29 17:18:12 +00:00
Adam Shimali
d7bad32ac3 Removed moto mocks and mock s3 upload and download directly.
Also updated csv reading to use correct module and do more
work to remove empty fields and trailing commas.
2016-02-26 12:04:17 +00:00
Adam Shimali
77c9c9a323 Merge pull request #201 from alphagov/stub-send-letters
Stub out the send letters page
2016-02-26 12:03:32 +00:00
Chris Hill-Scott
04e7aac99c Column headers on the check page should always be blue 2016-02-26 11:57:14 +00:00
Chris Hill-Scott
2f91848a42 Prefix text messages with service name
Brings in: https://github.com/alphagov/notifications-utils/pull/4
2016-02-26 11:57:13 +00:00
Chris Hill-Scott
70ef2f5a6f Fix example CSV for email templates
It should populate the CSV file with the user’s email address, not their phone
number.
2016-02-26 11:57:13 +00:00
Chris Hill-Scott
a51d92c87a Consolidate page templates for emails + texts
Use one page template for each of:
- choosing a message template
- adding recipients
- checking an email message
- looking at a job

This commit consolidates the two templates into one, and adds logic to show
the SMS message pattern or the email message pattern depending on the type of
template.

It also gives email templates a bit more width, because the body and the from
address tend to be quite long.
2016-02-26 11:57:13 +00:00
Chris Hill-Scott
8d81c4d984 Stub out the send letters page 2016-02-25 17:34:53 +00:00
Martyn Inglis
87391f2aa1 Renamed header of CSV to be 'to' - matches API 2016-02-25 11:30:09 +00:00
Chris Hill-Scott
1e46922876 Make send the send flow generic
This commit parameterises all methods in the send view so that they can send
either emails or SMS messages.

It works out what kind of message it is sending from the `template_type`
property of the template object.

This means that the `Template` util class needs to know about these properties,
which means that this commit depends on:
https://github.com/alphagov/notifications-utils/pull/2

This commit does _not_ add tests for sending emails. The existing tests for
sending SMS still pass, but actually sending emails is outside the scope of
this story.
2016-02-24 09:23:38 +00:00
Chris Hill-Scott
aaa6317371 Rename SMS to send
Because this view is no longer just for sending SMS messages, it and its
associated tests should be renamed, so `send_sms.py` becomes `send.py`, etc.
2016-02-24 09:23:38 +00:00