0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-01-27 22:49:56 -05:00
ghost/test/regression/api/admin
Simon Backx 6b3a657f88
Renamed newsletter_id and email_recipient_filter options (#14798)
refs https://github.com/TryGhost/Team/issues/1596

- Renamed `newsletter_id` to `newsletter` option, the `newsletter` option expects a slug instead of an id
- Renamed `email_recipient_filter` to `email_segment` option
- Default `email_segment` to `all`. Ignored if no newsletter is set
- `email_segment` is ignored if no newsletter is set
- When reverting a post to a draft, both `newsletter` and `email_segment` are reset to their default values (null, all)
- Removed legacy mapping from old email_recipient_filter values 'paid' and 'free' (already a migration in place)
- Dropped legacy throwing errors when email_recipient_filter is paid or free in transformEmailRecipientFilter
- Reorganized transformEmailRecipientFilter parameters for the now required newsletter parameter
- Fixed an issue where the newsletter filter wasn't working because it wasn't in permittedoptions
- Fixed an issue where you could send to an archived newsletter
- Added an extra protection when scheduling to an active, and later archiving the newsletter
- Dropped support for `send_email_when_published` in API
- When importing posts we currently don't have a system in place to set the newsletter_id to map the `send_email_when_published` behaviour. Since this was already the case, I won't include a fix in this PR.
- Stripped `email_recipient_filter`/`email_segment` from Content API (https://ghost.slack.com/archives/C02G9E68C/p1652363211841359?thread_ts=1650623650.233229&cid=C02G9E68C)
- Updated `admin-api-schema` to 3.2.0, which includes the new email_segment property
- Contains a temporary fix for https://github.com/TryGhost/Team/issues/1626, where the `.related('newsletter').fetch` call fails when the newsletter relation is already loaded, because of the overridden `formatOnWrite` method.

Since the `email_recipient_filter` is no longer used without a newsletter, the `none` value is no longer used. A migration transforms all those values to `all`. This should be safe, because we only send an email now when newsletter_id is not null (scheduled posts should already have a newsletter_id, even if at the time of scheduling they didn't add the newsletter_id option, because at that time, we defaulted to the default newsletter).

Admin changes to make this work: https://github.com/TryGhost/Admin/pull/2380
2022-05-16 10:18:04 +02:00
..
__snapshots__ Update dependency @tryghost/mw-error-handler to v1 (#14719) 2022-05-07 15:28:28 +01:00
authentication.test.js Renamed reset_all_passwords Authentication API endpoint to /global_password_reset 2022-04-28 15:37:11 +01:00
db.test.js Aliased canary endpoints to point to non-versioned URLs 2022-03-14 21:22:54 +13:00
identities.test.js
images.test.js
members-importer.test.js Updated all members tests to use mockManager 2022-02-10 12:21:05 +00:00
members-signin-url.test.js Fixed filename casing in canary API 2022-03-24 17:25:53 +00:00
notifications.test.js
pages.test.js
posts.test.js Renamed newsletter_id and email_recipient_filter options (#14798) 2022-05-16 10:18:04 +02:00
redirects.test.js
schedules.test.js Cleaned up schedules test suite from author_id field 2022-05-09 20:43:19 +08:00
settings.test.js Removed GET settings/:key route 2022-05-13 23:18:53 +01:00
slack.test.js
update-user-last-seen.test.js Fixed last_seen updated for suspended users (#14715) 2022-05-10 13:34:12 +02:00
users.test.js Update dependency @tryghost/mw-error-handler to v1 (#14719) 2022-05-07 15:28:28 +01:00
utils.js Renamed newsletter_id and email_recipient_filter options (#14798) 2022-05-16 10:18:04 +02:00
webhooks.test.js Aliased canary endpoints to point to non-versioned URLs 2022-03-14 21:22:54 +13:00