def paypal_record(request): transaction = Transaction.objects.get(processor_payment_id=request.REQUEST['paymentId']) try: payment = get_payment(request.REQUEST['paymentId']) except PaymentNotFoundError: mark_transaction_expired(transaction) return redirect(reverse('event:detail')) update_transaction(transaction, request.REQUEST['token'], payment) context = get_event_context(transaction.event) context['transaction'] = transaction.to_json() return render(request, "event/detail.html", context)
def paypal_execute(request): logger = logging.getLogger(__name__) transaction = Transaction.objects.get(processor_payment_id=request.REQUEST['paymentId']) payment = get_payment(request.REQUEST['paymentId']) if payment.execute({'payer_id': payment.to_dict()['payer']['payer_info']['payer_id']}): mark_transaction_successful(transaction) logger.critical("Payment execute successfully") if transaction.status == 'completed': return redirect("{}?paymentId={}".format(reverse('payment:receipt'), request.REQUEST['paymentId'])) mark_transaction_error(transaction) logger.critical(payment.error) # Error Hash context = get_event_context(transaction.event) context['transaction'] = transaction.to_json() return render(request, "event/detail.html", context)
def receipt(request): transaction = Transaction.objects.get(processor_payment_id=request.REQUEST['paymentId']) context = get_event_context(transaction.event) context['transaction'] = transaction.to_json() return render(request, "payment/receipt.html", context)