From 88030ab1f3ff970cc085498402f0ff738b880cf3 Mon Sep 17 00:00:00 2001 From: Samuel Clay Date: Sun, 3 Jul 2022 10:42:01 -0400 Subject: [PATCH] Validating paypal ipns. --- apps/profile/models.py | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/apps/profile/models.py b/apps/profile/models.py index a27b2e760..a9cab0a52 100644 --- a/apps/profile/models.py +++ b/apps/profile/models.py @@ -1670,24 +1670,25 @@ post_save.connect(create_profile, sender=User) def paypal_signup(sender, **kwargs): ipn_obj = sender user = None - try: - user = User.objects.get(username__iexact=ipn_obj.custom) - except User.DoesNotExist: - pass + if ipn_obj.custom: + try: + user = User.objects.get(username__iexact=ipn_obj.custom) + except User.DoesNotExist: + pass - if not user: + if not user and ipn_obj.payer_email: try: user = User.objects.get(email__iexact=ipn_obj.payer_email) except User.DoesNotExist: pass - if not user: + if not user and ipn_obj.custom: try: user = User.objects.get(pk=ipn_obj.custom) except User.DoesNotExist: pass - if not user: + if not user and ipn_obj.subscr_id: try: user = PaypalIds.objects.get(paypal_sub_id=ipn_obj.subscr_id).user except PaypalIds.DoesNotExist: