Nazar Gargol
be207f98e7
Published new versions
...
- @tryghost/members-api@0.11.1
2020-01-15 15:40:54 +07:00
Naz Gargol
e19e06f9b3
Refactored user CRUD to be usable by Ghost core ( #113 )
...
refs https://github.com/TryGhost/Members/pull/105
- It's a follow up to a series of refactorings in the module mostly discussed in refed PR
- The sendEmailWithMagicLink and destroyStripeSubscriptions were exposed through members API so that Ghost could call it from the controller level
2020-01-15 15:35:15 +07:00
Nazar Gargol
46f6ce8db3
Removed console.log statement in favor of common logger
...
no issue
- Using console is a very bad practice and probably was left here by mistake. Using common logging instead
2020-01-13 19:16:51 +07:00
Nazar Gargol
3b14e7c1fa
Removed redundant empty string handling logic in users module
...
no issue
- Since the Member model started to be used the logic handling empty strings -> null conversion is now handled in the core here https://github.com/TryGhost/Ghost/blob/8fd1e81/core/server/models/base/index.js#L492-L499
2020-01-13 18:49:25 +07:00
Nazar Gargol
911d5a27fe
Published new versions
...
- @tryghost/magic-link@0.3.3
- @tryghost/members-api@0.11.0
- @tryghost/members-ssr@0.7.4
2020-01-13 15:54:59 +07:00
Nazar Gargol
08fbcf25ec
Extracted metadata get/set methods into internal metadata module
...
no issue
- This is the refactor similar to what has been done with Memeber model being passed in directly in the constructor
- Relevent discussion here https://github.com/TryGhost/Members/pull/105#pullrequestreview-324254267
2020-01-13 15:45:22 +07:00
John O'Nolan
a122aa0119
2020
2020-01-07 19:06:08 +00:00
Nazar Gargol
ef3de2a295
Published new versions
...
- @tryghost/members-api@0.10.2
2019-12-12 15:27:45 +07:00
Naz Gargol
ff5fceafc8
Added subscription update middleware ( #107 )
...
refs #https://github.com/TryGhost/Ghost/pull/11434
- Added method to allow updating single subscription. Only `cancel_at_period_end` field can be updated.
- Middleware is needed to allow Ghost Core to cancel/uncancel member's subscription.
- Relies on the request containing identity information to be able to verify if subscription belongs to the user
- When member could not be identified by the identity information present in the request we should throw instead of continuing processing
- Handling and messaging inspired by https://github.com/TryGhost/Ghost/blob/3.1.1/core/server/services/mega/mega.js#L132
- When the user initiates subscription cancellation we can safely mark the subscription as canceled so that it's not shown in the interface on subsequent request. Otherwise, we end up in a situation where we still return the subscription in the period until Stripe triggers the webhook.
- Added boolean coercion for cancel_at_period_end parameter. If anything but boolean is passed to Stripe API it throws an error. Coercing the value on our side is a gives a better dev experience
2019-12-12 15:19:36 +07:00
Fabien O'Carroll
94ef530b3c
Fixed bug in cancelAllSubscriptions
...
no-issue
We filter out previously cancelled subscriptions, but used the wrong string "cancelled" instead of "canceled"
https://stripe.com/docs/billing/lifecycle#subscription-states
2019-12-09 15:55:37 +02:00
Fabien O'Carroll
231218c4e6
Published new versions
...
- @tryghost/members-api@0.10.1
2019-12-09 14:31:12 +02:00
Fabien O'Carroll
7db503b13b
Fixed local webhooks when using localhost urls
...
no-issue
When using localhost urls the call to `create` will error and end in teh
catch block - so we need to use the environment variable there, too.
Introduced in 0149dd8f
2019-12-09 14:29:59 +02:00
Nazar Gargol
fe462ae706
Published new versions
...
- @tryghost/members-api@0.10.0
2019-12-06 13:29:27 +07:00
Naz Gargol
3060e11a4e
Changed members-api constructor to accept Member model directly ( #105 )
...
no issue
- As members have become a part of Ghost core there is no need to proxy methods like this anymore and we can allow members-api to work on the model directly
- Methods come from Ghost core: https://github.com/TryGhost/Ghost/blob/cc39786/core/server/services/members/api.js#L11-L110
2019-12-05 18:16:18 +07:00
Naz Gargol
0149dd8f4d
Added priority to webhook secret if present in env ( #103 )
...
no issue
- When debugging Stripe with using: `stripe listen \
--forward-to http://ghost.local/members/webhooks/stripe/ ` this priority is nice to have so that Ghost process can be initialized using WEBHOOK_SECRET env variable
- It was not working in current form because Stripe recognized `ghost.local` as a valid domain and didn't throw any errors
- Removed unneeded secret assignment in a catch statement. It is redundant with the new implementation
2019-11-25 13:15:28 +07:00
Fabien O'Carroll
9da1a18770
Published new versions
...
- @tryghost/magic-link@0.3.2
- @tryghost/members-api@0.9.0
- @tryghost/members-ssr@0.7.3
2019-11-05 18:22:07 +07:00
Renovate Bot
297425402b
Update dependency @types/nodemailer to v6.2.2
2019-11-05 16:53:53 +07:00
Renovate Bot
b1fe580834
Update dependency @types/jsonwebtoken to v8.3.5
2019-11-05 16:53:39 +07:00
Fabien O'Carroll
19148dab4e
Included subscription information when listing members
...
no-issue
2019-11-05 16:12:20 +07:00
Renovate Bot
2ce0c5a992
Update Test & linting packages
2019-11-01 13:40:10 +07:00
Renovate Bot
7684ad51c4
Update Node.js to 12
2019-11-01 13:40:00 +07:00
Fabien O'Carroll
a35d947413
Published new versions
...
- @tryghost/magic-link@0.3.1
- @tryghost/members-api@0.8.3
- @tryghost/members-ssr@0.7.2
2019-10-30 15:24:07 +07:00
Fabien O'Carroll
7a3c99886d
Added logging for failed webhook verification
...
no-issue
This gives us some more information about the secret used
2019-10-30 14:40:16 +07:00
Renovate Bot
f233d5fc71
Update dependency cookies to ^0.8.0
2019-10-14 12:38:53 +07:00
Renovate Bot
97c9567744
Update dependency @types/node to v12.7.12
2019-10-14 12:38:19 +07:00
Fabien O'Carroll
123fc7dcd5
Published new versions
...
- @tryghost/members-ssr@0.7.1
2019-10-11 18:01:21 +07:00
Fabien O'Carroll
2a90d84e9a
Added flag for disabling sign cookies
...
no-issue
2019-10-11 18:00:19 +07:00
Fabien O'Carroll
ebbf4e69f9
Published new versions
...
- @tryghost/magic-link@0.3.0
- @tryghost/members-api@0.8.2
2019-10-11 12:03:51 +07:00
Fabien O'Carroll
47ed334597
Updated use of magic-link module to pass subject
...
no-issue
This takes advantage of magic-links smaller tokens
2019-10-11 11:58:23 +07:00
Fabien O'Carroll
4c4d5aab91
Removed the need for audience and issuer claim
...
no-issue
This is unecessary as this is a closes system, the tokens are issued and
intended for the same service, using the same secret
2019-10-11 11:58:23 +07:00
Fabien O'Carroll
483654a4b6
Removed user object from magic links
...
no-issue
This means magic link will rely solely on the `sub` claim for identifying the user
2019-10-11 11:58:23 +07:00
Fabien O'Carroll
d248c909d9
Updated usage of magic-link, passing secret
...
no-issue
2019-10-11 11:58:23 +07:00
Fabien O'Carroll
7a512f992b
Updated to use HS256 signatures for tokens
...
no-issue
This makes the tokens a little more acceptable in plaintext emails
2019-10-11 11:58:23 +07:00
Fabien O'Carroll
5d2e20fbb7
Published new versions
...
- @tryghost/magic-link@0.2.2
- @tryghost/members-api@0.8.1
2019-10-10 20:21:23 +07:00
Fabien O'Carroll
e04898cb3d
Pass getSubject option to MagicLink module
...
no-issue
2019-10-10 20:20:46 +07:00
Fabien O'Carroll
2de53f8571
Support custom subject line with getSubject option
...
no-issue
2019-10-10 20:20:46 +07:00
Fabien O'Carroll
1e8bac111f
Pass email to getHTML and getSubject
...
no-issue
This will allow email templates to include the recipient
2019-10-10 20:20:46 +07:00
Fabien O'Carroll
2c4732b46d
Published new versions
...
- @tryghost/magic-link@0.2.1
- @tryghost/members-api@0.8.0
- @tryghost/members-ssr@0.7.0
2019-10-09 10:51:35 +07:00
Fabien O'Carroll
2d058d8a47
Refactored updateSubscription to fetch payment info
...
no-issue
2019-10-09 10:48:57 +07:00
Fabien O'Carroll
5a0adce65d
Inverted active check for subscriptions
...
no-issue
This is more explicit about what we consider to be an active subscription
2019-10-09 10:46:55 +07:00
Fabien O'Carroll
5a17327a93
Improved error logging for webhook handling
...
no-issue
2019-10-09 10:46:55 +07:00
Fabien O'Carroll
310972f73c
Updated signatures for get/set metadata
...
no-issue
2019-10-09 10:46:55 +07:00
Fabien O'Carroll
4c4cc90d05
Added the extra events to the stripe webhook
...
no-issue
* customer.subscription.deleted - when a subscription is cancelled
* customer.subscription.updated - when a subscription status/plan changes
* invoice.payment_succeeded - when a subscription has successfully renew
* invoice.payment.failed - when a subscription has failed to renew
2019-10-09 10:46:55 +07:00
Fabien O'Carroll
6fc6718735
Renamed addCustomerToMember to updateCustomer
...
no-issue
2019-10-09 10:46:55 +07:00
Fabien O'Carroll
8829b545a9
Updated handleStripeWebhook middleware
...
no-issue
This adds the handlers for the new events we want to listen to
2019-10-09 10:46:55 +07:00
Fabien O'Carroll
68d65c905a
Added webhook handlers for subscription lifecycle events
...
no-issue
We will need these to keep our metadata in sync with stripe
2019-10-09 10:46:55 +07:00
Fabien O'Carroll
6806505a4c
Updated stripe to store and retrieve from metadata
...
no-issue
This means that we will not have to make api requests to find out the
customers subscriptions
2019-10-09 10:46:55 +07:00
Fabien O'Carroll
d11a0db726
Refactored some private methods for stripe
...
no-issue
This is to expose a clearer contract with the outside world
2019-10-09 10:46:55 +07:00
Fabien O'Carroll
e6c8f77d4e
Removed cookie based caching
...
no-issue
This was just a temporary stopgap. The correct solution is to cache in the backend
2019-10-09 10:46:55 +07:00
Renovate Bot
baee3ad0ac
Update dependency @types/node to v12.7.11
2019-10-08 18:19:58 +07:00