Skip to content

Commit 2333ade

Browse files
committed
Fix event filtering; add placeholder for no events
1 parent 8dfdb32 commit 2333ade

2 files changed

Lines changed: 28 additions & 9 deletions

File tree

templates/home.html

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,18 @@ <h2 class="display-2">{{ this.title }}</h2>
5353
</script>
5454
{% endblock %}
5555

56+
{% set gold_members = site.query('/community/members', alt=this.alt).filter(F.level=='gold') %}
57+
58+
{# This *should* be as simple as filter((F.date >= today).or(F.end_date >= today)).
59+
But this doesn't work correctly, due to inconsistent handling of missing values. #}
60+
{% set all_events = site.query('/news/events', alt=this.alt).order_by('date') %}
61+
{% set ongoing = all_events.filter(F.date < today).filter(F.end_date >= today).all() %}
62+
{% set not_started = all_events.filter(F.date >= today).all() %}
63+
{% set events = (ongoing + not_started)[:3] %}
64+
65+
{% set blog = site.query('/news/buzz', alt=this.alt).first() %}
66+
{% set project_types = site.query('/project', alt=this.alt) %}
67+
5668
{% block body %}
5769
<!-- MD and Larger Project List -->
5870
<div class="row">
@@ -72,11 +84,6 @@ <h2 class="display-2">{{ this.title }}</h2>
7284
{% endfor %}
7385
</div><!-- / main content -->
7486

75-
{% set gold_members = site.query('/community/members', alt=this.alt).filter(F.level=='gold') %}
76-
{% set events = site.query('/news/events', alt=this.alt).filter(F.date >= today or F.end_date >= today).order_by('date') %}
77-
{% set blog = site.query('/news/buzz', alt=this.alt).first() %}
78-
{% set project_types = site.query('/project', alt=this.alt) %}
79-
8087
<div class="d-none d-sm-block col-sm-4">
8188
<div class="sidebar-module sidebar-module-inset gutter">
8289
{% include "home_sidebar.html"%}

templates/news.html

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,17 @@
2222
</script>
2323
{% endblock %}
2424

25-
{% block body %}
2625
{% set blog = site.query('/news/buzz', alt=this.alt).all() %}
27-
{% set events = site.query('/news/events', alt=this.alt).filter(F.date >= today or F.end_date >= today).order_by('date') %}
26+
27+
{# This *should* be as simple as filter((F.date >= today).or(F.end_date >= today)).
28+
But this doesn't work correctly, due to inconsistent handling of missing values. #}
29+
30+
{% set all_events = site.query('/news/events', alt=this.alt).order_by('date') %}
31+
{% set ongoing = all_events.filter(F.date < today).filter(F.end_date >= today).all() %}
32+
{% set not_started = all_events.filter(F.date >= today).all() %}
33+
{% set events = ongoing + not_started %}
34+
35+
{% block body %}
2836
<div class="row">
2937
<div class="col-md-12 col-lg-8">
3038
{% for child in blog[:10] %}
@@ -44,11 +52,15 @@ <h3><a href="{{ child|url(alt=this.alt) }}">{{ child.title }}</a></h3>
4452
</div>
4553
<div class="col-md-12 col-lg-4 gutter">
4654
{{ this.gutter }}
55+
{% if events %}
4756
<ul>
48-
{% for child in events %}
49-
<li class="upcoming event" data-date="{{ child.date }}" data-end-date="{{ child.end_date or child.date }}">{{ child.date|datetimeformat("MMMM d, YYYY", locale=this.alt)|title }}{% if child.end_date %} - {{child.end_date|datetimeformat("MMMM d, YYYY", locale=this.alt)|title}}{% endif %}: <a href="{{ child|url(alt=this.alt) }}">{{ child.title }} {{ child.event_type}}</a></li>
57+
{% for event in events %}
58+
<li class="upcoming event" data-date="{{ event.date }}" data-end-date="{{ event.end_date or event.date }}">{{ event.date|datetimeformat("MMMM d, YYYY", locale=this.alt)|title }}{% if event.end_date %} - {{event.end_date|datetimeformat("MMMM d, YYYY", locale=this.alt)|title}}{% endif %}: <a href="{{ event|url(alt=this.alt) }}">{{ event.title }} {{ event.event_type}}</a></li>
5059
{% endfor %}
5160
</ul>
61+
{% else %}
62+
<p>None currently planned...</p>
63+
{% endif %}
5264
<p><a href="{{ '/news/events'|url(alt=this.alt) }}">See all events</a></p>
5365
</div>
5466
</div>

0 commit comments

Comments
 (0)