mirror of
https://github.com/pretix/pretix.git
synced 2026-05-09 15:54:03 +00:00
Only allow payment provider preview if required fields are set
This commit is contained in:
@@ -13,7 +13,8 @@
|
|||||||
<div class="panel panel-default ticketoutput-panel">
|
<div class="panel panel-default ticketoutput-panel">
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<a href="{% url "control:event.settings.tickets.preview" event=request.event.slug organizer=request.organizer.slug output=provider.identifier %}"
|
<a href="{% url "control:event.settings.tickets.preview" event=request.event.slug organizer=request.organizer.slug output=provider.identifier %}"
|
||||||
class="btn btn-default btn-sm pull-right" target="_blank">
|
class="btn btn-default btn-sm pull-right {% if not provider.preview_allowed %}disabled{% endif %}"
|
||||||
|
target="_blank">
|
||||||
{% trans "Preview" %}
|
{% trans "Preview" %}
|
||||||
</a>
|
</a>
|
||||||
<h3 class="panel-title">{{ provider.verbose_name }}</h3>
|
<h3 class="panel-title">{{ provider.verbose_name }}</h3>
|
||||||
|
|||||||
@@ -489,6 +489,13 @@ class TicketSettings(EventPermissionRequiredMixin, FormView):
|
|||||||
)
|
)
|
||||||
provider.settings_content = provider.settings_content_render(self.request)
|
provider.settings_content = provider.settings_content_render(self.request)
|
||||||
provider.form.prepare_fields()
|
provider.form.prepare_fields()
|
||||||
|
|
||||||
|
provider.preview_allowed = True
|
||||||
|
for k, v in provider.settings_form_fields.items():
|
||||||
|
if v.required and not self.request.event.settings.get('ticketoutput_%s_%s' % (provider.identifier, k)):
|
||||||
|
provider.preview_allowed = False
|
||||||
|
break
|
||||||
|
|
||||||
providers.append(provider)
|
providers.append(provider)
|
||||||
return providers
|
return providers
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user