Nazar Gargol
6c7139b1fe
Fixed preexisting member name check
...
refs 1dc0b36b56
- The name can also be 'null' so the check should take that into account
2020-01-20 15:51:06 +07:00
Rish
47f5ca6625
Published new versions
...
- @tryghost/members-api@0.11.2
2020-01-20 13:32:20 +05:30
Rishabh Garg
a1ad80f6ac
🐛 Fixed incorrect fetch of empty stripe subscriptions ( #116 )
...
no issue
refs e19e06f9b3
While refactoring user CRUD for Ghost core, we inadvertently changed the members subscriptions object returned by nesting the value as object. This also broke the deserialization in Ghost-Admin for members subscription object [here](https://github.com/TryGhost/Ghost-Admin/blob/master/app/transforms/member-subscription.js#L9 ).
2020-01-20 13:28:59 +05:30
Nazar Gargol
1dc0b36b56
Updated checkout session to record member name
...
no issue
- When the customer has provided a name on the card during checkout it should be recorded for convenience as members' name
2020-01-20 13:25:17 +07:00
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