Widget: Do not show "buy now" if no availability state is known

This commit is contained in:
Raphael Michel
2020-12-10 17:07:06 +01:00
parent eac32c25ba
commit 0a55fdbc49
3 changed files with 8 additions and 3 deletions

View File

@@ -310,7 +310,7 @@ class WidgetAPIProductList(EventListMixin, View):
def _get_availability(self, ev, event):
availability = {}
if ev.presale_is_running and event.settings.event_list_availability and ev.best_availability_state is not None:
if ev.presale_is_running and event.settings.event_list_availability:
if ev.best_availability_state == Quota.AVAILABILITY_OK:
availability['color'] = 'green'
availability['text'] = gettext('Book now')
@@ -330,6 +330,10 @@ class WidgetAPIProductList(EventListMixin, View):
else:
availability['text'] = gettext('Fully booked')
availability['reason'] = 'full'
else: # unknown / no product
availability['color'] = 'none'
availability['text'] = ''
availability['reason'] = 'unknown'
elif ev.presale_is_running:
availability['color'] = 'green'
availability['text'] = gettext('Book now')

View File

@@ -929,7 +929,7 @@ Vue.component('pretix-widget-event-calendar-event', {
+ '{{ event.name }}'
+ '</strong>'
+ '<div class="pretix-widget-event-calendar-event-date" v-if="!event.continued && event.time">{{ event.time }}</div>'
+ '<div class="pretix-widget-event-calendar-event-availability" v-if="!event.continued">{{ event.availability.text }}</div>'
+ '<div class="pretix-widget-event-calendar-event-availability" v-if="!event.continued && event.availability.text">{{ event.availability.text }}</div>'
+ '</a>'),
props: {
event: Object

View File

@@ -438,7 +438,8 @@
.pretix-widget-event-availability-orange.pretix-widget-event-calendar-event {
background-color: $brand-warning;
}
.pretix-widget-event-availability-none .pretix-widget-event-list-entry-availability span {
.pretix-widget-event-availability-none .pretix-widget-event-list-entry-availability span,
.pretix-widget-event-availability-none.pretix-widget-event-calendar-event {
background-color: $brand-primary;
}
.pretix-widget-event-availability-green .pretix-widget-event-list-entry-availability span,