forked from CGM_Public/pretix_original
Display event selection within iframes
This commit is contained in:
@@ -1,9 +1,16 @@
|
||||
{% load i18n %}
|
||||
{% load eventurl %}
|
||||
<form class="form-inline" method="get" id="monthselform" action="{% eventurl event "presale:event.index" %}">
|
||||
{% load urlreplace %}
|
||||
<form class="form-inline" method="get" id="monthselform" action="{% eventurl event "presale:event.index" cart_namespace=cart_namespace %}">
|
||||
{% for f, v in request.GET.items %}
|
||||
{% if f != "month" and f != "year" %}
|
||||
<input type="hidden" name="{{ f }}" value="{{ v }}">
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
<div class="row">
|
||||
<div class="col-sm-4 hidden-xs">
|
||||
<a href="{% eventurl event "presale:event.index" %}?year={{ before.year }}&month={{ before.month }}" class="btn btn-default">
|
||||
<a href="?{% url_replace request "year" before.year "month" before.month %}"
|
||||
class="btn btn-default">
|
||||
<span class="fa fa-arrow-left"></span>
|
||||
{{ before|date:"F Y" }}
|
||||
</a>
|
||||
@@ -24,7 +31,7 @@
|
||||
</button>
|
||||
</div>
|
||||
<div class="col-sm-4 hidden-xs text-right">
|
||||
<a href="{% eventurl event "presale:event.index" %}?year={{ after.year }}&month={{ after.month }}" class="btn btn-default">
|
||||
<a href="?{% url_replace request "year" after.year "month" after.month %}" class="btn btn-default">
|
||||
<span class="fa fa-arrow-right"></span>
|
||||
{{ after|date:"F Y" }}
|
||||
</a>
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
{% load i18n %}
|
||||
{% load eventurl %}
|
||||
{% for subev in event.active_future_subevents %}
|
||||
<a href="{% eventurl event "presale:event.index" subevent=subev.id %}" class="subevent-row">
|
||||
<a href="{% eventurl event "presale:event.index" subevent=subev.id cart_namespace=cart_namespace %}"
|
||||
class="subevent-row">
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<strong>{{ subev.name }}</strong>
|
||||
|
||||
@@ -81,7 +81,7 @@
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% if event.has_subevents and not cart_namespace %}
|
||||
{% if show_dates %}
|
||||
{% if subevent %}
|
||||
<a class="subevent-toggle">
|
||||
{% trans "View other date" %}
|
||||
@@ -90,7 +90,7 @@
|
||||
<h3>{% trans "Choose date to buy a ticket" %}</h3>
|
||||
{% endif %}
|
||||
<div class="subevent-list">
|
||||
{% if event.settings.event_list_type == "calendar" %}
|
||||
{% if list_type == "calendar" %}
|
||||
{% include "pretixpresale/event/fragment_subevent_calendar.html" %}
|
||||
{% else %}
|
||||
{% include "pretixpresale/event/fragment_subevent_list.html" %}
|
||||
|
||||
@@ -241,7 +241,9 @@ class EventIndex(EventViewMixin, CartMixin, TemplateView):
|
||||
else:
|
||||
context['frontpage_text'] = str(self.request.event.settings.frontpage_text)
|
||||
|
||||
if self.request.event.settings.event_list_type == "calendar":
|
||||
context['list_type'] = self.request.GET.get("style", self.request.event.settings.event_list_type)
|
||||
|
||||
if context['list_type'] == "calendar":
|
||||
self._set_month_year()
|
||||
tz = pytz.timezone(self.request.event.settings.timezone)
|
||||
_, ndays = calendar.monthrange(self.year, self.month)
|
||||
@@ -253,7 +255,8 @@ class EventIndex(EventViewMixin, CartMixin, TemplateView):
|
||||
context['after'] = after
|
||||
|
||||
ebd = defaultdict(list)
|
||||
add_subevents_for_days(self.request.event.subevents.all(), before, after, ebd, set(), self.request.event)
|
||||
add_subevents_for_days(self.request.event.subevents.all(), before, after, ebd, set(), self.request.event,
|
||||
kwargs.get('cart_namespace'))
|
||||
|
||||
context['weeks'] = weeks_for_template(ebd, self.year, self.month)
|
||||
context['months'] = [date(self.year, i + 1, 1) for i in range(12)]
|
||||
@@ -264,6 +267,12 @@ class EventIndex(EventViewMixin, CartMixin, TemplateView):
|
||||
self.request.event.has_subevents or self.request.event.presale_is_running
|
||||
)
|
||||
)
|
||||
context['show_dates'] = (
|
||||
self.request.event.has_subevents and (
|
||||
'cart_namespace' not in self.kwargs
|
||||
or not self.subevent
|
||||
)
|
||||
)
|
||||
|
||||
return context
|
||||
|
||||
|
||||
@@ -151,7 +151,7 @@ def add_events_for_days(request, organizer, before, after, ebd, timezones):
|
||||
})
|
||||
|
||||
|
||||
def add_subevents_for_days(qs, before, after, ebd, timezones, event=None):
|
||||
def add_subevents_for_days(qs, before, after, ebd, timezones, event=None, cart_namespace=None):
|
||||
qs = qs.filter(active=True).filter(
|
||||
Q(Q(date_to__gte=before) & Q(date_from__lte=after)) |
|
||||
Q(Q(date_from__lte=after) & Q(date_to__gte=before)) |
|
||||
@@ -160,6 +160,10 @@ def add_subevents_for_days(qs, before, after, ebd, timezones, event=None):
|
||||
'date_from'
|
||||
)
|
||||
for se in qs:
|
||||
kwargs = {'subevent': se.pk}
|
||||
if cart_namespace:
|
||||
kwargs['cart_namespace'] = cart_namespace
|
||||
|
||||
settings = event.settings if event else se.event.settings
|
||||
timezones.add(settings.timezones)
|
||||
tz = pytz.timezone(settings.timezone)
|
||||
@@ -175,9 +179,7 @@ def add_subevents_for_days(qs, before, after, ebd, timezones, event=None):
|
||||
'timezone': settings.timezone,
|
||||
'time': datetime_from.time().replace(tzinfo=None) if first and settings.show_times else None,
|
||||
'event': se,
|
||||
'url': eventreverse(se.event, 'presale:event.index', kwargs={
|
||||
'subevent': se.pk
|
||||
}),
|
||||
'url': eventreverse(se.event, 'presale:event.index', kwargs=kwargs)
|
||||
})
|
||||
d += timedelta(days=1)
|
||||
|
||||
@@ -186,9 +188,7 @@ def add_subevents_for_days(qs, before, after, ebd, timezones, event=None):
|
||||
'event': se,
|
||||
'continued': False,
|
||||
'time': datetime_from.time().replace(tzinfo=None) if se.event.settings.show_times else None,
|
||||
'url': eventreverse(se.event, 'presale:event.index', kwargs={
|
||||
'subevent': se.pk
|
||||
}),
|
||||
'url': eventreverse(se.event, 'presale:event.index', kwargs=kwargs),
|
||||
'timezone': se.event.settings.timezone,
|
||||
})
|
||||
|
||||
|
||||
Reference in New Issue
Block a user