diff --git a/src/squarepay/models.py b/src/squarepay/models.py index d972fa48024e6e1cff49922fdd350ca5ec724ab5..ab2248e4fe35a3f9072b1e61930db6340178d8bf 100644 --- a/src/squarepay/models.py +++ b/src/squarepay/models.py @@ -2,6 +2,7 @@ import uuid from django.db import models from django.urls import reverse +from django.utils import timezone from memberdb.models import Membership, make_token @@ -15,9 +16,9 @@ class CardPayment(models.Model): date_paid = models.DateTimeField('Date paid (payment captured)', null=True, blank=True) def set_paid(self): - card_payment.is_paid = True - card_payment.date_paid = timezone.now() - card_payment.save() + self.is_paid = True + self.date_paid = timezone.now() + self.save() class MembershipPayment(CardPayment): """ diff --git a/src/squarepay/payments.py b/src/squarepay/payments.py index 2b7bfcad7690151a92b62b43a13c0e7f587dee6b..74c15cfeab1de39a5c9d68e0f6d5cfb63c870493 100644 --- a/src/squarepay/payments.py +++ b/src/squarepay/payments.py @@ -5,7 +5,6 @@ import logging from django.conf import settings from django.core.exceptions import ImproperlyConfigured -from django.utils import timezone import squareconnect from squareconnect.rest import ApiException diff --git a/src/squarepay/views.py b/src/squarepay/views.py index ffcc26050796ab73889de77f82cf03898608d0ed..54098a203f146bdf91e1ec2d5f93e4ba51adbe26 100644 --- a/src/squarepay/views.py +++ b/src/squarepay/views.py @@ -31,11 +31,12 @@ class PaymentFormMixin: return context def payment_success(self, payment): - set_paid(payment) - messages.success(request, "Your payment of $%1.2f was successful." % amount_aud) + payment.set_paid() + messages.success(self.request, "Your payment of $%1.2f was successful." % (payment.amount / 100.0)) def payment_error(self, payment): - messages.error(request, "Your payment of $%1.2f was unsuccessful. Please try again later." % amount_aud) + messages.error(self.request, "Your payment of $%1.2f was unsuccessful. Please try again later." % (payment.amount / 100.0)) + payment.delete() def post(self, request, *args, **kwargs): nonce = request.POST.get('nonce', None) @@ -47,9 +48,9 @@ class PaymentFormMixin: return self.get(request) if try_capture_payment(card_payment, nonce): - payment_success(card_payment) + self.payment_success(card_payment) else: - payment_error(card_payment) + self.payment_error(card_payment) # redirect to success URL, or redisplay the form with a success message if none is given return HttpResponseRedirect(self.get_completed_url())