Commit Graph

18675 Commits

Author SHA1 Message Date
renovate[bot]
1a44d8106b Update sentry-javascript monorepo to v7.65.0 2023-08-28 19:06:53 +01:00
Fabien 'egg' O'Carroll
7c934ebf46
Enabled collection param for Post APIs
This will allow us to browse posts based on their collection which will
be used for rendering the collections card. As with the Collections API
we're not opening up the write endpoints yet.
2023-08-28 07:34:58 +00:00
Fabien 'egg' O'Carroll
c1a9f2d6a6
Enabled RO Collections Admin API
The future work around collections requires the read only portions
of the Collections Admin API to be enabled without a flag.

The write endpoints are only for custom collections which aren't required.
2023-08-28 06:49:09 +00:00
Fabien "egg" O'Carroll
3960bfac1d Enabled Collection background syncing
refs https://github.com/TryGhost/Arch/issues/73

Since we've fixed the issues which were executing performance affecting DB
queries, we can enable the background syncing of collections again. This couple
with a new migration to populate the default collections will allow us to start
work on the collections card and will make rolling that card out to GA smoother
and easier as all the required data will be in place.
2023-08-28 13:36:22 +07:00
Ghost CI
b545f234b2 v5.60.0 2023-08-25 15:03:14 +00:00
Ghost CI
24ee0bc740 🎨 Updated Casper to v5.7.0 2023-08-25 15:03:14 +00:00
Steve Larson
e15b9eb891
Bumped Koenig packages (#17826)
no refs
- contains various fixes and improvements to the beta editor
2023-08-24 22:12:38 +00:00
Fabien 'egg' O'Carroll
44ae0dcbe1
Added rudimentary tests for Collections DB queries (#17820)
refs https://github.com/TryGhost/Arch/issues/73

This is just an initial stab at making sure we don't introduce extra DB
queries related to collections without being aware of it.
2023-08-24 13:08:36 +00:00
Simon Backx
08e436c4f3 Bumped comments-ui to v0.13
no issue

- Use comments-ui v0.13
- Removed styles option from comments (no longer used starting from v0.13)
2023-08-24 11:05:19 +02:00
Simon Backx
e9703f6a15
Extended translations beta to comments (#17801)
refs https://github.com/TryGhost/Product/issues/3504
2023-08-24 10:33:03 +02:00
Naz
46f8c15448 Fixed flaky test behavior for bulk actions
refs https://ghost.slack.com/archives/C02G9E68C/p1692816097875899

- With introduction of extra e2e test coverage for Collections some tests started to fail at random. The root issue here was the transaction processing collections was started before the original bulk action (bulk edit, bulk publish/unpublish, etc.) was fully committed. The full transaction commit happens with the bulkAction method return inside of `if (!options.transacting) {` block.
2023-08-24 16:06:41 +08:00
Chris Raible
08d6425a53
Bumped Koenig packages (#17809)
no issue
    
    - @tryghost/kg-converters@0.0.9 > 0.0.12
    - @tryghost/kg-default-nodes@0.1.20 > 0.1.23
    - @tryghost/kg-lexical-html-renderer@0.3.16 > 0.3.19
2023-08-23 14:20:52 -07:00
Sodbileg Gansukh
1a2fa55c1e Fixed product card image overflow in Gmail
no issues

- product card images have explicit width/height attributes, and when the width value is large (e.g. 2560), it causes an overflow on Gmail on Android
- the reason why there's no issue on other email clients is that Gmail on Android has autofit feature which makes the email width fit inside the screen automatically, and it made the email width very narrow when the product card image width isn't responsive
- this fix makes the product card image width responsive by explicitly setting it 100%
2023-08-23 22:02:54 +08:00
Simon Backx
375a6d37c2
Added support for i18n in comments-ui (#17797)
refs https://github.com/TryGhost/Product/issues/3504

- This adds support for translations, but doesn't yet translate every
possible string in the app.
- Only active if beta translations is enabled
2023-08-23 13:57:37 +00:00
Simon Backx
9aa3b7e46f Updated Sinhalese language
no issue

Due an unknown issue in i18n-parser, \u200d characters are added in sentences. Couldn't find a way to avoid this. This character should be invisible.
2023-08-23 15:11:41 +02:00
Simon Backx
4f604af744 🐛 Fixed translations with spaces missing in signup-form
refs https://ghost.slack.com/archives/C02G9E68C/p1692784819620269
refs https://github.com/TryGhost/Product/issues/3504

- Somehow, when using i18n in TypeScript, the require will put some of the keys into 'default' and not into the root. Mainly all keys that have a space in them. Couldn't find any documentation about this
- The solution is to also add 'default' to the keys that are being used in the code

This change also fixes the translate script (wasn't updated for updated paths), includes the missing translations, and already adds comments to lookup translation strings
2023-08-23 15:11:41 +02:00
Naz
437a080580 Added test coverage for collection update on tag removal
refs https://github.com/TryGhost/Arch/issues/77

- We were missing e2e test coverage for when the tag used in collection filters was removed. This changeset improves the situation.
2023-08-23 20:44:08 +08:00
Martijn Burger
50147c6a67
Updated Dutch translations (#17622)
refs https://github.com/TryGhost/Team/issues/2795
2023-08-23 13:29:01 +02:00
Djordje Vlaisavljevic
76adef7d9e
Fixed issue with list borders (#17792)
no refs

- Removed unnecessary `border-bottom` on list header and `border-top:
none` that was added to avoid double borders
2023-08-23 11:36:45 +01:00
Fabien "egg" O'Carroll
288859fc95 Bumbed express-hbs and fixed inline async helpers
refs ce088f06ff

TL;DR This makes {{asyncHelper "foo"}} usage more stable.

See the linked commit for details on the fix.
2023-08-23 17:35:35 +07:00
Naz
acccc16614 Added collections update after bulk adding tags
refs https://github.com/TryGhost/Arch/issues/77

- During initial development we have missed to support collections update when tags are added to posts in bulk. It's especially valid usecase since we can define automatic collection with a filter containing not yet existing tags.
2023-08-23 17:12:08 +08:00
Fabien "egg" O'Carroll
62d5ca558d Validated filters for collections
refs https://github.com/TryGhost/Arch/issues/47

This ensures that we only have collections which have a valid filter in terms of
  - Valid NQL string
  - Uses only properties which are valid to filter on
  - Only has an empty filter in the case of the "latest" collection
2023-08-23 15:49:06 +07:00
Fabien "egg" O'Carroll
c98bf80248 Removed invalid entities from results
refs https://github.com/TryGhost/Arch/issues/47

This change allows us to throw errors when instantiating invalid entities,
whilst not breaking things when we have bad data in the database. What we can
do is act as if the bad rows are not present, whilst surfacing an error in
sentry to alert us to such cases.
2023-08-23 15:49:06 +07:00
Fabien "egg" O'Carroll
27bfa30f97 Handled our forced null conversion in bookshelf
refs https://github.com/TryGhost/Arch/issues/47

We've configured bookshelf to force empty strings to null, but this is
undesired behaviour here, so unfortunately we have to leak some business
logic into the repository.

This needs to be done to correctly support our filter validation logic.
2023-08-23 15:49:06 +07:00
renovate[bot]
2159b4fb30 Update dependency luxon to v3.4.1 2023-08-22 22:47:51 +01:00
renovate[bot]
8f780ba763 Update dependency html-validate to v8.3.0 2023-08-22 17:40:25 +01:00
Ghost CI
cebe8d7db6 Merged v5.59.4 into main 2023-08-22 11:46:13 +00:00
Ghost CI
5f2b5d9d11 v5.59.4 2023-08-22 11:46:11 +00:00
Simon Backx
a011151e24
🐛 Fixed handling multiple Stripe subscriptions for same member (#17773)
fixes https://github.com/TryGhost/Product/issues/3752

- Added some extra tests for edge cases
- Updated handling of multiple subscriptions so they are handled better
- Canceling a subscription when the member still has other subscriptions will now get handled correctly where the status and products of the member stay intact
2023-08-22 13:27:21 +02:00
Naz
df3aaed3c8 Added test coverage for collection updates
refs https://github.com/TryGhost/Arch/issues/77

- The test covers collection updates on post resource add/edit/delete operations
2023-08-22 17:16:35 +08:00
Naz
e638d72e70 Refactored collections e2e Admin API test suite
refs https://github.com/TryGhost/Arch/issues/71

- With describe/it block levels mixed on the top level of the test suite the order fo test execution was scattered around. Having "describe" groups for each of the BREAD methods makes things more organized and readable.
2023-08-22 17:16:35 +08:00
Ghost CI
a0efe7a864 Merged v5.59.3 into main 2023-08-21 21:27:36 +00:00
Ghost CI
808ea02e45 v5.59.3 2023-08-21 21:27:34 +00:00
Steve Larson
37508a1b77 🐛 Fixed markdown card toolbar styles in mobiledoc editor
no refs
-toolbar styles were broken by upgrading kg-simplemde
-reverted kg-simplemde to v1 as v2+ is intended for lexical editor
2023-08-21 10:17:33 -05:00
Steve Larson
66da501125
🐛 Fixed markdown card toolbar styles in mobiledoc editor
no refs
-toolbar styles were broken by upgrading kg-simplemde
-reverted kg-simplemde to v1 as v2+ is intended for lexical editor
2023-08-21 14:53:50 +00:00
Fabien "egg" O'Carroll
a343f39559 Handled sort_order updates for Collections
refs https://github.com/TryGhost/Arch/issues/73

With the latest version of bookshelf-relations we're able to define a model
specific hook which allows us to ignore sort_order updates on automatic
collections, which don't require their order to be persisted.
2023-08-21 12:16:32 +01:00
Michael Barrett
0ea5f9228d
Added custom theme setting visibility (#17763)
refs https://github.com/TryGhost/Product/issues/3716
2023-08-21 11:26:51 +01:00
Ghost CI
d0c95a37e1 v5.59.2 2023-08-18 15:03:06 +00:00
Michael Barrett
3a95caf48f
Implement member import with tier (#17506)
refs https://github.com/TryGhost/Product/issues/3629
2023-08-18 15:24:31 +01:00
Fabien "egg" O'Carroll
ad62cd4822 Removed edit method from Collection
We want to keep Entities as basic as possible, particularly when setting
property, so that each property can handle its own validation.
2023-08-17 09:45:41 +01:00
renovate[bot]
bddde8ff3d Update dependency ember-keyboard to v8.2.1 2023-08-17 09:10:44 +02:00
Jono M
f1266c6b9f
Wired up Zapier integration in AdminX (#17737)
refs https://github.com/TryGhost/Product/issues/3729
2023-08-16 18:59:31 +01:00
Simon Backx
b587429008
🐛 Fixed importing offers when importing members from Stripe (#17739)
fixes https://github.com/TryGhost/Product/issues/3728

- When importing members from Stripe with an existing offer, that didn't
exist in Ghost, the offer never got linked with the imported
subscription because of a missing return statement.
- Fixes importing offers with duplicate names
- Added E2E tests for creating members from a Stripe Customer ID
2023-08-16 13:25:57 +00:00
Shaun Roselt
3e683c2f06
Added Japanese to list of supported languages (#17724)
fixes https://github.com/TryGhost/Ghost/issues/17715

- `ja` was missing from the list of supported locales
- also fixes some small typos discovered now the language is supported

Co-authored-by: Daniel Lockyer <hi@daniellockyer.com>
2023-08-16 09:44:01 +00:00
Naz
49a4a60d82 Fixed posts Content API test run in isolation
closes https://github.com/TryGhost/Arch/issues/76

- The posts test suite was failing when run in isolation. This was due to "collections" labs flag not being turned on, the events were not going through to collections service correctly
2023-08-16 16:07:01 +08:00
renovate[bot]
e1d92d642a Update dependency postcss to v8.4.28 2023-08-16 06:08:42 +02:00
renovate[bot]
c9d687db60 Update dependency i18next-parser to v8.6.0 2023-08-16 06:08:27 +02:00
Steve Larson
fecd326510
📦 Updated koenig dependencies (#17728)
no refs
-contains multiple bug fixes and improvements
2023-08-15 11:38:41 -05:00
Simon Backx
13b732f905
Added Playwright tests for donations (#17699)
fixes https://github.com/TryGhost/Product/issues/3723

This also fixes usage of localhost instead of 127.0.0.1 as a test URL
for playwright. This caused issues for cookies because the member
impersonation navigated to 127.0.0.1 instead of localhost, meaning that
the next page.goto call would go to localhost and lose the cookies.
2023-08-15 15:20:18 +02:00
Ronald Langeveld
a7530720b4
🐛 Fixed Unsplash integration toggle in Koenig editor (#17725)
no issue

- since Unsplash can be toggled on / off in integrations, we need to
pass that to the Koenig-Lexical editor as well.
2023-08-15 14:59:26 +02:00
Daniel Lockyer
6a721d4dab
Merged v5.59.1 into main 2023-08-15 13:31:54 +02:00
Ghost CI
e8836652cc v5.59.1 2023-08-15 11:22:18 +00:00
Simon Backx
690fbf3f73
🔒 Fixed arbitrary file read via symlinks in content import
refs https://github.com/TryGhost/Product/issues/3726
refs https://github.com/TryGhost/Ghost/security/advisories/GHSA-9c9v-w225-v5rg

- credits to https://github.com/ixSly
2023-08-15 13:01:11 +02:00
renovate[bot]
bed89b7bec Update sentry-javascript monorepo to v7.64.0 2023-08-15 12:17:01 +02:00
Ronald Langeveld
09bcc1f31a
Updated comment (#17718)
no issue

- added some more info to the comment
- found the actual issue that needed the admin p0 fix last night.
Updated the comment info block with a link to that issue.


<!-- Leave the line below if you'd like GitHub Copilot to generate a
summary from your commit -->
<!--
copilot:summary
-->
### <samp>🤖 Generated by Copilot at bcec294</samp>

Updated a comment in `members.js` to link to a possible NQL issue. This
helps explain the temporary fix for filtering members by labels with
parentheses.
2023-08-15 08:45:09 +00:00
Ronald Langeveld
6694456685
🐛 Fixed newsletter filters not working in bulk operations (#17714)
refs https://ghost.slack.com/archives/CTH5NDJMS/p1692021848890629

- Addresses an NQL / API edge case where standalone filters with
parentheses doesn't get handled correctly within bulk operations such as
member labelling, member unsubscribe and member deletion.
- This is currently only affected by newsletter related filters.
- This adds a regex functions that checks when those filters are used
and removes the parentheses when required.
- Ideally we fix the NQL / API issue in the near future and remove this
regex hack altogether, but taking all things into consideration, this
should mitigate the risk of potential data-loss for Ghost users.
2023-08-15 08:19:02 +02:00
Ronald Langeveld
e0ab167b94
🐛 Fixed newsletter filters not working in bulk operations (#17714)
refs https://ghost.slack.com/archives/CTH5NDJMS/p1692021848890629

- Addresses an NQL / API edge case where standalone filters with
parentheses doesn't get handled correctly within bulk operations such as
member labelling, member unsubscribe and member deletion.
- This is currently only affected by newsletter related filters.
- This adds a regex functions that checks when those filters are used
and removes the parentheses when required.
- Ideally we fix the NQL / API issue in the near future and remove this
regex hack altogether, but taking all things into consideration, this
should mitigate the risk of potential data-loss for Ghost users.
2023-08-15 06:35:51 +02:00
Sag
a045e7e50b
Added a preview link in Admin for Tips & Donations (#17711)
closes https://github.com/TryGhost/Product/issues/3724
2023-08-14 13:33:38 +00:00
Peter Zimon
9bfbd5b3b9
History log in AdminX (#17666)
refs. https://github.com/TryGhost/Product/issues/3710

---------

Co-authored-by: Jono Mingard <reason.koan@gmail.com>
2023-08-14 12:11:53 +00:00
renovate[bot]
8dc4923041 Update babel monorepo to v7.22.10 2023-08-14 12:06:20 +02:00
Sodbileg Gansukh
1b046426ae Adjusted scaling of the browser preview 2023-08-14 17:00:04 +08:00
Zabriskije
255466ec12
Updated Italian translations (#17478)
refs https://github.com/TryGhost/Team/issues/2795
2023-08-14 10:13:43 +02:00
Ghost CI
f26158b26b v5.59.0 2023-08-11 15:14:28 +00:00
Kevin Ansfield
ff3b936a0a
Added Sentry reporting for slow editor saves (#17698)
closes https://github.com/TryGhost/Product/issues/3719

- adds Sentry reporting for slow saves in the editor to help investigate reports of a similar nature
  - uses different messages for lexical vs mobiledoc and successful vs failed saves so we can compare frequency of each in the Sentry UI
  - includes `save_time` tag so we can see a breakdown of timings and adjust the threshold if necessary
  - includes `post_type` tag which will be useful as we introduce further differences between the features and rendering cycle of posts and pages
  - includes `newsletter` and `email_segment` tags to help indicate if slow saves are due to email sending
  - includes `save_revision` tag to help indicate if forced revision saves cause slow saves
  - includes `convert_to_lexical` tag to help indicate if mobiledoc/lexical conversion is causing slow saves
2023-08-11 15:00:26 +00:00
Djordje Vlaisavljevic
99761242da
Improved how Stripe connect buttons are shown (#17697)
refs https://github.com/TryGhost/Product/issues/3666

- Improves the way Connect with Stripe buttons are shown in Membership settings
2023-08-11 15:56:23 +01:00
Sam Lord
b2fb38ea52 Fixed case where reseting cache on a test retry could fail build
no issue
2023-08-11 15:12:15 +01:00
Sag
37bf804cf5
Updated copy of error messages for Tips & Donations suggested amount (#17696)
refs https://github.com/TryGhost/Product/issues/3695
2023-08-11 14:11:04 +00:00
Kevin Ansfield
1ebdac3997
🐛 Fixed missing @page object in themes when rendering custom routed page (#17693)
closes https://github.com/TryGhost/Ghost/issues/17681

- updated `prepareContextResource()` to make sure `show_title_and_feature_image` is always removed from pages
- updated `formatResponse.entries()` to apply the same `@page` local behaviour when it's passed a `data.page` object to account for custom routed pages
2023-08-11 14:50:01 +01:00
Sag
6c481b74a9
Added an upper limit to Tips & Donations suggested amount (#17695)
refs https://github.com/TryGhost/Product/issues/3695

- also updated the "minimumAmountPerCurrency" helper to return a
standard price (not in cents), to keep the code more readable
2023-08-11 13:09:42 +00:00
Simon Backx
e14df6479b
Added E2E tests for donations API (#17694)
fixes https://github.com/TryGhost/Product/issues/3722
2023-08-11 14:25:53 +02:00
Thossinn
38c1fbea40
Added Icelandic translations (#17688)
refs https://github.com/TryGhost/Product/issues/2795
2023-08-11 14:16:47 +02:00
renovate[bot]
1a59377d01 Update dependency lib0 to v0.2.80 2023-08-11 13:57:56 +02:00
Ezcoo
a5478de8d1
Add Finnish translations to signup-form.json (#17628)
refs https://github.com/TryGhost/Team/issues/2795
2023-08-11 13:34:08 +02:00
Sunghyun Cho
0cc179e80f
Updated Korean translations (#17563)
refs https://github.com/TryGhost/Team/issues/2795
2023-08-11 13:33:29 +02:00
Yovko Lambrev
276fba7847
Updated Bulgarian translations (#17533)
refs https://github.com/TryGhost/Team/issues/2795
2023-08-11 13:06:10 +02:00
Aileen Nowak
c23480030f Convert getIframeUrl to a getter and inject as source into iframe component 2023-08-11 10:47:47 +01:00
Aileen Nowak
00db25e314 Revert back to use did-insert hook 2023-08-11 10:47:47 +01:00
Aileen Nowak
d2ab69aeb6 Fixed linting issues 2023-08-11 10:47:47 +01:00
Aileen Nowak
ec14f78ba3 Removed usage of did-insert hook and simplified openExploreWindow method
- We don't actually utilise the history handling for Explore, as it's not a full screen modal and therefore don't need passing in previous routes before opening the iframe
- Removed usage of `did-insert` livecycle hook and reverted to usage of `contructor` and `willDestroy` instead to add and remove message event listener
2023-08-11 10:47:47 +01:00
Aileen Nowak
a72dfdddb7 Prevented Explore iframe to be loading before needed
no issue

- We were loading the Explore iframe together with all assets in Admin
- This change will avoid that and only start loading and rendering Explore, once it's clicked
2023-08-11 10:47:47 +01:00
Naz
92fb2a54ae Fixed non-deretministic post ordering in content gating test suite
refs https://github.com/TryGhost/Ghost/pull/17609

- The tests for content gating started to fail with introduction of the index on `published_at` data in for `posts` table. The reason for the failure was identical `published_at` date set during the fixture insertion, making the returned results change order non-deterministically. The problem is mostly in how the test is set up as it's quite unrealistic to have multiple posts in the system inserted at the same time down to millisecond. Maybe... by some coincidence, but thats not a problem we should care too much about imo.
2023-08-11 17:31:13 +08:00
Naz
d068409fac Added index on posts table for published_at column
refs https://github.com/TryGhost/Arch/issues/18

- The prev/next helpers are slow and are causing major performance issues. The helpers are using `posts.published_at` for comparisons extensively, which causes a full table scan - bad for query performance.
- We use published_at in other queries too (like default order for queries fetching all posts), so there  might be a slight performance boost across the system with this new index.
2023-08-11 17:31:13 +08:00
Naz
5ab81554fc Removed synthetic timestamp-based cache resets
refs https://github.com/TryGhost/Arch/issues/5

- Current event-aware cache wrapper has been using a timestamp as a way to create keys in Redis cache and reset them all at once. We are now moving on to the updated Redis adapter that supports "reset()" natively, so there's no need for synthetic resets.
2023-08-11 17:13:47 +08:00
renovate[bot]
9f2fac34ad Update sentry-javascript monorepo to v7.63.0 2023-08-11 09:27:14 +02:00
renovate[bot]
db68531a22 Update dependency ember-css-transitions to v4.4.0 2023-08-11 09:25:49 +02:00
renovate[bot]
4d6e52b28c Update dependency @playwright/test to v1.37.0 2023-08-11 08:53:10 +02:00
Sodbileg Gansukh
2a8c09e3d4
Fixed enormous site icon issue in Outlook (#17672)
refs https://github.com/TryGhost/Product/issues/3704

- the site icon has sizes defined in CSS and it works great for most
browsers
- but it becomes very large in Outlook and it requires explicit sizes in
the image markup for some reason
2023-08-10 17:26:55 -07:00
Djordje Vlaisavljevic
e534e2ee2e
Updated Tips&Donations email design (#17684)
refs https://github.com/TryGhost/Product/issues/3693

- Updated Tips&Donations email subject
- Made member's name bolder
2023-08-10 20:24:42 +01:00
Djordje Vlaisavljevic
aeff42811c
Updated tips & donations settings and email notification design (#17679)
refs https://github.com/TryGhost/Product/issues/3693, https://github.com/TryGhost/Product/issues/3666

- Updated Tips&Donations email notification design to put focus onto the
amount
- Removed unnecessary gap between Free and Premium tiers in Membership
settings
- Improved the copy to better explain the feature
2023-08-10 18:35:42 +01:00
Michael Barrett
733135d3ff
🐛 Fixed incorrect newsletter subscriber count on dashboard (#17683)
fixes https://github.com/TryGhost/Product/issues/3714

The dashboard was showing the total number of subscribers, but not
taking into account members who have disabled emails. This commit fixes
that.
2023-08-10 18:18:12 +01:00
Kevin Ansfield
f983e93090
🐛 Fixed overly small file drop area in beta editor (#17682)
closes https://github.com/TryGhost/Product/issues/3449

- added drop handler to the whole editor pane area (to match previous editor) that uses the external API plugin to pass files through to the editor when dropped
- allows images/files to be dropped outside of the main editor canvas which is especially helpful when creating images in a new post
2023-08-10 16:36:06 +00:00
Naz
05a4d2cc79 Added error handling for cache reset function
Makes sure the Ghost process does not blow up in case there's an error in
communication with Redis
2023-08-10 17:17:29 +01:00
Joe Grigg
b84ed78078 Added a reset method to the redis cache adapter
This allows us to reset cache rather than having to wait for the TTL period.
2023-08-10 17:17:29 +01:00
Joe Grigg
a50ef81148 Added a method to get all raw keys in the redis cache adapter
This allows for easy access to the raw, unprocessed, keys that a site has
stored in the cache. These include all key prefixes.
2023-08-10 17:17:29 +01:00
Joe Grigg
ed38760c6d Added support for non cluster connections in the redis cache adapter
Previously, the adapter was only built for a redis cluster connection. Meaning
if you tried to use if with a redis that was a single node it would fail as it
tries to find a primary node. In a single node setup there is no primary node,
just the one main node. So, this update tricks the adapter into thinking it has
found a pimary node by returning the whole connection (to the single node) when
the constructor is note a cluster.
2023-08-10 17:17:29 +01:00
Sag
67426d5c35
Added a separate error flow for when Tips & Donations are disabled (#17625)
refs https://github.com/TryGhost/Product/issues/3686
2023-08-10 17:32:44 +02:00
Sag
4ace11a441
Added logic to load Portal when Tips & Donations are enabled (#17659)
closes https://github.com/TryGhost/Product/issues/3661

- until now, Portal was not loaded if members were disabled. With the
introduction of Tips & Donations, signed-off readers can also make
payments, using the Portal link /#/portal/support.
- now, Portal is loaded when Tips & Donations are enabled, even if
Memberships are disabled
- depending on the member signup access, the top bar / trigger button
Portal buttons are hidden as before (signup/subscribe hidden if access is set to none, subscribe hidden if
access is set to invite-only)
- for any other signup / signin Portal links (e.g., added by the theme,
or added via a Post/Page), a new popup informs the reader when
Memberships are disabled: "Memberships unavailable, contact the site
owner for access".
2023-08-10 15:45:02 +02:00
Steve Larson
8273671425
Updated bookmark card renderer (#17662)
refs https://github.com/TryGhost/Product/issues/3609
-reverted css changes
-reverted mobiledoc renderer
-made lexical renderer consistent with mobiledoc
-css classes were inverted for theme backwards compatibility
2023-08-10 13:41:59 +00:00
Simon Backx
a407129546
Added memberdata to donation emails (#17676)
no issue
2023-08-10 14:21:29 +02:00
Sag
02f4f11e7c
Reverted Offer links to absolute URLs (#17675)
refs https://github.com/TryGhost/Product/issues/3687

- We're not sure that relative URLs for Offers will work in production,
even though they seem to work locally. Reverting for now.
2023-08-10 12:14:11 +00:00
Sodbileg Gansukh
6a1906b14e Improved mobile styles of the header card email 2023-08-10 20:07:41 +08:00
Michael Barrett
8d0eed2dcd
🐛 Fixed member filter by single newsletter subscription (#17668)
fixes https://github.com/TryGhost/Product/issues/3708

When filtering members by the `Newsletter subscription` parameter, If
the site has a single newsletter, members with disabled emails were
being erroneously returned. This fixes that 👍
2023-08-10 12:59:14 +01:00
Shaun Roselt
1d20877a12
Updated Afrikaans translations in signup-form.json (#17581)
no issue

- Added Afrikaans translations for the signup form. This enhances the localisation of Ghost for Afrikaans users.

Co-authored-by: Ronald Langeveld <hi@ronaldlangeveld.com>
2023-08-10 13:27:39 +02:00
Sag
731773602c
Added relative URLs for Portal links in Button, Header, Email CTA url suggestions (#17669)
refs https://github.com/TryGhost/Product/issues/3687

- Today, in Button, Header, Email CTA cards, Portal links are used as
absolute URLs to the root, e.g. https://mysite.com/#/portal/signin. When
clicking on a Portal link, the reader is redirect to the homepage first,
loosing context of the post.
- With this change, the UX becomes smoother: clicking on a Portal link
keeps the reader in context, and open the Portal link on the same post
e.g., https://mysite.com/POST_URL/#/portal/signin
- Technically, this works by using relative URLs for Portal links.
Relative URLs work out of the box for web, but required changes on the
email side, cf. https://github.com/TryGhost/Ghost/pull/17630
2023-08-10 09:23:31 +00:00
Ronald Langeveld
04ce1154a1
Added new enhanced Header Card (#17654)
no issue

- Keep an eye on Ghost's changelog (https://ghost.org/changelog/) for
the full feature announcement. 🎉

---

<!-- Leave the line below if you'd like GitHub Copilot to generate a
summary from your commit -->
<!--
copilot:summary
-->
### <samp>🤖 Generated by Copilot at 8367091</samp>

This pull request removes the `headerUpgrade` feature flag and enables
the new header card by default in the editor. It also hides the old
header card from the editor menu unless the `labs.headerV1` setting is
enabled.
2023-08-10 10:40:10 +02:00
Simon Backx
3833c24034
Updated copy for email notification when receiving new tips (#17667)
no issue
2023-08-10 07:25:46 +00:00
Simon Backx
874552bdbe
Added donation events to activity feeds (#17632)
fixes TryGhost/Product#3698
fixes TryGhost/Product#3699
2023-08-10 09:16:47 +02:00
renovate[bot]
eb77db29a0 Update dependency i18next-parser to v8.5.0 2023-08-10 08:31:44 +02:00
Steve Larson
a2cb55f0b8
Added origin to beta editor feedback (#17664)
no refs
-added origin to beta editor feedback to more easily associate errors
2023-08-09 20:53:37 +00:00
Daniel Lockyer
61d53ed7af Removed extra ts-node and typescript dependencies
refs https://github.com/TryGhost/DevOps/issues/50

- these are not needed because they are present in the top-level
2023-08-09 18:27:56 +02:00
Daniel Lockyer
576449cdc7 Switched to TypeScript eslint config
refs https://github.com/TryGhost/DevOps/issues/50

- we have a TS config for this now so this switches over to that
2023-08-09 18:27:56 +02:00
Daniel Lockyer
c032bcebde Disabled TypeScript incremental building
refs https://ghost.slack.com/archives/C02G9E68C/p1691403750186279

- we keep seeing strange things from incremental TS builds, and it's
  causing random/spurious test failures for developers
- this commit disables that
- also adds cleaning up of TS incremental build artifacts to the
  `build:clean` command
2023-08-09 18:27:56 +02:00
Daniel Lockyer
e2f58074bd Deduplicated TypeScript config
- this is the default config which we insert into packages by default
- we've since switched to using a shared config to deduplicate the
  config
- this switches a couple of packages over to that config
2023-08-09 18:27:56 +02:00
Sag
ea75ca6188
Updated minimum price validation in Tiers, to support more currencies (#17661)
no issue

- Stripe imposes different minimum charges based on the currency used,
see
https://stripe.com/docs/currencies#minimum-and-maximum-charge-amounts
- Our validation uses double that limit, to take into account
conversions to the main currency in use in the Stripe account
2023-08-09 15:44:01 +00:00
renovate[bot]
335faf4955 Update dependency ember-cli-htmlbars to v6.3.0 2023-08-09 17:30:31 +02:00
Sag
99a9dea988
Added a validation for a minimum suggested amount for Tips & Donations (#17653)
closes https://github.com/TryGhost/Product/issues/3695

- Stripe has minimum charge amounts per currency, see
https://stripe.com/docs/currencies#minimum-and-maximum-charge-amounts
- We double these limits in our validation, to take into account
currency conversions to the main currency used on the Stripe account. If
the publishers enters a suggested amount below the limit, they will see
an error in Admin
- 0 is permitted as default value and corresponds to "no suggested
amount"
2023-08-09 16:36:29 +02:00
Ronald Langeveld
d24b41f99f
Removed leftover signup flag in Koenig config (#17656)
no issue

- Removed a leftover signup property from the Koenig lexical config.

---

<!-- Leave the line below if you'd like GitHub Copilot to generate a
summary from your commit -->
<!--
copilot:summary
-->
### <samp>🤖 Generated by Copilot at 0e10cc3</samp>

Removed `signupCard` property from `koenig-lexical-editor` component.
2023-08-09 16:00:42 +02:00
Sag
6cfa4bb6e8
Revert "Added logic to load Portal when Tips & Donations are enabled" (#17655)
no issue

- this reverts commit b95c8275f2
- browser tests needs to be fixed
2023-08-09 13:53:17 +00:00
Sag
b95c8275f2
Added logic to load Portal when Tips & Donations are enabled (#17634)
closes https://github.com/TryGhost/Product/issues/3661

- until now, Portal was not loaded if members were disabled. With the
introduction of Tips & Donations, signed-off readers can also make
payments, using the Portal link /#/portal/support.
- now, Portal is loaded when Tips & Donations are enabled, even if
Memberships are disabled
- depending on the member signup access, the "sign in" / "subscribe"
Portal buttons are hidden (both hidden if none, signup hidden if
invite-only)
- for any other signup / signin Portal links (e.g., added by the theme,
or added via a Post/Page), a new popup informs the reader as such when
Memberships are disabled: "Memberships unavailable, contact the site owner for access".
2023-08-09 12:44:07 +00:00
Aileen Booker
cd013356f9 Added update to Explore iframe on nightShift change
no issue

- This change listens to updated values of the night shift toggle and sends a message to the Explore iframe - if mounted - to ensure the themes are in sync
2023-08-09 13:03:13 +01:00
renovate[bot]
3168d3d705 Update dependency i18next-parser to v8.4.0 2023-08-09 13:06:11 +02:00
renovate[bot]
eea5752841 Update dependency html-validate to v8.2.0 2023-08-09 11:28:06 +02:00
renovate[bot]
fc4fef85a6 Update dependency @types/sinon to v10.0.16 2023-08-09 11:18:47 +02:00
renovate[bot]
f56d9a5794 Update dependency luxon to v3.4.0 2023-08-09 11:15:27 +02:00
renovate[bot]
9485b1c841 Update dependency @embroider/macros to v1.13.1 2023-08-09 11:14:41 +02:00
Sam Lord
000b356fff Prevent prepack errors when cache restored in CI
refs: https://github.com/TryGhost/DevOps/issues/56

The new monobundle package now ignores any package directory if it doesn't contain a package.json. These non-packages are occasionally restored from cache when pulling dependencies.
2023-08-09 09:37:58 +01:00
Simon Backx
9e2a1b7d57
Wired up Connect with Stripe button for tips and donations (#17644)
fixes https://github.com/TryGhost/Product/issues/3702
2023-08-09 08:27:28 +00:00
Simon Backx
b9fcbc7f28
Renamed donate button to pay in Stripe Checkout flow (#17646)
fixes https://github.com/TryGhost/Product/issues/3705
2023-08-09 08:17:54 +00:00
renovate[bot]
76256e3199 Update dependency ember-svg-jar to v2.4.4 2023-08-09 10:00:36 +02:00
renovate[bot]
93948948a2 Update dependency inquirer to v8.2.6 2023-08-09 09:51:09 +02:00
Chris Raible
9ea4fbd7a7
Added feature to convert and open mobiledoc posts in the lexical editor (#17453)
refs TryGhost/Product#3638

- Added `convert_to_lexical` flag to the posts/pages edit endpoint
- Added 'convertToLexical' feature flag so we can enable/disable this
feature independently from the main lexical beta flag
- Modified admin posts/pages list to point to the lexical editor for
_all_ posts, regardless of mobiledoc vs lexical (if the flag is on)
- Added call to edit endpoint with `convert_to_lexical` in the lexical
editor admin route if the page/post is currently in mobiledoc and the
flag is enabled
2023-08-08 15:44:54 -07:00
Djordje Vlaisavljevic
df231b2459
Tips & donations feedback tweaks (#17633)
refs https://github.com/TryGhost/Product/issues/3666,
https://github.com/TryGhost/Product/issues/3667

- Updated copy in various places
- Added logic for displaying "Connect Stripe" button instead of "Expand"
if not already connected
2023-08-08 14:49:58 +01:00
Simon Backx
4c8179312d
🎨 Added support for relative links in emails (#17630)
fixes https://github.com/TryGhost/Product/issues/3687

After this change, relative URLs in emails will be replaced with
absolute URLs using the post URL. Making relative Portal URLs possible
etc.

Updates the test data generator to fix invalid URL encoding (somehow a
backslash + escaped double quote was added when it wasn't required).
2023-08-08 13:22:56 +02:00
Sodbileg Gansukh
7d08b4a2fc Fixed background repeat of split header email 2023-08-08 18:50:44 +08:00
Ronald Langeveld
d5026068da
Updated Koenig packages (#17626)
no issue

---

<!-- Leave the line below if you'd like GitHub Copilot to generate a
summary from your commit -->
<!--
copilot:summary
-->
### <samp>🤖 Generated by Copilot at 2f86a35</samp>

Updated packages for rendering post and page content. This fixes some
bugs and improves the handling of HTML elements.
2023-08-08 11:20:53 +02:00
Sodbileg Gansukh
209649c556 Adjusted padding of the split header content 2023-08-08 16:08:14 +08:00
Sag
9aef028c4c
Renamed Tips & Donations suggestion links (#17618)
refs https://github.com/TryGhost/Product/issues/3665
2023-08-07 17:04:26 +00:00
Sag
f386a92f98
Fixed preset amount for donations (#17617)
refs https://github.com/TryGhost/Product/issues/3666
2023-08-07 16:19:19 +00:00
Sag
3254b8e149
Added Tips & Donations link to Button, Header and Email CTA cards suggestions (#17614)
closes https://github.com/TryGhost/Product/issues/3665

- added link suggestion feature to the Header card in Mobiledoc (missing
feature)
- Tips & Donations link is behind a feature flag atm, to be cleaned up
once the feature is ready to be released
2023-08-07 15:16:29 +00:00
Sag
c201e4eb4f
Fixed preset amount in Stripe Checkout (#17615)
refs https://github.com/TryGhost/Product/issues/3666

- Stripe has a set of minimum charges per currency. This adds a basic
safeguard on the backend side, while the main validation should happen
in Portal
- Stripe docs:
https://stripe.com/docs/currencies#minimum-and-maximum-charge-amounts
2023-08-07 16:48:25 +02:00
Simon Backx
5462bc0a96 Added email notification for new donations
fixes https://github.com/TryGhost/Product/issues/3692
2023-08-07 16:32:35 +02:00
Simon Backx
97580a3cd8 Added toggle for donation email notifications
refs https://github.com/TryGhost/Product/issues/3692
2023-08-07 16:32:35 +02:00
Simon Backx
66675a1383
Added donation notifications column (#17607)
fixes https://github.com/TryGhost/Product/issues/3691

When a site receives a donation, we'll send an email to all
administrator. They can disable this in their profile settings. This
migration adds the required column to make this possible. It defaults to
true.

Link to tech spec:
https://www.notion.so/ghost/Tech-Spec-5cd6929f7960462ebcbf198176e0d899?pvs=4#156834b0231d4968a203d797c6817d21
2023-08-07 15:31:36 +02:00
Ronald Langeveld
b889e9bf83
Updated header email rendering package (#17613)
no issue

- some tweaks inside `kg-default-nodes`, requires an update in Ghost.

---

<!-- Leave the line below if you'd like GitHub Copilot to generate a
summary from your commit -->
copilot:summary
2023-08-07 13:12:57 +00:00
Sag
ecc9c4aee5
Released Portal 2.34.0 (#17610)
no issue

- this version contains a WIP version of the Tips & Donations feature
2023-08-07 12:59:39 +00:00
Ronald Langeveld
5d6c38b99f
Bumped Koenig Packages (#17608)
no issue

- made adjustment to `kg-default-nodes` that needs bumping on Ghost to
have those changes reflected.
 
---

<!-- Leave the line below if you'd like GitHub Copilot to generate a
summary from your commit -->
<!--
copilot:summary
-->
### <samp>🤖 Generated by Copilot at 77ea2d6</samp>

Updated Koenig Editor dependencies to fix bugs and enhance performance.
This affects the `@tryghost/kg-default-nodes` and
`@tryghost/kg-lexical-html-renderer` packages in
`ghost/core/package.json`.
2023-08-07 13:47:59 +02:00
Sam Lord
06011bf513 Fixed retried tests with snapshots in CI
refs: TryGhost/DevOps#53

Tests with snapshots which are retried in CI will no longer have false positive results
2023-08-07 11:57:22 +01:00
Simon Backx
c04d8532ca
🐛 Fixed member signup source attributed to Stripe (#17606)
no issue

When a user fails to pay the first time, and returns to the site, the
next payment will be attributed to Stripe instead of the original
referrer. This change always ignores the Stripe checkout as referrer in
the URL history.
2023-08-07 09:38:46 +00:00
Fabien 'egg' O'Carroll
2459d70048
Added CollectionPost model & relation to Collection (#17588)
By using the `collections_posts` table as a pivot table, I couldn't see
a way to get bookshelf to *not* load the Post models for the relation.
We don't actually need those Post models for our usescases, the the
queries were causing issues with our database servers! Here we've added
a new CollectionPost model which allows us to treat the
collections_posts table as a resource ratherthan pivot, and means we can
use the hasMany relation rather than belongsToMany relation. This
removes all queries to the posts table when fetching collections with
relations
2023-08-07 09:17:36 +01:00
Ronald Langeveld
a9d980f9c1
Bumped Koenig Packages (#17604)
no issue

---

<!-- Leave the line below if you'd like GitHub Copilot to generate a
summary from your commit -->
<!--
copilot:summary
-->
### <samp>🤖 Generated by Copilot at ee5f8bf</samp>

Updated Koenig Editor dependencies in `package.json` to improve editor
performance and stability.
2023-08-07 07:09:21 +00:00
Sodbileg Gansukh
26e07a5f54 Better spacing for the header card 2023-08-07 10:49:32 +08:00
Sodbileg Gansukh
267d0fc045 Increased padding of the header card email 2023-08-07 08:37:57 +08:00
Sodbileg Gansukh
b9b959cd3c Header card email typography and spacing 2023-08-07 08:37:57 +08:00
Sodbileg Gansukh
013719f2db Reverted old header card styles and added explicit rules for the new card 2023-08-07 08:37:57 +08:00
Sodbileg Gansukh
4699f5b86e Added email styles for Header v2 2023-08-07 08:37:57 +08:00
Chris Raible
a4c04da443
Updated Posts Content API snapshots (#17600)
no issue

- Snapshot tests were incorrect but we weren't catching it because CI
was retrying them and yielding false passes
- This fix just fixes the broken tests, which will allow us to fix the
issue with CI yielding false passing results
2023-08-04 22:31:54 +00:00
Sag
81c3555106
Added logic for currency and suggested amount for Tips & Donations (#17599)
closes https://github.com/TryGhost/Product/issues/3666

- added computed setting "donations_enabled"
- added logic to persist "donations_suggested_amount" and "donations_currency"
- used  "donations_suggested_amount" and "donations_currency" when initiating a new Stripe Checkout for donations
- added copy functionality to "your link" in Tips & Donations settings
2023-08-04 18:17:35 +00:00
Ghost CI
299cdb4387 v5.58.0 2023-08-04 15:02:54 +00:00
Djordje Vlaisavljevic
dce2e68c9a
Added Tips&Donations link to portal links (#17580)
refs https://github.com/TryGhost/Product/issues/3677

- Added Tips&Donations link to Portal links in Membership settings for
easy access
- Updated other links to pass `no-action` lint rule

---------

Co-authored-by: Sag <guptazy@gmail.com>
2023-08-04 15:15:57 +01:00
Sam Lord
356256067c Data generator: Ensure order of newsletters is correct
no issue
2023-08-04 13:36:09 +01:00
Sam Lord
4ff467794f Entirely rewrote data generator to simplify codebase
refs: https://github.com/TryGhost/DevOps/issues/11

This is a pretty huge commit, but the relevant points are:
* Each importer no longer needs to be passed a set of data, it just gets the data it needs
* Each importer specifies its dependencies, so that the order of import can be determined at runtime using a topological sort
* The main data generator function can just tell each importer to import the data it has

This makes working on the data generator much easier.

Some other benefits are:
* Batched importing, massively speeding up the whole process
* `--tables` to set the exact tables you want to import, and specify the quantity of each
2023-08-04 13:36:09 +01:00
Djordje Vlaisavljevic
be7a2d0aec
Updated Tips & donations settings design (#17591)
refs https://github.com/TryGhost/Product/issues/3667

- Moved Tips&Donations out of `SignupFormEmbed` component and into its
own component
- Removed the enable/disable toggle for Tips&Donations and added
Expand/Close button instead
2023-08-03 22:37:25 +01:00
Sag
7e9b2d4883
Fixed donations checkout for logged-off readers (#17589)
closes https://github.com/TryGhost/Product/issues/3663
2023-08-03 20:45:57 +00:00
Sag
19bdb0efef
Added migrations for Tips & Donations' settings (#17576)
closes https://github.com/TryGhost/Product/issues/3668

- Tips and Donations feature offers two settings: "donations_currency", and "donations_suggested_amount"
    - "donation_currency": the currency to be used for the donation. Defaults to "USD", not nullable.
    - "donation_suggested_amount": an anchor price for the donation. Defaults to 0, not nullable.
- Both settings belong to a new group "donations"

Tech Spec: https://www.notion.so/ghost/Tech-Spec-5cd6929f7960462ebcbf198176e0d899?pvs=4#6e8b34c45f0c4c78b48c9e7725a307c8
2023-08-03 22:13:47 +02:00
John O'Nolan
265e62229f
2023 2023-08-03 20:40:44 +01:00
Steve Larson
af7ce52708
Added source to beta editor feedback (#17586)
no refs
- will return post, page, or settings
2023-08-03 10:10:31 -05:00
Djordje Vlaisavljevic
f26203f8cb
Updated Tips & donations settings (#17585)
refs https://github.com/TryGhost/Product/issues/3667

- Updated Tips & Donations settings with improved copy and more compact
layout
2023-08-03 15:28:11 +01:00
Michael Barrett
262c6be70f
🐛 Fixed member filtering on newsletter subscription status (#17583)
fixes https://github.com/TryGhost/Product/issues/3684

The `nql` used for filtering newsletter members needed tweaking to make
sure the provided query was parsed as a single `AND` query. This commit
also fixes an issue where on page reload the filters were not being
applied correctly
2023-08-03 13:26:19 +01:00
Ghost CI
81ef2ade39 Merged v5.57.3 into main 2023-08-03 10:25:36 +00:00
Ghost CI
34b6f1917f v5.57.3 2023-08-03 10:25:34 +00:00
Fabien "egg" O'Carroll
148cf059dc Disabled Collections sync when flag disabled
We've been seeing an increased number of database queries, which are potentially
caused by the collections syncing logic. Whilst we haven't narrowed the cause
down precisely we want to disable this logic unless the flag is enabled.
2023-08-03 11:08:25 +01:00
Djordje Vlaisavljevic
423607872c
Updated Tips & donations membership settings design (#17579)
refs https://github.com/TryGhost/Product/issues/3667

- Added static design for Tips & Donations settings with feature toggle,
default amount, currency and link
2023-08-02 22:44:52 +01:00
Steve Larson
c539417e89
🐛 Fixed bookmark card metadata styles (#17577)
refs TryGhost/Product#3609
- author and publisher styles were mixed up in mobiledoc
- made consistent for author coming after publisher for md and lexical
- updated renderer packages
2023-08-02 14:13:25 -05:00
Ghost CI
e2a6d8b987 Merged v5.57.2 into main 2023-08-02 15:12:37 +00:00
Ghost CI
afce648fd7 v5.57.2 2023-08-02 15:12:35 +00:00
Steve Larson
6936007052
🐛 Updated gscan error handling for page errors (#17575)
refs https://github.com/TryGhost/Product/issues/3676

- add filter for sidebar display of theme errors (angry red box)
- filter specific to each page feature, will need to add each one by this approach
2023-08-02 09:56:40 -05:00
Fabien "egg" O'Carroll
2cd50d47af 🐛 Fixed superfluous DB queries on Collection save
We have a global hook for the bookshelf-relations plugin which updates the
sort_order for pivot tables when saving the parent model. This hook requires
that we fetch each row in the pivot table related to the model and then run an
update on each one. Since we have a "latest" Collection this means at least N
update queries where N is the number of Posts for a site. For large sites this
was crippling the database. We only need the sort_order to be updated for
Collections with a type of "manual". We currently don't have a way to disable
the update based on model attributes, so instead we have disabled the update for
all Collections - this is okay because 1. Collections is not released and 2. we
don't have full support for manual Collections yet anyway.
2023-08-02 15:19:47 +01:00
Jono M
64d52d736a
Updated AdminX settings to link from the usual footer button (#17567)
refs https://github.com/TryGhost/Product/issues/3349

Now that we're a bit further, we can open AdminX settings from the usual
gearwheel button when the Labs flag is enabled instead of having a
separate navigation item
2023-08-02 11:43:06 +02:00
Ghost CI
f839c2289c Merged v5.57.1 into main 2023-08-01 19:57:00 +00:00
Ghost CI
c81baebdbb v5.57.1 2023-08-01 19:56:59 +00:00
Fabien 'egg' O'Carroll
ada5b838a5
🐛 Fixed custom routing with collections (#17561)
When we updated the way we handled NQL filter expansion, we broke custom
routing collections. This reverts the change and fixes custom routing.
2023-08-01 19:54:41 +01:00
Naz
346eeef2e3 Removed flatUrls labs flag
refs 4372a7e1a8

- We ended up developing a proper customizable routing on the `arch` branch. This flag is obsolete.
2023-08-01 15:13:15 +08:00
Naz
7464dbc1af Added e2e test coverage for bulk collection edits
refs https://github.com/TryGhost/Arch/issues/16

- Makes sure post bulk actions also update collection posts
2023-08-01 15:11:00 +08:00
Naz
aaf0998129 Fixed transaction completion error on collection update
refs https://github.com/TryGhost/Arch/issues/16

- Without an extra await in the update function the passed in transaction would complete before all updates had a chance to run within this transaction.
2023-08-01 15:11:00 +08:00
Naz
fe4c0b18cf Removed unnecessary getBulk in PostsRepository
refs https://github.com/TryGhost/Arch/issues/16

- The method ended up being used only once, so it makes no sense to complicate the interface without any gain.
2023-08-01 15:11:00 +08:00
Naz
8635f4efeb Added collections handling for PostsBulkFeaturedEvent/PostsBulkUnfeaturedEvent
refs https://github.com/TryGhost/Arch/issues/16

- When posts produce PostsBulkFeaturedEvent/PostsBulkUnfeaturedEvent the collections having a featured filter should update the posts belonging to them.
2023-08-01 15:11:00 +08:00
Naz
8046c33194 Added collections handling for PostsBulkUnpublishedEvent
refs https://github.com/TryGhost/Arch/issues/16

- When posts produce PostsBulkUnpublishedEvent the collections having a published_at filter should update the posts belonging to them
2023-08-01 15:11:00 +08:00
Naz
8c05d80b99 Added test illustrating date filtering for InMemoryRepository
refs https://github.com/TryGhost/Arch/issues/16
refs https://github.com/kofrasa/mingo/issues/39

- When using in-memory repository we sometimes need to compare dates. We have to explicitly use ISOString formatting for dates to make filter work by the Mongo spec  - https://www.mongodb.com/docs/manual/reference/method/Date/
2023-08-01 15:11:00 +08:00
Naz
a44d4a24d3 Fixed "any" types for Knex transaction objects
no issue

- We should use specific types wherever possible instead of "any" as it's an antipattern that spreads like cancer through the codebase.
2023-08-01 15:11:00 +08:00
Naz
18a4fa8cd9 Added bulk posts action events dispatching
refs https://github.com/TryGhost/Arch/issues/16

- Allows to subscribe to bulk unpublish/featured/unfeatured DomainEvents elsewhere in the system, for example, Collections.
2023-08-01 15:11:00 +08:00
Naz
f4143a8939 Fixed build scripts for post-events package 2023-08-01 15:11:00 +08:00
Naz
9b257f3966 Update of collection posts on bulk destroy
refs https://github.com/TryGhost/Arch/issues/16

- When the bulk destroy is done on posts Collections need to know about the update and remove the stored posts from collections.
2023-08-01 15:11:00 +08:00
Naz
ffa101b550 Added post events package
refs https://github.com/TryGhost/Arch/issues/16

- This package is meant to hold Domain Events associated with Post model/entity. The very first one here is PostsBulkDestroyedEvent needed to signal bulk destroy action completion from the posts service.
2023-08-01 15:11:00 +08:00
Ghost CI
b6e8208950 v5.57.0 2023-07-31 20:42:08 +00:00
Ghost CI
29a4521235 🎨 Updated Casper to v5.6.0 2023-07-31 20:42:08 +00:00
Ghost CI
650487f8ee Merged v5.56.1 into main 2023-07-31 19:38:23 +00:00
Ghost CI
09d967a197 v5.56.1 2023-07-31 19:38:21 +00:00
Steve Larson
5fe72462bc
Enabled page features (#17544)
no refs
-moved hide page title and feature image to GA
-updated gscan
2023-07-31 14:22:19 -05:00
Simon Backx
841e52ccfe
Added donations API (#17495)
refs https://github.com/TryGhost/Product/issues/3648

- Refactored Members API RouterController.createCheckoutSession: Split the method into smaller parts so we can reuse individual parts for the upcoming donation checkout session.
- Wired up donation checkout creation
- Added donation events
2023-07-31 16:00:52 +00:00
Simon Backx
18cf5dd582
Added migrations for donations API (#17536)
fixes https://github.com/TryGhost/Product/issues/3655

- This adds a new table for storing donation events in the database.
- Makes it possible to store stripe_products without associating it with
a tier/Ghost product (required for one time purchases).
- Updates the schema for stripe_prices to allow enum value of
`donation`, which is required to query specifically on the prices used
for donations (existing one_time is not enough).

Database changes are discussed in the Tech Spec:
https://www.notion.so/ghost/Tech-Spec-5cd6929f7960462ebcbf198176e0d899?pvs=4#1f18cc5a38294f61a091e5be63fe1059
2023-07-31 17:29:36 +02:00