protected function renderManifest(array $options, array $qtiItemData)
 {
     $dir = \common_ext_ExtensionsManager::singleton()->getExtensionById('taoQtiItem')->getDir();
     $tpl = $dir . 'model/qti/templates/imsmanifestQti22.tpl.php';
     $templateRenderer = new \taoItems_models_classes_TemplateRenderer($tpl, array('qtiItems' => array($qtiItemData), 'manifestIdentifier' => 'MANIFEST-' . \tao_helpers_Display::textCleaner(uniqid('tao', true), '-')));
     $renderedManifest = $templateRenderer->render();
     $newManifest = new \DOMDocument('1.0', TAO_DEFAULT_ENCODING);
     $newManifest->loadXML($renderedManifest);
     return $newManifest;
 }
 /**
  * Render the Widget to allow Test Runner Features selection
  *
  * @return string
  */
 public function render()
 {
     $serviceManager = ServiceManager::getServiceManager();
     $testRunnerFeatureService = $serviceManager->get(TestRunnerFeatureService::SERVICE_ID);
     $allFeatures = $testRunnerFeatureService->getAll();
     $activeFeatures = explode(',', $this->value);
     $choicesList = [];
     $i = 0;
     if (count($allFeatures) > 0) {
         foreach ($allFeatures as $feature) {
             $choicesList[] = ["title" => $feature->getDescription(), "value" => $feature->getId(), "id" => $this->name . "_" . $i, "checked" => in_array($feature->getId(), $activeFeatures) ? ' checked="checked" ' : '', "label" => _dh($feature->getLabel())];
             $i++;
         }
     }
     $tpl = \common_ext_ExtensionsManager::singleton()->getExtensionById('taoDeliveryRdf')->getDir() . self::WIDGET_TPL;
     $templateRenderer = new \taoItems_models_classes_TemplateRenderer($tpl, array('propLabel' => _dh($this->getDescription()), 'choicesList' => $choicesList));
     return $templateRenderer->render();
 }
예제 #3
0
 /**
  * Returns an empty IMS Manifest file as a DOMDocument, ready to be fill with
  * new information about IMS QTI Items and Tests.
  * 
  * @return DOMDocument
  */
 public static function emptyImsManifest()
 {
     $templateRenderer = new taoItems_models_classes_TemplateRenderer(ROOT_PATH . 'taoQtiItem/model/qti/templates/imsmanifest.tpl.php', array('qtiItems' => array(), 'manifestIdentifier' => 'QTI-TEST-MANIFEST-' . tao_helpers_Display::textCleaner(uniqid('tao', true), '-')));
     $manifest = new DOMDocument('1.0', TAO_DEFAULT_ENCODING);
     $manifest->loadXML($templateRenderer->render());
     return $manifest;
 }