diff --git a/CHANGELOG.md b/CHANGELOG.md
index 1070c9b..79c4159 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,8 @@
+## Unreleased
+
+### Improved
+* game overview: simplify playtime range display
+
## 1.3.0 / 2023-11-05 15:09+01:00
### New
diff --git a/games/templates/view_game.html b/games/templates/view_game.html
index 8ba3f3c..2576503 100644
--- a/games/templates/view_game.html
+++ b/games/templates/view_game.html
@@ -15,9 +15,7 @@
{{ total_hours }} total
{{ session_average }} avg
- ({{ first_session.timestamp_start | date:"M Y"}}
- —
- {{ last_session.timestamp_start | date:"M Y"}})
+ ({{ playrange }})
Editions ({{ editions.count }})
diff --git a/games/views.py b/games/views.py
index 72be5d2..0a4c210 100644
--- a/games/views.py
+++ b/games/views.py
@@ -137,8 +137,15 @@ def view_game(request, game_id=None):
# here first and last is flipped
# because sessions are ordered from newest to oldest
# so the most recent are on top
- context["last_session"] = context["sessions"].first()
- context["first_session"] = context["sessions"].last()
+ playrange_start = context["sessions"].last().timestamp_start.strftime("%b %Y")
+ playrange_end = context["sessions"].first().timestamp_start.strftime("%b %Y")
+
+ context["playrange"] = (
+ playrange_start
+ if playrange_start == playrange_end
+ else f"{playrange_start} — {playrange_end}"
+ )
+
context["sessions_with_notes"] = context["sessions"].exclude(note="")
request.session["return_path"] = request.path
return render(request, "view_game.html", context)