]> git.parisson.com Git - teleforma.git/commitdiff
Fixed regression on special case for pending scripts
authorGael Le Mignot <gael@pilotsystems.net>
Tue, 27 Nov 2018 15:47:57 +0000 (16:47 +0100)
committerGael Le Mignot <gael@pilotsystems.net>
Tue, 27 Nov 2018 15:47:57 +0000 (16:47 +0100)
teleforma/exam/views.py
teleforma/templatetags/teleforma_tags.py

index b0e61918bd9080b9b78fa19fbf416e4524adba9b..5d8304cbbe1ecc4e18da4dddc300cd2ffb8aedcd 100755 (executable)
@@ -180,8 +180,8 @@ class ScriptsPendingView(ScriptsView):
         
         if self.request.GET.get('corrector') is None:
             user = self.request.user
-            # Exclude status=3 but not author=user
-            qs = qs.filter(~Q(status=3) | Q(author=user))
+            # Exclude status=2 but not author=user
+            qs = qs.filter(~Q(status=2) | Q(author=user))
 
         return qs
 
index 304feb45b3e67bff169363a9fad0e64b09634407..1e57ba8aa38260e16038395cfa17690c43ca9006 100644 (file)
@@ -216,27 +216,25 @@ def published(doc):
     if doc:
         return doc.filter(is_published=True)
 
-@register.simple_tag
-def untreated_scripts_count(user, period):
-    Q1 = Q(status=3, author=user, period=period)
-    Q2 = Q(status=3, corrector=user, period=period)
-    scripts = Script.objects.filter(Q1 | Q2)
+def scripts_count(user, period, statuses):
+    if not period:
+        return ''
+    Q1 = Q(author=user)
+    Q2 = Q(corrector=user)
+    scripts = Script.objects.filter(Q1 | Q2).filter(status__in = statuses,
+                                                    period = period)
     if scripts:
         return ' (' + str(len(scripts)) + ')'
     else:
         return ''
+    
+@register.simple_tag
+def untreated_scripts_count(user, period):
+    return scripts_count(user, period, (3,))
 
 @register.simple_tag
 def treated_scripts_count(user, period):
-    if not period:
-        return ''
-    Q1 = Q(status=4, author=user, period=period)
-    Q2 = Q(status=4, corrector=user, period=period)
-    scripts = Script.objects.filter(Q1 | Q2)
-    if scripts:
-        return ' (' + str(len(scripts)) + ')'
-    else:
-        return ''
+    return scripts_count(user, period, (4,))
 
 @register.simple_tag
 def get_training_profile(user):