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(); }
/** * 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; }