dav_registration: change filter button logic from select buttons to OR
All checks were successful
buildbot/django-dav-events--test Build done.

This commit is contained in:
2023-07-12 10:06:01 +02:00
parent 811983abfe
commit b86708598f
3 changed files with 59 additions and 49 deletions

View File

@@ -51,21 +51,16 @@ class EventListView(generic.ListView):
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
if hasattr(self, 'init_sport_filter'):
context['init_sport_filter'] = self.init_sport_filter
if hasattr(self, 'init_level_filter'):
context['init_level_filter'] = self.init_level_filter
if hasattr(self, 'init_filter'):
context['init_filter'] = self.init_filter
return context
def get(self, request, *args, **kwargs):
if 'sport' in request.GET:
sport = request.GET['sport']
if (sport, 'Bogus') in SPORT_CHOICES:
self.init_sport_filter = sport
if 'level' in request.GET:
level = request.GET['level']
if (level, 'Bogus') in LEVEL_CHOICES:
self.init_level_filter = level
if 'filter' in request.GET:
choices = SPORT_CHOICES.codes + LEVEL_CHOICES.codes
filter_input = request.GET['filter'].split(',')
filter_cleaned = list(set(filter_input) & set(choices))
self.init_filter = filter_cleaned
return super().get(request, *args, **kwargs)