Browse Source

TLD-531 Ajout de commentaires

Mael ETIENNE 3 years ago
parent
commit
c9c4591a14
1 changed files with 17 additions and 5 deletions
  1. 17
    5
      Services/ScormEngine.php

+ 17
- 5
Services/ScormEngine.php View File

@@ -779,9 +779,17 @@ class ScormEngine implements ContainerAwareInterface
779 779
     }
780 780
 
781 781
     /**
782
-     * Récupération de la complétion d'un cours
782
+     * Récupération du pourcentage de complétion d'un cours
783
+     *
784
+     * La complétion d'un cours est soit définie par le module lui meme
785
+     * (possibilité d'avoir une pondération de la contribution de chaque item au taux de complétion)
786
+     *
787
+     * Soit elle correspond au rapport du nombre d'items complétés
788
+     * sur le nombre d'items terminaux(consultables par l'apprenant)
783 789
      *
784 790
      * @param string $registrationKey
791
+     *
792
+     * @return float
785 793
      */
786 794
     public function getCompletion(string $registrationKey)
787 795
     {
@@ -793,7 +801,7 @@ class ScormEngine implements ContainerAwareInterface
793 801
             return 0;
794 802
         }
795 803
         
796
-        // Récupération du dernier essai pour cette inscription
804
+        // Récupération du dernier essai moteur pour cette inscription
797 805
         $registrationAttemptRepository = $em->getRepository(RegistrationAttempt::class);
798 806
         $lastAttempt = $registrationAttemptRepository->findOneBy(array('registration' => $registration), array('registrationAttemptId' => 'desc'));
799 807
 
@@ -807,8 +815,7 @@ class ScormEngine implements ContainerAwareInterface
807 815
         }
808 816
 
809 817
         // Dans un premier temps on détermine si la complétion peut être remontée
810
-        // en se basant sur l'état de complétion de l'ensemble des items terminaux
811
-        
818
+        // en se basant sur l'état de complétion de l'ensemble des items terminaux  
812 819
         $mapTrackItemRepository = $em->getRepository(Scorm2004MapTrackItem::class);
813 820
         $attemptItemRepository = $em->getRepository(Scorm2004AttemptProgressInformation::class);
814 821
         
@@ -843,28 +850,33 @@ class ScormEngine implements ContainerAwareInterface
843 850
             }
844 851
         }
845 852
 
846
-        // Si aucune complétion n'a été déterminée précédement on controle que l'on aie pas un taux de complétion présent au niveau de l'organisation
853
+        // Si aucune complétion n'a été déterminée précédement 
854
+        // on controle que l'on aie pas un taux de complétion présent au niveau de l'organisation
847 855
         $organization = $track2004->getOrganizationId();
848 856
         if (empty($organization)) {
849 857
             return 0;
850 858
         }
851 859
 
860
+        //Récupération du dernier essai SCORM sur l'organisation
852 861
         $lastOrganizationAttempt = $attemptItemRepository->findOneBy(array('scorm2004Track'=> $track2004, 'item_identifier' => $organization), array('attempt_id' => 'desc'));
853 862
         if (empty($lastOrganizationAttempt)) {
854 863
             return 0;
855 864
         }
856 865
 
866
+        // Récupération de la valeur continue de complétion de l'essai
857 867
         $completionAmount = $lastOrganizationAttempt->getCompletionAmount();
858 868
         if ($completionAmount > 0) {
859 869
             return round(100.0 * $completionAmount, 2);
860 870
         }
861 871
 
872
+        // Récupération de la valeur binaire de complétion de l'essai
862 873
         $progressStatus = $lastOrganizationAttempt->getProgressStatus();
863 874
         $completionStatus = $lastOrganizationAttempt->getCompletionStatus();
864 875
         if (true == $progressStatus && true == $completionStatus) {
865 876
             return 100;
866 877
         }
867 878
 
879
+        // Pas de complétion récupérable
868 880
         return 0;
869 881
     }
870 882
 

Loading…
Cancel
Save