analytics/test/support
hq1 f755b20569
Lock traffic notifications (#3641)
* Update communication

* Remove an unreachable function (mistyped)

* [migration] Make accept_traffic_until a date

* Fix typo

* Set `accept_traffic_until` when creating a site

* Update sites `accept_traffic_until` on subscription change

* Add a note to yearly cancellation notification

* Rephrase annual e-mail for clarity

* Pass the small build test

* Add email notifications

* Fixup

* Implement `accept_traffic_until` notification worker

* Fixup - no need to test this for small build

* Update moduledoc

* Move moduletag

* s/sent_at/sent_on

* Use WHERE NOT EXISTS instead of LEFT JOIN

* Use upsert when tracking notifications sent

* Store sent marker before actually sending notification

* Prefer to keep `accept_traffic_until` on the user record

This gives us a single source of truth, addresses cases like
ownership transparently, simplifies the code and enables CRM toggles.
The only downside is that there's another join performed in the
Sites.Cache full refresh - in this case, small refreshes are
skipped - but this is fine, since the traffic will be let in
anyway.

* Expose `accepted_traffic_until` in the CRM

* Update lib/plausible/auth/user.ex

Co-authored-by: Adrian Gruntkowski <adrian.gruntkowski@gmail.com>

* Preload owner in CRM

* Use the offset parameter in trial over e-mail contents

* Format

* Harden cache test

---------

Co-authored-by: Adrian Gruntkowski <adrian.gruntkowski@gmail.com>
2023-12-28 08:42:27 +01:00
..
conn_case.ex Implement UI for 2FA setup and verification (#3541) 2023-12-06 12:01:19 +01:00
data_case.ex Google APIs integration improvements (#2358) 2022-10-24 09:34:02 +02:00
exchange_rate_mock.ex Revenue tracking: Add currency field to goal creation (#2948) 2023-05-23 12:08:09 +02:00
factory.ex Fix domains that start with UTF character (#3560) 2023-12-04 14:22:17 +02:00
google_api_mock.ex Referrer drilldown (#252) 2020-07-30 11:18:28 +03:00
html.ex Add small build option (#3536) 2023-11-20 12:52:20 +01:00
http_mocker.ex Upgrade Erlang/Elixir stack (#3454) 2023-10-24 10:33:48 +02:00
paddle_api_mock.ex Fix upgrade page for legacy trials + bug fixes (#3486) 2023-11-06 14:01:55 +00:00
plugins_api_case.ex Plugins API: 2nd pass with Goals resource + SharedLinks schema changes (#3396) 2023-10-05 11:54:18 +02:00
test_utils.ex Lock traffic notifications (#3641) 2023-12-28 08:42:27 +01:00