From 106516bfa936fcef51aebdd15d57f064adab293d Mon Sep 17 00:00:00 2001 From: Dorian Lesbre <dorian.lesbre@gmail.com> Date: Mon, 29 Mar 2021 17:55:36 +0200 Subject: [PATCH] Warning for malformed ActivityList table --- home/admin.py | 2 +- home/templates/admin.html | 10 ++++++++++ home/views.py | 14 +++++++------- 3 files changed, 18 insertions(+), 8 deletions(-) diff --git a/home/admin.py b/home/admin.py index 0d9b260..cd9858c 100644 --- a/home/admin.py +++ b/home/admin.py @@ -54,7 +54,7 @@ class ActivityListAdmin(ExportCsvMixin, admin.ModelAdmin): list_display = ("activity", "participant", "priority", "accepted") list_filter = ( "activity", "participant__is_registered", "activity__display", - "accepted", "activity__must_subscribe", + "accepted", "activity__subscribing_open", ) list_editable = ("accepted",) ordering = ("activity", "priority", "participant",) diff --git a/home/templates/admin.html b/home/templates/admin.html index 2ce70f3..6335a12 100644 --- a/home/templates/admin.html +++ b/home/templates/admin.html @@ -139,6 +139,10 @@ <div class="qty">Obtenus</div> <div class="nb_small">{{ metrics.granted }}</div> </div> + <div class="stat"> + <div class="qty">Malformé</div> + <div class="nb_small">{{ metrics.malformed }}</div> + </div> </div> <p>*Le nombre d'activité "inscription" est le nombre d'activités affichée (dans la liste de la page @@ -147,6 +151,12 @@ apparaître plusieures fois) </p> + {% if metrics.malformed %} + <ul class="messagelist"><li class="error"> + Des activités non ouvertes aux inscriptions apparaissent dans les listes de souhait. + </li></ul> + {% endif %} + <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 395b3a2..3facc96 100644 --- a/home/views.py +++ b/home/views.py @@ -155,6 +155,8 @@ class AdminView(SuperuserRequiredMixin, TemplateView): rennes = registered.filter(school="R").count() saclay = registered.filter(school="P").count() non_registered = EmailUser.objects.filter(is_active=True).count() - participants + # mugs = registered.filter(mug=True).count() + sleeps = registered.filter(sleeps=True).count() meal1 = registered.filter(meal_friday_evening=True).count() meal2 = registered.filter(meal_saturday_morning=True).count() @@ -164,21 +166,19 @@ class AdminView(SuperuserRequiredMixin, TemplateView): meal6 = registered.filter(meal_sunday_midday=True).count() meals = meal1 + meal2 + meal3 + meal4 + meal5 + meal6 - # mugs = registered.filter(mug=True).count() - sleeps = registered.filter(sleeps=True).count() - activites = acts.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(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() + true_ins = acts.filter(subscribing_open=True).count() + wish = wishes.count() + granted = wishes.filter(accepted=True).count() + malformed = ActivityList.objects.filter(activity__subscribing_open=False).count() + # validation de la repartition des activités accepted = wishes.filter(accepted=True) # order_by is useless but required -- GitLab