diff --git a/src/pretix/presale/templates/pretixpresale/event/fragment_subevent_list.html b/src/pretix/presale/templates/pretixpresale/event/fragment_subevent_list.html index ceba05e87..9fb882016 100644 --- a/src/pretix/presale/templates/pretixpresale/event/fragment_subevent_list.html +++ b/src/pretix/presale/templates/pretixpresale/event/fragment_subevent_list.html @@ -24,7 +24,11 @@ {% if subev.best_availability_is_low %} {% trans "Few tickets left" %} {% else %} - {% trans "Book now" %} + {% if subev.has_paid_item %} + {% trans "Buy now" context "available_event_in_list" %} + {% else %} + {% trans "Book now" %} + {% endif %} {% endif %} {% elif event.settings.waiting_list_enabled and subev.best_availability_state >= 0 %} {% trans "Waiting list" %} diff --git a/src/pretix/presale/templates/pretixpresale/fragment_calendar.html b/src/pretix/presale/templates/pretixpresale/fragment_calendar.html index 88bb18906..019f59830 100644 --- a/src/pretix/presale/templates/pretixpresale/fragment_calendar.html +++ b/src/pretix/presale/templates/pretixpresale/fragment_calendar.html @@ -71,7 +71,11 @@ {% if event.event.best_availability_is_low %} {% trans "Few tickets left" %} {% else %} - {% trans "Book now" %} + {% if event.event.has_paid_item %} + {% trans "Buy now" context "available_event_in_list" %} + {% else %} + {% trans "Book now" %} + {% endif %} {% endif %} {% elif event.event.settings.waiting_list_enabled and event.event.best_availability_state >= 0 %} {% trans "Waiting list" %} diff --git a/src/pretix/presale/templates/pretixpresale/fragment_day_calendar.html b/src/pretix/presale/templates/pretixpresale/fragment_day_calendar.html index 92097b9ae..569084cca 100644 --- a/src/pretix/presale/templates/pretixpresale/fragment_day_calendar.html +++ b/src/pretix/presale/templates/pretixpresale/fragment_day_calendar.html @@ -92,7 +92,11 @@ {% if event.event.best_availability_is_low %} {% trans "Few tickets left" %} {% else %} - {% trans "Book now" %} + {% if event.event.has_paid_item %} + {% trans "Buy now" context "available_event_in_list" %} + {% else %} + {% trans "Book now" %} + {% endif %} {% endif %} {% elif event.event.settings.waiting_list_enabled and event.event.best_availability_state >= 0 %} {% trans "Waiting list" %} diff --git a/src/pretix/presale/templates/pretixpresale/fragment_week_calendar.html b/src/pretix/presale/templates/pretixpresale/fragment_week_calendar.html index 573822142..acbde9ce6 100644 --- a/src/pretix/presale/templates/pretixpresale/fragment_week_calendar.html +++ b/src/pretix/presale/templates/pretixpresale/fragment_week_calendar.html @@ -56,7 +56,11 @@ {% if event.event.best_availability_is_low %} {% trans "Few tickets left" %} {% else %} - {% trans "Book now" %} + {% if event.event.has_paid_item %} + {% trans "Buy now" context "available_event_in_list" %} + {% else %} + {% trans "Book now" %} + {% endif %} {% endif %} {% elif event.event.settings.waiting_list_enabled and event.event.best_availability_state >= 0 %} {% trans "Waiting list" %} diff --git a/src/pretix/presale/templates/pretixpresale/organizers/index.html b/src/pretix/presale/templates/pretixpresale/organizers/index.html index 588d765b0..ebbf2310a 100644 --- a/src/pretix/presale/templates/pretixpresale/organizers/index.html +++ b/src/pretix/presale/templates/pretixpresale/organizers/index.html @@ -84,7 +84,11 @@ {% if e.best_availability_is_low %} {% trans "Few tickets left" %} {% else %} - {% trans "Book now" %} + {% if e.has_paid_item %} + {% trans "Buy now" context "available_event_in_list" %} + {% else %} + {% trans "Book now" %} + {% endif %} {% endif %} {% elif e.settings.waiting_list_enabled and e.best_availability_state >= 0 %} {% trans "Waiting list" %} diff --git a/src/pretix/presale/views/widget.py b/src/pretix/presale/views/widget.py index 287a4ae8b..13ddb48eb 100644 --- a/src/pretix/presale/views/widget.py +++ b/src/pretix/presale/views/widget.py @@ -41,7 +41,7 @@ from django.template import Context, Engine from django.template.loader import get_template from django.utils.formats import date_format from django.utils.timezone import now -from django.utils.translation import get_language, gettext +from django.utils.translation import get_language, gettext, pgettext from django.utils.translation.trans_real import DjangoTranslation from django.views import View from django.views.decorators.cache import cache_page @@ -374,7 +374,10 @@ class WidgetAPIProductList(EventListMixin, View): availability['reason'] = 'low' else: availability['color'] = 'green' - availability['text'] = gettext('Book now') + if ev.has_paid_item: + availability['text'] = pgettext('available_event_in_list', 'Buy now') + else: + availability['text'] = gettext('Book now') availability['reason'] = 'ok' elif event.settings.waiting_list_enabled and (ev.best_availability_state is not None and ev.best_availability_state >= 0): availability['color'] = 'orange'