mirror of
https://github.com/viq/NewsBlur.git
synced 2025-09-18 21:43:31 +00:00
Using stripe customer if present.
This commit is contained in:
parent
8140df0d7b
commit
31936eec4e
3 changed files with 16 additions and 9 deletions
|
@ -34,6 +34,7 @@ from vendor.paypalapi.interface import PayPalInterface
|
|||
from vendor.paypalapi.exceptions import PayPalAPIResponseError
|
||||
from zebra.signals import zebra_webhook_customer_subscription_created
|
||||
from zebra.signals import zebra_webhook_charge_succeeded
|
||||
from zebra.signals import zebra_webhook_charge_succeeded
|
||||
|
||||
class Profile(models.Model):
|
||||
user = models.OneToOneField(User, unique=True, related_name="profile", on_delete=models.CASCADE)
|
||||
|
|
|
@ -11,6 +11,7 @@ urlpatterns = [
|
|||
url(r'^set_collapsed_folders/?', views.set_collapsed_folders),
|
||||
url(r'^paypal_form/?', views.paypal_form),
|
||||
url(r'^paypal_return/?', views.paypal_return, name='paypal-return'),
|
||||
url(r'^stripe_return/?', views.paypal_return, name='stripe-return'),
|
||||
url(r'^is_premium/?', views.profile_is_premium, name='profile-is-premium'),
|
||||
url(r'^paypal_ipn/?', include('paypal.standard.ipn.urls'), name='paypal-ipn'),
|
||||
url(r'^paypal_webhooks/?', include('paypal.standard.ipn.urls'), name='paypal-webhooks'),
|
||||
|
|
|
@ -485,20 +485,25 @@ def stripe_checkout(request):
|
|||
price = "price_0KK5cvwdsmP8XBlaZDq068bA"
|
||||
if settings.DEBUG:
|
||||
price = "price_0KK5twwdsmP8XBlasifbX56Z"
|
||||
|
||||
checkout_session = stripe.checkout.Session.create(
|
||||
line_items=[
|
||||
|
||||
session_dict = {
|
||||
"line_items": [
|
||||
{
|
||||
'price': price,
|
||||
'quantity': 1,
|
||||
},
|
||||
],
|
||||
mode='subscription',
|
||||
customer_email=request.user.email,
|
||||
metadata={"newsblur_user_id": request.user.pk},
|
||||
success_url="http://%s%s" % (domain, reverse('paypal-return')),
|
||||
cancel_url="http://%s%s" % (domain, reverse('index')),
|
||||
)
|
||||
"mode": 'subscription',
|
||||
"metadata": {"newsblur_user_id": request.user.pk},
|
||||
"success_url": "http://%s%s" % (domain, reverse('stripe-return')),
|
||||
"cancel_url": "http://%s%s" % (domain, reverse('index')),
|
||||
}
|
||||
if request.user.profile.stripe_id:
|
||||
session_dict['customer'] = request.user.profile.stripe_id
|
||||
else:
|
||||
session_dict["customer_email"] = request.user.email
|
||||
|
||||
checkout_session = stripe.checkout.Session.create(**session_dict)
|
||||
|
||||
logging.user(request, "~BM~FBLoading Stripe checkout")
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue