refs https://github.com/TryGhost/Ghost/issues/12365
Last commit added Portal checkout links using query param on signup link - `signup?plan=monthly/yearly`, this updates the checkout links to use path instead of params on links and data attributes instead.
Portal link for monthly plan checkout - `#/portal/signup/monthly`
Portal data attribute for monthly plan checkout - `data-portal=signup/monthly`
Portal link for yearly plan checkout - `#/portal/signup/yearly`
Portal data attribute for monthly plan checkout - `data-portal=signup/yearly`
refs https://github.com/TryGhost/Ghost/issues/12365
Currently, while its possible to open Stripe checkout directly on a monthly/yearly plan, Portal links don't allow similar feature. This change allows opening a site on a specific Portal link that can directly open Stripe checkout for monthly/yearly plan, if the plan is allowed.
- Adds handling for new portal signup link for monthly plan - `/#/portal/signup?plan=monthly`
- Adds handling for new portal signup link for yearly plan - `/#/portal/signup?plan=yearly`
no issue
Ghost sends email on successful signup to a paid plan via Stripe checkout, but couldn't differentiate between a Stripe checkout as new member or as an upgrade previously. This led to an extra second email with magic link on upgrading to paid plan while logged in.
Passing `checkoutType` metadata to Stripe checkout allows webhook to ignore second email in case of an upgrade scenario.
refs https://github.com/TryGhost/Ghost/issues/12253
- Handles custom action param for requests from Portal by listening on `portal-action` instead of `action` and `portal-stripe` instead of `stripe` in query params for magic link and stripe checkout changes
- Allows theme to continue using the old params so in future Portal doesn't interfere with theme notifications
no issue
- If the site owner has no active plan enabled for signup in settings, it implies an invite-only site usecase which needs to be highlighted to he user
- Shows the invite only message along with option to login when SIgnup screen is opened in such scenario
no issue
- Default site fixtures for tests often break them as tests expect all 3 plans to be present at the moment, change here updates the tests to use custom site fixture with all 3 plans to avoid breaking with any changes for dev testing
no issue
- Currently, the newsletter switch works on the value update from the API which can have slight delay causing sluggish feeling on using the switch
- Adds logic to locally update the switch state before resetting to whatever value comes from the update so the behavior feels instant
no issue
- On closing portal popup, the hash link was not getting reset which then prevented the popup to be opened again
- Clears portal hash link on popup close