268 Commits

Author SHA1 Message Date
Pēteris Caune
7994259003
When an invited user logs in, redirect them to the new project 2020-04-24 14:46:43 +03:00
Pēteris Caune
e04a92ccf1
Profiles admin: filtering by number of checks, show check count by project. 2020-04-20 19:11:15 +03:00
Pēteris Caune
abdff95ce8
Admin tweaks. 2020-04-20 13:33:21 +03:00
Pēteris Caune
ca715dd8d4
Check membership when initiating project's transfer. Use transaction.atomic() when completing the transfer. 2020-04-13 15:19:37 +03:00
Pēteris Caune
57da17b8e2
Send an "Ownership Transfer Request" email notification. 2020-04-13 15:04:59 +03:00
Pēteris Caune
3bf1ad9746
Fix invite suggestions. 2020-04-13 12:26:05 +03:00
Pēteris Caune
532b752e3c
cleanup: don't import each form individually 2020-04-13 12:16:39 +03:00
Pēteris Caune
f7acaa57af
Adding tests. 2020-04-12 18:21:08 +03:00
Pēteris Caune
f42b2b144a
New feature: Project Settings > Transfer Ownership (WIP, missing tests) 2020-04-12 14:46:12 +03:00
Pēteris Caune
22ef024885
Use secrets.token_urlsafe 2020-03-02 10:04:41 +02:00
Pēteris Caune
8bbf85a397
Remove Profile.current_project field. Fixes #336 2020-03-02 09:57:39 +02:00
Pēteris Caune
4bcfba728e
Use unittest.mock 2020-03-01 22:30:12 +02:00
Pēteris Caune
29e016d0fc
Update Telegram instructions. Fix redirect after login when adding Telegram integration. 2020-02-27 15:52:00 +02:00
Pēteris Caune
0c9c453ea0
Profile.current_project not used any more, remove last remaining references. cc: #336 2020-02-27 12:34:21 +02:00
Pēteris Caune
157711bc95
Reduce usage of Profile.current_project cc: #336 2020-02-26 10:56:17 +02:00
Pēteris Caune
6a0c90853b
request.project is now unused, removing 2020-02-26 10:37:19 +02:00
Pēteris Caune
bb808852d9
Reduce usage of request.project cc: #336 2020-02-25 15:39:54 +02:00
Pēteris Caune
318934697f
Remove last references of the hc-channels route. 2020-02-25 15:26:33 +02:00
Pēteris Caune
acce0808ce
Project code in URL for the "Add Slack" page. cc: #336 2020-02-25 14:22:34 +02:00
Pēteris Caune
0ff4bd01e0
Improved UI to invite users from account's other projects. Fixes #258.
The team size limit is applied to the number of distinct users across all projects. Fixes #332.
2020-02-14 13:05:21 +02:00
Pēteris Caune
15b9611c5a
Show a warning in project's top navigation if the project has no configured integrations. Fixes #327 2020-02-13 10:29:01 +02:00
Pēteris Caune
f51a0a257e
Don't delete customer data in braintree when closing account.
Need customer data to stay in braintree until the end of each month for tax reports.
2020-02-03 11:11:21 +02:00
Pēteris Caune
c4edb415a2
Removing debug statement. 2020-01-07 11:47:53 +02:00
Pēteris Caune
012ad88bb3
createsuperuser management command requires an unique email address (#318) 2020-01-07 11:46:50 +02:00
Pēteris Caune
4ee2646539
Show a red "!" in project's top navigation if any integration is not working 2020-01-03 13:15:24 +02:00
Pēteris Caune
0d2c6217d3
Auto-submit the unsubscribe confirmation form only if signature is more than 5 minutes old. Idea from https://stackoverflow.com/questions/59281750/strategies-to-prevent-email-scanners-from-activating-unsubscribe-links/59381066#59381066 2019-12-18 16:10:30 +02:00
Pēteris Caune
d6be955fa7
Silence stdout output from management commands during tests 2019-12-11 15:35:23 +02:00
Pēteris Caune
15ba415298
senddeletionnotices command skips profiles with recent last_active_date 2019-12-11 15:24:51 +02:00
Pēteris Caune
2a8e7ee766
Django 3.0 2019-12-11 13:05:25 +02:00
Pēteris Caune
f7496fb8cf
Add List-Unsubscribe-Post email header 2019-12-10 09:44:51 +02:00
Pēteris Caune
8d81d27af3
Unsubscribe links serve a form, and require HTTP POST to actually unsubscribe 2019-12-10 09:14:54 +02:00
Pēteris Caune
f9c61dad23
Fix List-Unsubscribe email header value: add angle brackets 2019-12-09 14:04:14 +02:00
Pēteris Caune
1cdb6e6d1d
Don't set CSRF cookie on first visit. Signup is exempt from CSRF protection. 2019-12-06 08:58:32 +02:00
Pēteris Caune
f74860bc0c
Add Profile.last_active_date field for more accurate inactive user detection 2019-11-19 16:29:38 +02:00
Pēteris Caune
7db11fa7aa
Fix the senddeletionnotices command to take into account the new default SMS limit. 2019-10-30 22:12:25 +02:00
Pēteris Caune
c13ec18a27
5 SMS & WhatsApp sends/mo for free plans 2019-10-30 18:31:10 +02:00
Pēteris Caune
66a6de70c0
Send email notification when monthly SMS sending limit is reached. Fixes #292 2019-10-18 17:15:02 +03:00
Pēteris Caune
163b020116
Signup form sets the "auto-login" cookie to avoid an extra click during first login 2019-10-12 20:14:57 +03:00
Pēteris Caune
2bb769f7bb
Send monthly reports on 1st of every month, not randomly during the month 2019-10-12 20:07:09 +03:00
Pēteris Caune
391921d8af
Revert deterministic username generation feature – it causes problems when users change their email address. See #290 for details. 2019-10-12 11:37:06 +03:00
Pēteris Caune
41a0871452
Generate usernames as uuid3(const, email). Prevents multiple accts with the same email. Prevent double-clicking the submit button in signup form. Fixes #290 2019-09-30 16:40:45 +03:00
Pēteris Caune
93507fcc47
Cleanup in report-body-html.html.
Add a "Send Nag" admin command for easier testing.
2019-09-03 09:24:56 +03:00
Pēteris Caune
dfee69584b
Don't show the "Sign Up" link in the login page if registration is closed. Fixes #280 2019-08-26 10:55:41 +03:00
Pēteris Caune
2489f86b38
Delete customer from Braintree when closing account. 2019-08-19 11:47:36 +03:00
Pēteris Caune
b74e56a273
Experimental: show the number of outages and total downtime in monthly reports. (#104) 2019-07-19 17:32:39 +03:00
Pēteris Caune
8f6726d1ee
Prevent email clients from opening the one-time login links. Fixes #255 2019-05-21 11:26:55 +03:00
Pēteris Caune
cdfc9840a7
Source formatted with Black 2019-05-15 14:27:50 +03:00
Pēteris Caune
b528b23996
Fix badges for tags containing special characters. Fixes #240, #237 2019-05-14 14:43:43 +03:00
Pēteris Caune
23b197526c
Password strength meter and length check in the "Set Password" form 2019-04-29 23:16:49 +03:00
Pēteris Caune
afaa8767cd
Rate limit login-with-password attempts. 2019-04-26 15:51:10 +03:00