Exemplo n.º 1
0
 /**
  * Initializes parameters of the SCO defined in children nodes.
  *
  * @param Scorm2004Sco $sco
  * @param \DOMNode     $item
  */
 private function findNodeParams(Scorm2004Sco $sco, \DOMNode $item)
 {
     while (!is_null($item)) {
         switch ($item->nodeName) {
             case 'title':
                 $sco->setTitle($item->nodeValue);
                 break;
             case 'adlcp:timeLimitAction':
                 $action = strtolower($item->nodeValue);
                 if ($action === 'exit,message' || $action === 'exit,no message' || $action === 'continue,message' || $action === 'continue,no message') {
                     $sco->setTimeLimitAction($action);
                 }
                 break;
             case 'adlcp:dataFromLMS':
                 $sco->setLaunchData($item->nodeValue);
                 break;
             case 'adlcp:completionThreshold':
                 $sco->setCompletionThreshold($item->nodeName);
                 break;
             case 'imsss:attemptAbsoluteDurationLimit':
                 $sco->setMaxTimeAllowed($item->nodeName);
                 break;
             case 'imsss:minNormalizedMeasure':
                 $sco->setScaledPassingScore($item->nodeName);
                 break;
         }
         $item = $item->nextSibling;
     }
 }