mirror of
https://github.com/pretix/pretix.git
synced 2026-05-05 15:14:04 +00:00
Stripe and PayPal: Issue warning on payments for paid orders
This commit is contained in:
@@ -48,6 +48,8 @@ def pretixcontrol_action_display(sender, action, request, **kwargs):
|
||||
template = get_template('pretixplugins/paypal/action_refund.html')
|
||||
elif action.action_type == 'pretix.plugins.paypal.overpaid':
|
||||
template = get_template('pretixplugins/paypal/action_overpaid.html')
|
||||
elif action.action_type == 'pretix.plugins.paypal.double':
|
||||
template = get_template('pretixplugins/paypal/action_double.html')
|
||||
|
||||
ctx = {'data': data, 'event': sender, 'action': action}
|
||||
return template.render(ctx, request)
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
{% load i18n %}
|
||||
|
||||
<p>
|
||||
{% url "control:event.order" organizer=event.organizer.slug event=event.slug code=data.order as ourl %}
|
||||
{% blocktrans trimmed with payment=data.payment order="<a href='"|add:ourl|add:"'>"|add:data.order|add:"</a>"|safe %}
|
||||
The PayPal transaction {{ payment }} has succeeded, but the order {{ order }} has already been paid by other
|
||||
means. Please double check and refund the money via PayPal's interface.
|
||||
{% endblocktrans %}
|
||||
</p>
|
||||
@@ -161,6 +161,14 @@ def webhook(request, *args, **kwargs):
|
||||
'sale': sale['id']
|
||||
})
|
||||
)
|
||||
elif order.status not in (Order.STATUS_PENDING, Order.STATUS_EXPIRED) and sale['state'] == 'completed' and \
|
||||
order.payment_provider != "paypal":
|
||||
RequiredAction.objects.create(
|
||||
event=event, action_type='pretix.plugins.paypal.double', data=json.dumps({
|
||||
'order': order.code,
|
||||
'payment': sale['parent_payment']
|
||||
})
|
||||
)
|
||||
elif order.status in (Order.STATUS_PENDING, Order.STATUS_EXPIRED) and sale['state'] == 'completed':
|
||||
try:
|
||||
mark_order_paid(order, user=None)
|
||||
|
||||
Reference in New Issue
Block a user