Redesign the management home page's KPIs and charts

Drop renewal rate from the top KPI bar; split "Upcoming events" in half
and add a "News" overview beside it (published items only, everyone
can see it, same as events). Signups-per-month, club fee status, and
renewal rate (now a pie chart matching the fee status one, not a bare
stat box) move into their own row and become admin-only like the fee
chart already was. The bottom stat-group row now sizes its columns to
how many groups actually render, instead of leaving a blank slot where
Shop would be for non-admins.
This commit is contained in:
2026-08-03 22:40:06 +02:00
parent 92686b0755
commit 18e3b0306d
4 changed files with 167 additions and 80 deletions

View File

@@ -52,7 +52,8 @@ class HomeView(ClubStaffRequiredMixin, TemplateView):
"""The at-a-glance numbers a club admin/team manager/coach would actually want:
club_attention/club_charts/club_statistics are the exact functions
controlpanel/club_detail.html uses for the platform admin's per-club drill-down --
already club-scoped, so directly reusable for this club's own staff."""
already club-scoped, so directly reusable for this club's own staff. Published
news sits alongside upcoming events -- open to everyone here, same as events."""
template_name = "management/home.html"
@@ -63,6 +64,7 @@ class HomeView(ClubStaffRequiredMixin, TemplateView):
charts=club_charts(club),
groups=club_statistics(club),
upcoming_events=Event.objects.filter(club=club, start__gte=timezone.now()).order_by("start")[:5],
published_news=News.objects.filter(club=club, status=News.Status.PUBLISHED, published_at__lte=timezone.now()).order_by("-published_at")[:5],
today=timezone.localdate(),
**kwargs,
)