From 2bcb0b0ac15a8a217db7932eb5cdaa90bb2ac51b Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Sat, 28 Oct 2017 21:54:00 +0200 Subject: [PATCH] Add event meta filter to organizer page --- src/pretix/base/models/event.py | 2 +- src/pretix/base/templatetags/urlreplace.py | 16 ++- .../pretixpresale/organizers/calendar.html | 20 ++-- .../pretixpresale/organizers/index.html | 11 +- src/pretix/presale/views/organizer.py | 106 +++++++++++++++--- src/tests/presale/test_organizer_page.py | 73 ++++++++++++ 6 files changed, 193 insertions(+), 35 deletions(-) diff --git a/src/pretix/base/models/event.py b/src/pretix/base/models/event.py index 16b3d3e002..9ab807b793 100644 --- a/src/pretix/base/models/event.py +++ b/src/pretix/base/models/event.py @@ -667,7 +667,7 @@ class EventMetaProperty(LoggedModel): name = models.CharField( max_length=50, db_index=True, help_text=_( - "Can not contain spaces or special characters execpt underscores" + "Can not contain spaces or special characters except underscores" ), validators=[ RegexValidator( diff --git a/src/pretix/base/templatetags/urlreplace.py b/src/pretix/base/templatetags/urlreplace.py index cd9e794875..1dc6785701 100644 --- a/src/pretix/base/templatetags/urlreplace.py +++ b/src/pretix/base/templatetags/urlreplace.py @@ -4,7 +4,17 @@ register = template.Library() @register.simple_tag -def url_replace(request, field, value): +def url_replace(request, *pairs): dict_ = request.GET.copy() - dict_[field] = value - return dict_.urlencode() + key = None + for p in pairs: + if key is None: + key = p + else: + if p == "": + if key in dict_: + del dict_[key] + else: + dict_[key] = p + key = None + return dict_.urlencode(safe='[]') diff --git a/src/pretix/presale/templates/pretixpresale/organizers/calendar.html b/src/pretix/presale/templates/pretixpresale/organizers/calendar.html index 163516cd6a..26a722cdb3 100644 --- a/src/pretix/presale/templates/pretixpresale/organizers/calendar.html +++ b/src/pretix/presale/templates/pretixpresale/organizers/calendar.html @@ -2,6 +2,7 @@ {% load i18n %} {% load rich_text %} {% load eventurl %} +{% load urlreplace %} {% block title %}{% trans "Event overview" %}{% endblock %} {% block content %} {% if organizer_homepage_text %} @@ -11,21 +12,26 @@ {% endif %}

{{ date|date:"F Y" }}

- + {% for f, v in request.GET.items %} + {% if f != "month" and f != "year" %} + + {% endif %} + {% endfor %}