Browse Source

Retrait de CheckIfPrimary

Mael ETIENNE 3 years ago
parent
commit
09449c5a1a

+ 0
- 24
LearningModels/DOMSCORM2004.php View File

@@ -1049,30 +1049,6 @@ class DOMSCORM2004 extends DOMSCORM
1049 1049
         return $value;
1050 1050
     }
1051 1051
 
1052
-    /**
1053
-     * l'objective défini par son identifiant et son item est il primaire ?
1054
-     *
1055
-     * @param string $item
1056
-     * @param string $objectiveID
1057
-     * @return boolean true si primaire, false si pas primaire ou n'existe pas
1058
-     */
1059
-    public function checkIfPrimary(string $item, string $objectiveID) : bool
1060
-    {
1061
-        $isPrimary = false;
1062
-        // inutile de se préoccuper d'adlseq qui ne contient pas de primary
1063
-        $query = '//*[name()="item" or name()="organization"][@identifier="'.
1064
-        $item.'"]/imsss:sequencing/imsss:objectives/child::*[@objectiveID="'.$objectiveID.'"] | '.
1065
-        '//imsss:sequencingCollection/imsss:sequencing/imsss:objectives/child::*[@objectiveID="'.$objectiveID.'"]';
1066
-
1067
-        $listNodes = $this->xpath->query($query);
1068
-
1069
-        if ($listNodes->length == 1) {
1070
-            $isPrimary = $listNodes->item(0)->nodeName == 'imsss:primaryObjective';
1071
-        }
1072
-
1073
-        return $isPrimary;
1074
-    }
1075
-
1076 1052
     /**
1077 1053
      * Retourne le standard du paquet associé au DOM
1078 1054
      * Méthode surchargée

+ 7
- 2
LearningModels/SCORM2004/SequencingNavigation/SeqNavRequest.php View File

@@ -1002,13 +1002,18 @@ class SeqNavRequest implements ContainerAwareInterface
1002 1002
         }
1003 1003
 
1004 1004
         // Si aucun objectif n'est identifié pour cette condition, on utilise l'objectif primaire
1005
+        $primaryObjective = $this->domScorm2004->getPrimaryObjective($item);
1005 1006
         if (!$objectiveId) {
1006
-            $objective = $this->domScorm2004->getPrimaryObjective($item);
1007
+            $objective = $primaryObjective;
1007 1008
         } else {
1009
+            $isPrimary = false;
1010
+            if (!empty($primaryObjective)) {
1011
+                $isPrimary = $primaryObjective['objective'] == $objectiveId;
1012
+            }
1008 1013
             $objective = array(
1009 1014
                 'item' => $item,
1010 1015
                 'objective' => $objectiveId,
1011
-                'isPrimary' => $this->domScorm2004->checkIfPrimary($item, $objectiveId)
1016
+                'isPrimary' => $isPrimary
1012 1017
             );
1013 1018
         }
1014 1019
 

+ 0
- 17
Tests/LearningModels/SCORM2004/DOMSCORM2004Test.php View File

@@ -682,23 +682,6 @@ class DOMSCORM2004Test extends TestCase
682 682
         $this->assertSame('false', $result);
683 683
     }
684 684
 
685
-    public function testCheckIfPrimary()
686
-    {
687
-        $dom = null; // pour ecrase l'ancien dom
688
-        $filename = __DIR__.'/../../packages/SCORM2004/LMSTestPackage_T-01b.zip';
689
-        $XMLManifest = DOMLearningModel::getManifest($filename);
690
-        $dom = DOMLearningModel::getInstance(1, $XMLManifest);
691
-
692
-        $result = $dom->checkIfPrimary('activity_4', 'PRIMARYOBJ');
693
-        $this->assertSame(true, $result);
694
-
695
-        $result = $dom->checkIfPrimary('activity_21', 'PRIMARYOBJ');
696
-        $this->assertSame(true, $result);
697
-
698
-        $result = $dom->checkIfPrimary('activity_8', 'obj1');
699
-        $this->assertSame(false, $result);
700
-    }
701
-
702 685
     public function testGetHref()
703 686
     {
704 687
         $dom = null; // pour ecrase l'ancien dom

Loading…
Cancel
Save