From 697cdfd5c9a9da7aa2c6d73b5175db071b285402 Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Wed, 27 Mar 2019 16:45:15 +0100 Subject: [PATCH] Allow to redirect to checkout directly after adding a product to the cart --- src/pretix/base/settings.py | 4 ++++ src/pretix/control/forms/event.py | 4 ++++ .../control/templates/pretixcontrol/event/display.html | 1 + src/pretix/presale/templates/pretixpresale/event/index.html | 2 +- .../presale/templates/pretixpresale/event/voucher.html | 3 +-- src/pretix/presale/views/cart.py | 5 +++++ src/pretix/presale/views/event.py | 4 ++++ 7 files changed, 20 insertions(+), 3 deletions(-) diff --git a/src/pretix/base/settings.py b/src/pretix/base/settings.py index 3d3ddac213..c7f7e2c1f1 100644 --- a/src/pretix/base/settings.py +++ b/src/pretix/base/settings.py @@ -97,6 +97,10 @@ DEFAULTS = { 'default': '30', 'type': int }, + 'redirect_to_checkout_directly': { + 'default': 'False', + 'type': bool + }, 'payment_explanation': { 'default': '', 'type': LazyI18nString diff --git a/src/pretix/control/forms/event.py b/src/pretix/control/forms/event.py index 4ad2264620..264dfa41cc 100644 --- a/src/pretix/control/forms/event.py +++ b/src/pretix/control/forms/event.py @@ -1074,6 +1074,10 @@ class DisplaySettingsForm(SettingsForm): label=_('Ask search engines not to index the ticket shop'), required=False ) + redirect_to_checkout_directly = forms.BooleanField( + label=_('Directly redirect to check-out after a product has been added to the cart.'), + required=False + ) def __init__(self, *args, **kwargs): event = kwargs['obj'] diff --git a/src/pretix/control/templates/pretixcontrol/event/display.html b/src/pretix/control/templates/pretixcontrol/event/display.html index 80e557b7e9..09f1ac9b9f 100644 --- a/src/pretix/control/templates/pretixcontrol/event/display.html +++ b/src/pretix/control/templates/pretixcontrol/event/display.html @@ -17,6 +17,7 @@ {% if form.frontpage_subevent_ordering %} {% bootstrap_field form.frontpage_subevent_ordering layout="control" %} {% endif %} + {% bootstrap_field form.redirect_to_checkout_directly layout="control" %}
{% trans "Shop design" %} diff --git a/src/pretix/presale/templates/pretixpresale/event/index.html b/src/pretix/presale/templates/pretixpresale/event/index.html index 4a1f6188a6..b829ec0b4d 100644 --- a/src/pretix/presale/templates/pretixpresale/event/index.html +++ b/src/pretix/presale/templates/pretixpresale/event/index.html @@ -182,7 +182,7 @@
+ action="{% eventurl request.event "presale:event.cart.add" cart_namespace=cart_namespace %}?next={{ cart_redirect|urlencode }}"> {% csrf_token %} {% for tup in items_by_category %} diff --git a/src/pretix/presale/templates/pretixpresale/event/voucher.html b/src/pretix/presale/templates/pretixpresale/event/voucher.html index 8ba9981030..421576b4fb 100644 --- a/src/pretix/presale/templates/pretixpresale/event/voucher.html +++ b/src/pretix/presale/templates/pretixpresale/event/voucher.html @@ -20,8 +20,7 @@

{% if event.presale_is_running or event.settings.show_items_outside_presale_period %}