From 2d3362ac7c4cf356e180403a8f9217cb49594a67 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 10 Apr 2014 13:07:24 +0200 Subject: Add an option to display all events on front page --- chimere/settings.sample.py | 4 ++++ chimere/templatetags/chimere_tags.py | 10 +++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/chimere/settings.sample.py b/chimere/settings.sample.py index 9afa90f..d0ffc42 100644 --- a/chimere/settings.sample.py +++ b/chimere/settings.sample.py @@ -52,6 +52,10 @@ CHIMERE_DISPLAY_AREAS = True # don't forget to run the upgrade.py script to create appropriate fields in # the database CHIMERE_DAYS_BEFORE_EVENT = 30 +# Dated events must usualy be checked as 'front page' to be displayed +# on front page - set CHIMERE_ALL_DATED_ARE_FRONT to True if you want to +# display all events on front page +CHIMERE_ALL_DATED_ARE_FRONT = False # allow feeds CHIMERE_FEEDS = True diff --git a/chimere/templatetags/chimere_tags.py b/chimere/templatetags/chimere_tags.py index 4f3dff0..a58d045 100644 --- a/chimere/templatetags/chimere_tags.py +++ b/chimere/templatetags/chimere_tags.py @@ -51,9 +51,13 @@ def get_news(area=None): # Retrieve active markers today = date.today() after = today + timedelta(settings.CHIMERE_DAYS_BEFORE_EVENT) - q = Marker.objects.filter(status='A').filter(start_date__lte=after, - is_front_page=True).filter(Q(end_date__gte=today)| - (Q(end_date__isnull=True) & Q(start_date__gte=today))) + q = Marker.objects.filter(status='A') + if not'CHIMERE_ALL_DATED_ARE_FRONT' in dir(settings)\ + or not settings.get('CHIMERE_ALL_DATED_ARE_FRONT'): + q = q.filter(is_front_page=True) + q = q.filter(start_date__lte=after, is_front_page=True + ).filter(Q(end_date__gte=today)| + (Q(end_date__isnull=True) & Q(start_date__gte=today))) if area: q = q.filter(area.getIncludeMarker()) news += list(q) -- cgit v1.2.3