From: Radek Czajka Date: Wed, 1 Sep 2021 11:35:06 +0000 (+0200) Subject: Auto-check paypal status. X-Git-Url: https://git.mdrn.pl/wolnelektury.git/commitdiff_plain/cfd875594597d9d44b7b89839c4c53897646a1d7?hp=441f75224376c912eee2c198cdb9294675024ab9 Auto-check paypal status. --- diff --git a/src/club/payment_methods.py b/src/club/payment_methods.py index 9b73c8970..c20768546 100644 --- a/src/club/payment_methods.py +++ b/src/club/payment_methods.py @@ -72,6 +72,21 @@ class PayPal(PaymentMethod): app = request.GET.get('app') return agreement_approval_url(schedule.amount, schedule.key, app=app) + def pay(self, request, schedule): + from datetime import date, timedelta, datetime + from pytz import utc + tomorrow = datetime(*(date.today() + timedelta(2)).timetuple()[:3], tzinfo=utc) + any_active = False + for ba in schedule.billingagreement_set.all(): + active = ba.check_agreement() + ba.active = active + ba.save() + if active: + any_active = True + if any_active: + schedule.expires_at = tomorrow + schedule.save() + methods = []