Skip to content
Snippets Groups Projects
Commit b1c06ac9 authored by Ernesto Rico Schmidt's avatar Ernesto Rico Schmidt
Browse files

added filtering to the show list view.

parent 1ea3eeb4
No related branches found
No related tags found
No related merge requests found
from django.views.generic.list import ListView
from django.shortcuts import get_object_or_404
from models import BroadcastFormat, MusicFocus, Note, Show, ShowInformation, ShowTopic
......@@ -6,7 +7,6 @@ from datetime import datetime, timedelta
class ShowListView(ListView):
context_object_name = 'show_list'
model = Show
def get_context_data(self, **kwargs):
context = super(ShowListView, self).get_context_data(**kwargs)
......@@ -17,7 +17,27 @@ class ShowListView(ListView):
context['showtopic_list'] = ShowTopic.objects.all()
return context
def get_queryset(self):
if 'broadcastformat' in self.request.GET:
broadcastformat = get_object_or_404(BroadcastFormat, slug=self.request.GET['broadcastformat'])
return Show.objects.filter(broadcastformat=broadcastformat)
elif 'musicfocus' in self.request.GET:
musicfocus = get_object_or_404(MusicFocus, slug=self.request.GET['musicfocus'])
return Show.objects.filter(musicfocus=musicfocus)
elif 'showinformation' in self.request.GET:
showinformation = get_object_or_404(ShowInformation, slug=self.request.GET['showinformation'])
return Show.objects.filter(showinformation=showinformation)
elif 'showtopic' in self.request.GET:
showtopic = get_object_or_404(ShowTopic, slug=self.request.GET['showtopic'])
return Show.objects.filter(showtopic=showtopic)
else:
return Show.objects.all()
class RecommendationsView(ListView):
context_object_name = 'recommendations'
template_name = 'program/recommendations.html'
......@@ -26,4 +46,4 @@ class RecommendationsView(ListView):
now = datetime.now()
in_one_week = now + timedelta(weeks=1)
return Note.objects.filter(status=1, timeslot__start__range=(now, in_one_week))[:10]
\ No newline at end of file
return Note.objects.filter(status=1, timeslot__start__range=(now, in_one_week))[:10]
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment