From 86f15cd9c01ea4984cefd9f9174d6709a5773222 Mon Sep 17 00:00:00 2001
From: Dorian Lesbre <dorian.lesbre@gmail.com>
Date: Mon, 29 Mar 2021 16:20:10 +0200
Subject: [PATCH] Fix metrics to reflect latest changes

---
 home/templates/admin.html | 33 +++++++++++++++++++++++++++------
 home/views.py             | 11 +++++++----
 2 files changed, 34 insertions(+), 10 deletions(-)

diff --git a/home/templates/admin.html b/home/templates/admin.html
index 2059331..2ce70f3 100644
--- a/home/templates/admin.html
+++ b/home/templates/admin.html
@@ -101,16 +101,16 @@
 			<div class="nb_big">{{ metrics.activites }}</div>
 		</div>
 		<div class="stat">
-			<div class="qty">Sur inscription</div>
-			<div class="nb_small">{{ metrics.act_ins }}</div>
+			<div class="qty">Affichées</div>
+			<div class="nb_small">{{ metrics.displayed }}</div>
 		</div>
 		<div class="stat">
-			<div class="qty">Souhaits</div>
-			<div class="nb_small">{{ metrics.wish }}</div>
+			<div class="qty">Planning</div>
+			<div class="nb_small">{{ metrics.planning }}</div>
 		</div>
 		<div class="stat">
-			<div class="qty">Obtenus</div>
-			<div class="nb_small">{{ metrics.granted }}</div>
+			<div class="qty">Inscription*</div>
+			<div class="nb_small">{{ metrics.act_ins }}</div>
 		</div>
 		<div class="stat">
 			<div class="qty">Présentiel</div>
@@ -126,6 +126,27 @@
 		</div>
 	</div>
 
+	<div class="flex wrap lines">
+		<div class="stat">
+			<div class="qty">Créneaux*</div>
+			<div class="nb_big">{{ metrics.true_ins }}</div>
+		</div>
+		<div class="stat">
+			<div class="qty">Souhaits</div>
+			<div class="nb_small">{{ metrics.wish }}</div>
+		</div>
+		<div class="stat">
+			<div class="qty">Obtenus</div>
+			<div class="nb_small">{{ metrics.granted }}</div>
+		</div>
+	</div>
+
+	<p>*Le nombre d'activité "inscription" est le nombre d'activités affichée (dans la liste de la page
+		<a href="{% url 'activites' %}">activités</a>), tandis que le nombre de Créneaux est le nombre d'activités
+		qui apparaissent dans la liste du formulaire d'inscription (une activité avec plusieurs créneaux peut y
+		apparaître plusieures fois)
+	</p>
+
 	<h2>Répartition des activités</h2>
 
 	<p>La répartition se fait depuis la <a href="{% url 'admin:index' %}">page d'administration de django</a>,
diff --git a/home/views.py b/home/views.py
index 77de3a7..395b3a2 100644
--- a/home/views.py
+++ b/home/views.py
@@ -168,13 +168,16 @@ class AdminView(SuperuserRequiredMixin, TemplateView):
 			sleeps = registered.filter(sleeps=True).count()
 
 			activites = acts.count()
-			act_ins = acts.filter(must_subscribe=True).count()
+			displayed = acts.filter(display=True).count()
+			planning = acts.filter(on_planning=True).count()
+			act_ins = acts.filter(display=True, must_subscribe=True).count()
+			true_ins = acts.filter(subscribing_open=True).count()
 			wish = wishes.count()
 			granted = wishes.filter(accepted=True).count()
 
-			st_present = acts.filter(status=InterludesActivity.Status.PRESENT).count()
-			st_distant = acts.filter(status=InterludesActivity.Status.DISTANT).count()
-			st_both = acts.filter(status=InterludesActivity.Status.BOTH).count()
+			st_present = acts.filter(display=True, status=InterludesActivity.Status.PRESENT).count()
+			st_distant = acts.filter(display=True, status=InterludesActivity.Status.DISTANT).count()
+			st_both = acts.filter(display=True, status=InterludesActivity.Status.BOTH).count()
 
 		# validation de la repartition des activités
 		accepted = wishes.filter(accepted=True)
-- 
GitLab