From: Chris Fulljames Date: Sun, 13 Apr 2025 18:42:51 +0000 (-0400) Subject: Fix jam event lists X-Git-Url: https://littlesong.place/gitweb/?a=commitdiff_plain;h=5f1b677c1a30da65b8ba2d2ddb9b193a2903ab54;p=littlesongplace.git Fix jam event lists --- diff --git a/src/littlesongplace/jams.py b/src/littlesongplace/jams.py index dfc19de..3aa5534 100644 --- a/src/littlesongplace/jams.py +++ b/src/littlesongplace/jams.py @@ -25,11 +25,12 @@ def jam_owner_only(f): def _sort_events(events): now = datetime.now(timezone.utc) # Only show events with valid timestamps - events = [e for e in events if e.startdate and e.enddate] - ongoing_events = [e for e in events if e.startdate <= now and e.enddate >= now] - upcoming_events = [e for e in events if e.startdate > now] - past_events = [e for e in events if e.enddate < now] - return ongoing_events, upcoming_events, past_events + timed_events = [e for e in events if e.startdate and e.enddate] + ongoing_events = [e for e in timed_events if e.startdate <= now and e.enddate >= now] + upcoming_events = [e for e in timed_events if e.startdate > now] + past_events = [e for e in timed_events if e.enddate < now] + other_events = [e for e in events if e not in timed_events] + return ongoing_events, upcoming_events, past_events, other_events @bp.get("") def jams(): @@ -46,9 +47,7 @@ def jams(): all_events.extend(j.events) # Only show events with valid timestamps - all_events = [e for e in all_events if e.startdate and e.enddate] - - ongoing_events, upcoming_events, past_events = _sort_events(all_events) + ongoing_events, upcoming_events, past_events, _ = _sort_events(all_events) past_events = past_events[-5:] # Only show 5 most recent events # TODO: Sort into groups based on start/end dates @@ -79,13 +78,13 @@ def create(): @bp.get("/") def jam(jamid): jam = _get_jam_by_id(jamid) - ongoing_events, upcoming_events, past_events = _sort_events(jam.events) + ongoing_events, upcoming_events, past_events, other_events = _sort_events(jam.events) # Show the main jam page return render_template( "jam.html", jam=jam, ongoing=ongoing_events, - upcoming=upcoming_events, + upcoming=upcoming_events+other_events, # Show events without timestamps as upcoming past=past_events) diff --git a/src/littlesongplace/templates/jam-event-list.html b/src/littlesongplace/templates/jam-event-list.html index 0e6a802..715b2b7 100644 --- a/src/littlesongplace/templates/jam-event-list.html +++ b/src/littlesongplace/templates/jam-event-list.html @@ -1,6 +1,6 @@ {% macro jam_event_list(list_title, events) %} {% if events %} -

{{ list_title }}

+

{{ list_title }}

{% for event in events %}
diff --git a/src/littlesongplace/templates/jam.html b/src/littlesongplace/templates/jam.html index 776d7b5..2020331 100644 --- a/src/littlesongplace/templates/jam.html +++ b/src/littlesongplace/templates/jam.html @@ -16,6 +16,11 @@ {{ jam.description }}
+

Events

+{%- if jam.ownerid == session["userid"] -%} + +{%- endif -%} + {% from "jam-event-list.html" import jam_event_list %} {{ jam_event_list("Ongoing Events", ongoing) }} {{ jam_event_list("Upcoming Events", upcoming) }} diff --git a/src/littlesongplace/templates/jams-main.html b/src/littlesongplace/templates/jams-main.html index 397d357..a1829d1 100644 --- a/src/littlesongplace/templates/jams-main.html +++ b/src/littlesongplace/templates/jams-main.html @@ -6,23 +6,17 @@

Jams

+

Events

{% from "jam-event-list.html" import jam_event_list %} {{ jam_event_list("Ongoing Events", ongoing) }} {{ jam_event_list("Upcoming Events", upcoming) }} {{ jam_event_list("Recent Events", past) }}

All Jams

-
- {% for jam in jams %} -
- - {{ jam.title }} - - - Hosted by {{ jam.username }} - -
- {% endfor %} -
+ {% endblock %} diff --git a/src/littlesongplace/templates/song-list.html b/src/littlesongplace/templates/song-list.html index 20831c1..c2a85b9 100644 --- a/src/littlesongplace/templates/song-list.html +++ b/src/littlesongplace/templates/song-list.html @@ -9,7 +9,7 @@
{% for song in songs %} - {%- if not (song.hidden and g.uiserid != song.userid) -%} + {%- if not (song.hidden and session['uiserid'] != song.userid) -%}