Browse Source

Added counter block to questions progress bar - refs BT#6523

Yannick Warnier 11 years ago
parent
commit
28f05a31bb
3 changed files with 56 additions and 8 deletions
  1. 14 8
      main/exercice/exercise.class.php
  2. 21 0
      main/locale/trad4all/en.po
  3. 21 0
      main/locale/trad4all/es.po

+ 14 - 8
main/exercice/exercise.class.php

@@ -4639,7 +4639,6 @@ class Exercise
                 return false;
             }
 
-            //if (0) {
             if (!empty($this->emailNotificationTemplate)) {
                 $twig = new \Twig_Environment(new \Twig_Loader_String());
                 $twig->addFilter('var_dump', new Twig_Filter_Function('var_dump'));
@@ -5738,15 +5737,23 @@ class Exercise
 
         $reviewAnswerLabel = null;
         if ($this->review_answers) {
-            $reviewAnswerLabel = Display::label(get_lang('ToReview'), 'warning').'<br />';
+            $reviewAnswerLabel = Display::label(sprintf(get_lang('ToReviewZ'),'c'), 'warning').'<br />';
         }
         $currentAnswerLabel = null;
         if (!empty($current_question)) {
-            $currentAnswerLabel = Display::label(get_lang('CurrentQuestion'), 'info');
-        }
-        $html .= Display::label(get_lang('Answered'), 'success').'<br />'.Display::label(get_lang('Unanswered')).'<br />'.
-                 $reviewAnswerLabel.$currentAnswerLabel;
-        $html .= '</div>';
+            $currentAnswerLabel = Display::label(sprintf(get_lang('CurrentQuestionZ'),'d'), 'info');
+        }
+        // Count the number of answered, unanswered and 'for review' questions - see BT#6523
+        $numa = count(array_flip(array_merge($exercise_result,$remindList)));
+        $numu = count($questionListFlatten)-$numa;
+        $numr = count($remindList);
+        $html .= Display::label(sprintf(get_lang('AnsweredZ'),'a'), 'success').'<br />'.Display::label(sprintf(get_lang('UnansweredZ'),'b')).'<br />'.
+                 $reviewAnswerLabel.$currentAnswerLabel.
+                 '<br /><br />'.
+                 sprintf(get_lang('AnsweredXYZ'),$numa,'a','c').'<br />'.
+                 sprintf(get_lang('UnansweredXYZ'),$numu,'b').'<br />'.
+                 sprintf(get_lang('ToReviewXYZ'),$numr,'c').'<br />'.
+                 '</div>';
 
         $conditions = array();
         $conditions[] = array("class" => 'answered', 'items' => $exercise_result);
@@ -6600,5 +6607,4 @@ class Exercise
         return $categoriesInExercise;
 
     }
-
 }

+ 21 - 0
main/locale/trad4all/en.po

@@ -4137,3 +4137,24 @@ msgstr "Auto-launch for exercises"
 
 msgid "ReturnToExerciseList"
 msgstr "Return to exercises list"
+
+msgid "ToReviewZ"
+msgstr "(%s) To review"
+
+msgid "CurrentQuestionZ"
+msgstr "(%s) Current question"
+
+msgid "AnsweredZ"
+msgstr "(%s) Answered"
+
+msgid "UnansweredZ"
+msgstr "(%s) Unanswered"
+
+msgid "AnsweredXYZ"
+msgstr "%s answered (%s)+(%s)"
+
+msgid "UnansweredXYZ"
+msgstr "%s unanswered (%s)"
+
+msgid "ToReviewXYZ"
+msgstr "%s to review (%s)"

+ 21 - 0
main/locale/trad4all/es.po

@@ -4139,3 +4139,24 @@ msgstr "Modo de lanzamiento automático de exámenes"
 
 msgid "ReturnToExerciseList"
 msgstr "Regresar a la lista de exámenes"
+
+msgid "ToReviewZ"
+msgstr "(%s) Por revisar"
+
+msgid "CurrentQuestionZ"
+msgstr "(%s) Pregunta actual"
+
+msgid "AnsweredZ"
+msgstr "(%s) Respondida"
+
+msgid "UnansweredZ"
+msgstr "(%s) Sin responder"
+
+msgid "AnsweredXYZ"
+msgstr "%s respondidas (%s)+(%s)"
+
+msgid "UnansweredXYZ"
+msgstr "%s sin responder (%s)"
+
+msgid "ToReviewXYZ"
+msgstr "%s por revisar (%s)"