Display total hours played on homepage
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
This commit is contained in:
parent
fdb9aa8e84
commit
32f10e183e
|
@ -1,4 +1,5 @@
|
|||
## Unreleased
|
||||
* Display total hours played on homepage
|
||||
* Add format_duration to common.util.time
|
||||
* Allow deleting sessions
|
||||
* Redirect after adding game/platform/purchase/session
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
{% block content %}
|
||||
<div class="text-slate-300 mx-auto max-w-screen-lg text-center">
|
||||
{% if session_count > 0 %}
|
||||
You have played a total of {{ session_count }} sessions.
|
||||
You have played a total of {{ session_count }} sessions for a total of {{ total_duration }}.
|
||||
{% else %}
|
||||
Start by clicking the links at the top. To track playtime, you need to have at least 1 owned game.
|
||||
{% endif %}
|
||||
|
|
|
@ -5,7 +5,8 @@ from .forms import SessionForm, PurchaseForm, GameForm, PlatformForm
|
|||
from datetime import datetime
|
||||
from zoneinfo import ZoneInfo
|
||||
from django.conf import settings
|
||||
from common.util.time import now as now_with_tz
|
||||
from common.util.time import now as now_with_tz, format_duration
|
||||
from django.db.models import Sum
|
||||
|
||||
|
||||
def model_counts(request):
|
||||
|
@ -102,4 +103,9 @@ def add_platform(request):
|
|||
|
||||
def index(request):
|
||||
context = {}
|
||||
result = Session.objects.all().aggregate(Sum("duration_calculated"))
|
||||
context["total_duration"] = format_duration(
|
||||
result["duration_calculated__sum"], "%H hours %m minutes"
|
||||
)
|
||||
context["title"] = "Index"
|
||||
return render(request, "index.html", context)
|
||||
|
|
Loading…
Reference in New Issue