From 275d162b81adc39b685ed238361c061f29741ee1 Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Sat, 8 Jul 2017 22:50:48 +0200 Subject: [PATCH] List of events: Optional calendar view --- src/pretix/base/settings.py | 4 + src/pretix/base/validators.py | 1 + src/pretix/control/forms/organizer.py | 8 ++ .../pretixcontrol/organizers/edit.html | 1 + src/pretix/multidomain/maindomain_urlconf.py | 2 +- src/pretix/multidomain/subdomain_urlconf.py | 2 +- .../pretixpresale/organizers/calendar.html | 99 ++++++++++++++++ src/pretix/presale/urls.py | 6 + src/pretix/presale/views/organizer.py | 111 +++++++++++++++++- .../static/pretixpresale/scss/_calendar.scss | 36 ++++++ .../static/pretixpresale/scss/main.scss | 1 + 11 files changed, 267 insertions(+), 4 deletions(-) create mode 100644 src/pretix/presale/templates/pretixpresale/organizers/calendar.html create mode 100644 src/pretix/static/pretixpresale/scss/_calendar.scss diff --git a/src/pretix/base/settings.py b/src/pretix/base/settings.py index 3979ce9ff..9116547e0 100644 --- a/src/pretix/base/settings.py +++ b/src/pretix/base/settings.py @@ -175,6 +175,10 @@ DEFAULTS = { 'default': 'True', 'type': bool }, + 'event_list_type': { + 'default': 'list', + 'type': str + }, 'last_order_modification_date': { 'default': None, 'type': datetime diff --git a/src/pretix/base/validators.py b/src/pretix/base/validators.py index cae0b6555..d5f8c3fa6 100644 --- a/src/pretix/base/validators.py +++ b/src/pretix/base/validators.py @@ -31,6 +31,7 @@ class EventSlugBlacklistValidator(BlacklistValidator): '_global', '__debug__', 'api', + 'events', ] diff --git a/src/pretix/control/forms/organizer.py b/src/pretix/control/forms/organizer.py index 6549b60e1..833f6792f 100644 --- a/src/pretix/control/forms/organizer.py +++ b/src/pretix/control/forms/organizer.py @@ -126,3 +126,11 @@ class OrganizerSettingsForm(SettingsForm): help_text=_('If you provide a logo image, we will by default not show your organization name ' 'in the page header. We will show your logo with a maximal height of 120 pixels.') ) + + event_list_type = forms.ChoiceField( + label=_('Event overview stile'), + choices=( + ('list', _('List')), + ('calendar', _('Calendar')) + ) + ) diff --git a/src/pretix/control/templates/pretixcontrol/organizers/edit.html b/src/pretix/control/templates/pretixcontrol/organizers/edit.html index 477fd4ab2..8391d7fd3 100644 --- a/src/pretix/control/templates/pretixcontrol/organizers/edit.html +++ b/src/pretix/control/templates/pretixcontrol/organizers/edit.html @@ -21,6 +21,7 @@ {% bootstrap_field sform.locales layout="horizontal" %} {% bootstrap_field sform.organizer_logo_image layout="horizontal" %} {% bootstrap_field sform.organizer_homepage_text layout="horizontal" %} + {% bootstrap_field sform.event_list_type layout="horizontal" %}