Scorm 2004 Question Exporter.
More...
Scorm 2004 Question Exporter.
- Author
- Hendrik Holtmann holtm.nosp@m.ann@.nosp@m.me.co.nosp@m.m
- Version
- Id
- class.ilQuestionExporter.php 12658 2006-11-29 08:51:48Z akill
Definition at line 16 of file class.ilQuestionExporter.php.
◆ __construct()
ilQuestionExporter::__construct |
( |
|
$a_preview_mode = false | ) |
|
Constructor public.
Definition at line 40 of file class.ilQuestionExporter.php.
References $DIC, $ilDB, and $lng.
44 $ilDB = $DIC->database();
45 $lng = $DIC->language();
50 $this->lng->loadLanguageModule(
'assessment');
52 $this->inst_id = IL_INST_ID;
54 $this->preview_mode = $a_preview_mode;
56 $this->tpl =
new ilTemplate(
"tpl.question_export.html",
true,
true,
"Modules/Scorm2004");
59 if (!$a_preview_mode) {
60 $this->tpl->setVariable(
"FORM_BEGIN",
"<form onsubmit='return false;'>");
61 $this->tpl->setVariable(
"FORM_END",
"</form>");
special template class to simplify handling of ITX/PEAR
◆ assClozeTest()
ilQuestionExporter::assClozeTest |
( |
| ) |
|
|
private |
Definition at line 275 of file class.ilQuestionExporter.php.
277 $this->tpl->setCurrentBlock(
"clozequestion");
278 $this->tpl->setVariable(
"VAL_ID", $this->json_decoded->id);
279 $this->tpl->setVariable(
"TXT_SUBMIT_ANSWERS", $this->lng->txt(
"cont_submit_answers"));
280 if ($this->preview_mode) {
281 $this->tpl->setVariable(
"VAL_NO_DISPLAY",
"style=\"display:none\"");
283 $this->tpl->parseCurrentBlock();
285 return $this->tpl->get();
◆ assErrorText()
ilQuestionExporter::assErrorText |
( |
| ) |
|
|
private |
Definition at line 401 of file class.ilQuestionExporter.php.
403 $this->tpl->setCurrentBlock(
"errortext");
404 $this->tpl->setVariable(
"VAL_ID", $this->json_decoded->id);
405 $this->tpl->setVariable(
"TXT_SUBMIT_ANSWERS", $this->lng->txt(
"cont_submit_answers"));
406 if ($this->preview_mode) {
407 $this->tpl->setVariable(
"VAL_NO_DISPLAY",
"style=\"display:none\"");
409 $this->tpl->parseCurrentBlock();
411 return $this->tpl->get();
◆ assImagemapQuestion()
ilQuestionExporter::assImagemapQuestion |
( |
| ) |
|
|
private |
Definition at line 349 of file class.ilQuestionExporter.php.
351 $this->tpl->setVariable(
"TXT_SUBMIT_ANSWERS", $this->lng->txt(
"cont_submit_answers"));
352 array_push(self::$media_files, $this->q_gui->object->getImagePath() . $this->q_gui->object->getImageFilename());
353 $this->tpl->setCurrentBlock(
"mapareas");
354 $areas = $this->json_decoded->answers;
356 foreach ($areas as $area) {
357 $this->tpl->setVariable(
"VAL_TOOLTIP", htmlspecialchars($area->answertext));
358 $this->tpl->setVariable(
"VAL_COORDS", $area->coords);
359 $this->tpl->setVariable(
"VAL_ORDER", $area->order);
360 $this->tpl->setVariable(
"VAL_AREA", $area->area);
361 $this->tpl->setVariable(
"VAL_ID", $this->json_decoded->id);
362 $this->tpl->parseCurrentBlock();
364 $this->tpl->setCurrentBlock(
"imagemapquestion");
365 $this->tpl->setVariable(
"VAL_ID", $this->json_decoded->id);
366 if ($this->preview_mode) {
367 $this->tpl->setVariable(
"VAL_NO_DISPLAY",
"style=\"display:none\"");
369 $this->tpl->parseCurrentBlock();
371 return $this->tpl->get();
◆ assKprimChoice()
ilQuestionExporter::assKprimChoice |
( |
| ) |
|
|
private |
Definition at line 212 of file class.ilQuestionExporter.php.
References $DIC.
215 $main_tpl = $DIC[
"tpl"];
217 $main_tpl->addCss(
'Modules/Test/templates/default/ta.css');
219 $this->tpl->setCurrentBlock(
"kprimchoice");
221 $this->tpl->setVariable(
"TXT_SUBMIT_ANSWERS", $this->lng->txt(
"cont_submit_answers"));
222 $this->tpl->setVariable(
"VAL_ID", $this->json_decoded->id);
224 if ($this->preview_mode) {
225 $this->tpl->setVariable(
"VAL_NO_DISPLAY",
"style=\"display:none\"");
228 if ($this->json_decoded->path) {
229 $this->tpl->setVariable(
231 "ilias.questions.handleKprimImages(" . $this->json_decoded->id .
");" 235 $this->tpl->setVariable(
'OPTION_LABEL_TRUE', $this->json_decoded->trueOptionLabel);
236 $this->tpl->setVariable(
'OPTION_LABEL_FALSE', $this->json_decoded->falseOptionLabel);
238 $this->tpl->setVariable(
'VALUE_TRUE', 1);
239 $this->tpl->setVariable(
'VALUE_FALSE', 0);
241 $this->tpl->parseCurrentBlock();
243 foreach ($this->json_decoded->answers as $answer) {
244 if (is_object($answer->image)) {
245 self::$media_files[] = $answer->getImageFsPath();
246 self::$media_files[] = $answer->getThumbFsPath();
247 } elseif (is_string($answer->image)) {
248 self::$media_files[] = $this->q_gui->object->getImagePath() . $answer->image;
249 if (is_file($this->q_gui->object->getImagePath() .
"thumb." . $answer->image)) {
250 self::$media_files[] = $this->q_gui->object->getImagePath() .
"thumb." . $answer->image;
257 return $this->tpl->get();
◆ assLongMenu()
ilQuestionExporter::assLongMenu |
( |
| ) |
|
|
private |
Definition at line 288 of file class.ilQuestionExporter.php.
290 $this->tpl->setCurrentBlock(
"longmenu");
291 $this->tpl->setVariable(
"VAL_ID", $this->json_decoded->id);
292 $this->tpl->setVariable(
"TXT_SUBMIT_ANSWERS", $this->lng->txt(
"cont_submit_answers"));
293 if ($this->preview_mode) {
294 $this->tpl->setVariable(
"VAL_NO_DISPLAY",
"style=\"display:none\"");
296 $this->tpl->parseCurrentBlock();
298 return $this->tpl->get();
◆ assMatchingQuestion()
ilQuestionExporter::assMatchingQuestion |
( |
| ) |
|
|
private |
Definition at line 330 of file class.ilQuestionExporter.php.
References $DIC.
333 $main_tpl = $DIC[
"tpl"];
335 $main_tpl->addJavaScript(
'Modules/TestQuestionPool/js/ilMatchingQuestion.js');
336 $main_tpl->addCss(
'Modules/TestQuestionPool/templates/default/test_javascript.css');
337 $this->tpl->setCurrentBlock(
"matchingquestion");
338 $this->tpl->setVariable(
"VAL_ID", $this->json_decoded->id);
339 $this->tpl->setVariable(
"BTN_LABEL_RESET", $this->lng->txt(
"reset_terms"));
340 $this->tpl->setVariable(
"TXT_SUBMIT_ANSWERS", $this->lng->txt(
"cont_submit_answers"));
341 if ($this->preview_mode) {
342 $this->tpl->setVariable(
"VAL_NO_DISPLAY",
"style=\"display:none\"");
344 $this->tpl->parseCurrentBlock();
346 return $this->tpl->get();
◆ assMultipleChoice()
ilQuestionExporter::assMultipleChoice |
( |
| ) |
|
|
private |
Definition at line 167 of file class.ilQuestionExporter.php.
References $GLOBALS.
174 $this->q_gui->populateJavascriptFilesRequiredForWorkForm($main_tpl);
175 $main_tpl->addCss(
'Modules/Test/templates/default/ta.css');
177 $this->tpl->setCurrentBlock(
"multiplechoice");
178 $this->tpl->setVariable(
"TXT_SUBMIT_ANSWERS", $this->lng->txt(
"cont_submit_answers"));
179 $this->tpl->setVariable(
"VAL_ID", $this->json_decoded->id);
180 if ($this->json_decoded->selection_limit) {
181 $this->tpl->setVariable(
'SELECTION_LIMIT_HINT', sprintf(
182 $this->lng->txt(
'ass_mc_sel_lim_hint'),
183 $this->json_decoded->selection_limit,
184 count($this->json_decoded->answers)
187 $this->tpl->setVariable(
'SELECTION_LIMIT_VALUE', $this->json_decoded->selection_limit);
189 $this->tpl->setVariable(
'SELECTION_LIMIT_VALUE',
'null');
191 if ($this->preview_mode) {
192 $this->tpl->setVariable(
"VAL_NO_DISPLAY",
"style=\"display:none\"");
194 if ($this->json_decoded->path) {
195 $this->tpl->setVariable(
197 "ilias.questions.handleMCImages(" . $this->json_decoded->id .
");" 200 $this->tpl->parseCurrentBlock();
201 foreach ($this->json_decoded->answers as $answer) {
202 if ($answer->image !=
"") {
203 array_push(self::$media_files, $this->q_gui->object->getImagePath() . $answer->image);
204 array_push(self::$media_files, $this->q_gui->object->getImagePath() .
"thumb." . $answer->image);
208 return $this->tpl->get();
$GLOBALS['JPEG_Segment_Names']
Global Variable: XMP_tag_captions.
◆ assOrderingHorizontal()
ilQuestionExporter::assOrderingHorizontal |
( |
| ) |
|
|
private |
Definition at line 388 of file class.ilQuestionExporter.php.
390 $this->tpl->setCurrentBlock(
"orderinghorizontal");
391 $this->tpl->setVariable(
"VAL_ID", $this->json_decoded->id);
392 $this->tpl->setVariable(
"TXT_SUBMIT_ANSWERS", $this->lng->txt(
"cont_submit_answers"));
393 if ($this->preview_mode) {
394 $this->tpl->setVariable(
"VAL_NO_DISPLAY",
"style=\"display:none\"");
396 $this->tpl->parseCurrentBlock();
398 return $this->tpl->get();
◆ assOrderingQuestion()
ilQuestionExporter::assOrderingQuestion |
( |
| ) |
|
|
private |
Definition at line 301 of file class.ilQuestionExporter.php.
References OQ_PICTURES.
303 $this->tpl->setCurrentBlock(
"orderingquestion");
304 $this->tpl->setVariable(
"VAL_ID", $this->json_decoded->id);
305 $this->tpl->setVariable(
"TXT_SUBMIT_ANSWERS", $this->lng->txt(
"cont_submit_answers"));
306 if ($this->preview_mode) {
307 $this->tpl->setVariable(
"VAL_NO_DISPLAY",
"style=\"display:none\"");
309 if ($this->q_gui->object->getOrderingType() ==
OQ_PICTURES) {
310 $this->tpl->setVariable(
"VAL_SUBTYPE",
"_images");
311 $this->tpl->setVariable(
313 "ilias.questions.handleOrderingImages(" . $this->json_decoded->id .
");" 316 foreach ($this->json_decoded->answers as $answer) {
317 if ($answer->answertext !=
"") {
318 array_push(self::$media_files, $this->q_gui->object->getImagePath() . $answer->answertext);
319 array_push(self::$media_files, $this->q_gui->object->getImagePath() .
"thumb." . $answer->answertext);
323 $this->tpl->setVariable(
"VAL_SUBTYPE",
"_terms");
325 $this->tpl->parseCurrentBlock();
327 return $this->tpl->get();
const OQ_PICTURES
Ordering question constants.
◆ assSingleChoice()
ilQuestionExporter::assSingleChoice |
( |
| ) |
|
|
private |
Definition at line 140 of file class.ilQuestionExporter.php.
142 $this->tpl->setCurrentBlock(
"singlechoice");
143 $this->tpl->setVariable(
"TXT_SUBMIT_ANSWERS", $this->lng->txt(
"cont_submit_answers"));
144 $this->tpl->setVariable(
"VAL_ID", $this->json_decoded->id);
145 if ($this->preview_mode) {
146 $this->tpl->setVariable(
"VAL_NO_DISPLAY",
"style=\"display:none\"");
148 if ($this->json_decoded->path) {
149 $this->tpl->setVariable(
151 "ilias.questions.handleMCImages(" . $this->json_decoded->id .
");" 154 $this->tpl->parseCurrentBlock();
155 foreach ($this->json_decoded->answers as $answer) {
156 if ($answer->image !=
"") {
157 array_push(self::$media_files, $this->q_gui->object->getImagePath() . $answer->image);
158 if (is_file($this->q_gui->object->getImagePath() .
"thumb." . $answer->image)) {
159 array_push(self::$media_files, $this->q_gui->object->getImagePath() .
"thumb." . $answer->image);
164 return $this->tpl->get();
◆ assTextQuestion()
ilQuestionExporter::assTextQuestion |
( |
| ) |
|
|
private |
Definition at line 260 of file class.ilQuestionExporter.php.
262 $maxlength = $this->json_decoded->maxlength == 0 ? 4096 : $this->json_decoded->maxlength;
263 $this->tpl->setCurrentBlock(
"textquestion");
264 $this->tpl->setVariable(
"VAL_ID", $this->json_decoded->id);
265 $this->tpl->setVariable(
"TXT_SUBMIT_ANSWERS", $this->lng->txt(
"cont_submit_answers"));
266 $this->tpl->setVariable(
"VAL_MAXLENGTH", $maxlength);
267 if ($this->preview_mode) {
268 $this->tpl->setVariable(
"VAL_NO_DISPLAY",
"style=\"display:none\"");
270 $this->tpl->parseCurrentBlock();
272 return $this->tpl->get();
◆ assTextSubset()
ilQuestionExporter::assTextSubset |
( |
| ) |
|
|
private |
Definition at line 374 of file class.ilQuestionExporter.php.
376 $maxlength = $this->json_decoded->maxlength == 0 ? 4096 : $this->json_decoded->maxlength;
377 $this->tpl->setCurrentBlock(
"textsubset");
378 $this->tpl->setVariable(
"VAL_ID", $this->json_decoded->id);
379 $this->tpl->setVariable(
"TXT_SUBMIT_ANSWERS", $this->lng->txt(
"cont_submit_answers"));
380 if ($this->preview_mode) {
381 $this->tpl->setVariable(
"VAL_NO_DISPLAY",
"style=\"display:none\"");
383 $this->tpl->parseCurrentBlock();
385 return $this->tpl->get();
◆ exportQuestion()
ilQuestionExporter::exportQuestion |
( |
|
$a_ref_id, |
|
|
|
$a_image_path = null , |
|
|
|
$a_output_mode = "presentation" |
|
) |
| |
Definition at line 66 of file class.ilQuestionExporter.php.
References $inst_id, $json, $mobs, $type, ilInternalLink\_extractInstOfTarget(), ilInternalLink\_extractObjIdOfTarget(), and assQuestionGUI\_getQuestionGUI().
68 if ($a_ref_id !=
"") {
77 if (!is_object($this->q_gui->object)) {
78 return "Error: Question not found.";
81 $type = $this->q_gui->object->getQuestionType();
82 if (method_exists($this,
$type)) {
83 $this->q_gui->object->setExportImagePath($a_image_path);
84 $this->q_gui->object->feedbackOBJ->setPageObjectOutputMode($a_output_mode);
85 $this->json = $this->q_gui->object->toJSON();
86 $this->json_decoded = json_decode($this->json);
87 self::$exported[$this->json_decoded->id] =
$this->json;
88 self::$mobs[$this->json_decoded->id] = $this->json_decoded->mobs;
89 return $this->
$type();
91 return "Error: Question Type not implemented/Question editing not finished";
static _extractInstOfTarget($a_target)
Extract installation id out of target.
static _extractObjIdOfTarget($a_target)
Extract object id out of target.
static _getQuestionGUI($question_type, $question_id=-1)
Creates a question gui representation and returns the alias to the question gui note: please do not u...
◆ getFiles()
static ilQuestionExporter::getFiles |
( |
| ) |
|
|
static |
◆ getMobs()
static ilQuestionExporter::getMobs |
( |
| ) |
|
|
static |
◆ indicateNewSco()
static ilQuestionExporter::indicateNewSco |
( |
| ) |
|
|
static |
◆ questionsJS()
static ilQuestionExporter::questionsJS |
( |
array |
$a_qids = null | ) |
|
|
static |
◆ setHeaderFooter()
ilQuestionExporter::setHeaderFooter |
( |
| ) |
|
|
private |
Definition at line 132 of file class.ilQuestionExporter.php.
134 $this->tpl->setCurrentBlock(
"common");
135 $this->tpl->setVariable(
"VAL_ID", $this->json_decoded->id);
136 $this->tpl->setVariable(
"VAL_TYPE", $this->json_decoded->type);
137 $this->tpl->parseCurrentBlock();
◆ $db
◆ $exported
ilQuestionExporter::$exported = array() |
|
static |
◆ $inst_id
ilQuestionExporter::$inst_id |
◆ $json
ilQuestionExporter::$json |
◆ $json_decoded
ilQuestionExporter::$json_decoded |
◆ $lng
◆ $media_files
ilQuestionExporter::$media_files = array() |
|
static |
◆ $mobs
ilQuestionExporter::$mobs = array() |
|
static |
◆ $preview_mode
ilQuestionExporter::$preview_mode |
◆ $q_gui
ilQuestionExporter::$q_gui |
◆ $ref_id
ilQuestionExporter::$ref_id |
◆ $tpl
The documentation for this class was generated from the following file: