ILIAS  release_5-0 Revision 5.0.0-1144-gc4397b1f870
ilPCQuestion Class Reference

Class ilPCQuestion. More...

+ Inheritance diagram for ilPCQuestion:
+ Collaboration diagram for ilPCQuestion:

Public Member Functions

 init ()
 Init page content component. More...
 
 setNode (&$a_node)
 Set node. More...
 
 setQuestionReference ($a_questionreference)
 Set Question Reference. More...
 
 getQuestionReference ()
 Get Question Reference. More...
 
 create (&$a_pg_obj, $a_hier_id)
 Create Question Element. More...
 
 copyPoolQuestionIntoPage ($a_q_id, $a_hier_id)
 Copy question from pool into page. More...
 
 _getPageForQuestionId ($a_q_id, $a_parent_type="")
 Get page for question id. More...
 
 modifyPageContentPostXsl ($a_output, $a_mode)
 Modify page content after xsl. More...
 
 getJavascriptFiles ($a_mode)
 Get Javascript files. More...
 
 getCssFiles ($a_mode)
 Get css files. More...
 
 getOnloadCode ($a_mode)
 Get on load code. More...
 
 getQuestionJsOfPage ($a_no_interaction, $a_mode)
 Get question js. More...
 
- Public Member Functions inherited from ilPageContent
 __construct ($a_pg_obj)
 Constructor. More...
 
 setPage ($a_val)
 Set page. More...
 
 getPage ()
 Get page. More...
 
 init ()
 Init object. More...
 
 getType ()
 Get type of page content. More...
 
 setNode (&$a_node)
 Set xml node of page content. More...
 
getNode ()
 Get xml node of page content. More...
 
 getJavascriptFiles ()
 Get Javascript files. More...
 
 getCssFiles ()
 Get css files. More...
 
 getOnloadCode ()
 Get on load code. More...
 
 setHierId ($a_hier_id)
 Set hierarchical ID in xml structure. More...
 
 getHierId ()
 Get hierarchical id. More...
 
 lookupHierId ()
 Get hierarchical id from dom. More...
 
 readHierId ()
 Read PC Id. More...
 
 setPcId ($a_pcid)
 Set PC Id. More...
 
 getPCId ()
 Get PC Id. More...
 
 readPCId ()
 Read PC Id. More...
 
 writePCId ($a_pc_id)
 Write pc id. More...
 
 isGreaterHierId ($a, $b)
 Check whether Hier ID $a is greater than Hier ID $b. More...
 
 setEnabled ($value)
 Set Enabled value for page content component. More...
 
 enable ()
 Enable page content. More...
 
 disable ()
 Disable page content. More...
 
 isEnabled ()
 Check whether page content is enabled. More...
 
 createPageContentNode ($a_set_this_node=true)
 Create page content node (always use this method first when adding a new element) More...
 
 modifyPageContentPostXsl ($a_output, $a_mode)
 Modify page content after xsl. More...
 

Static Public Member Functions

static getLangVars ()
 Get lang vars needed for editing. More...
 
static afterPageUpdate ($a_page, DOMDocument $a_domdoc, $a_xml, $a_creation)
 After page has been updated (or created) More...
 
static beforePageDelete ($a_page)
 Before page is being deleted. More...
 
static _getQuestionIdsForPage ($a_parent_type, $a_page_id, $a_lang="-")
 Get all questions of a page. More...
 
static resetInitialState ()
 Reset initial state (for exports) More...
 
static getJSTextInitCode ($a_lang)
 Get js txt init code. More...
 
- Static Public Member Functions inherited from ilPageContent
static incEdId ($ed_id)
 Increases an hierarchical editing id at lowest level (last number) More...
 
static decEdId ($ed_id)
 Decreases an hierarchical editing id at lowest level (last number) More...
 
static haveSameContainer ($ed_id1, $ed_id2)
 Check, if two ids are in same container. More...
 
static sortHierIds ($a_array)
 Sort an array of Hier IDS in ascending order. More...
 
static getLangVars ()
 Get lang vars needed for editing. More...
 
static handleCopiedContent (DOMDocument $a_domdoc, $a_self_ass=true, $a_clone_mobs=false)
 Handle copied content. More...
 
static afterPageUpdate ($a_page, DOMDocument $a_domdoc, $a_xml, $a_creation)
 After page has been updated (or created) More...
 
static beforePageDelete ($a_page)
 Before page is being deleted. More...
 
static afterPageHistoryEntry ($a_page, DOMDocument $a_old_domdoc, $a_old_xml, $a_old_nr)
 After page history entry has been created. More...
 

Data Fields

 $dom
 
 $q_node
 
- Data Fields inherited from ilPageContent
 $hier_id
 
 $node
 
 $dom
 

Static Protected Attributes

static $initial_done
 

Additional Inherited Members

- Protected Member Functions inherited from ilPageContent
 setType ($a_type)
 Set Type. More...
 

Detailed Description

Class ilPCQuestion.

Assessment Question of ilPageObject

Author
Alex Killing alex..nosp@m.kill.nosp@m.ing@g.nosp@m.mx.d.nosp@m.e
Version
$Id$

Definition at line 18 of file class.ilPCQuestion.php.

Member Function Documentation

◆ _getPageForQuestionId()

ilPCQuestion::_getPageForQuestionId (   $a_q_id,
  $a_parent_type = "" 
)

Get page for question id.

Parameters

return array

Definition at line 237 of file class.ilPCQuestion.php.

238 {
239 global $ilDB;
240
241 $set = $ilDB->query("SELECT * FROM page_question ".
242 " WHERE question_id = ".$ilDB->quote($a_q_id, "integer")
243 );
244 while ($rec = $ilDB->fetchAssoc($set))
245 {
246 if ($a_parent_type == "" || $rec["page_parent_type"] == $a_parent_type)
247 {
248 return array("page_id" => $rec["page_id"], "parent_type" => $rec["page_parent_type"]);
249 }
250 }
251 return false;
252 }
global $ilDB

References $ilDB.

Referenced by ilObjMediaObject\getParentObjectIdForUsage().

+ Here is the caller graph for this function:

◆ _getQuestionIdsForPage()

static ilPCQuestion::_getQuestionIdsForPage (   $a_parent_type,
  $a_page_id,
  $a_lang = "-" 
)
static

Get all questions of a page.

Definition at line 214 of file class.ilPCQuestion.php.

215 {
216 global $ilDB;
217
218 $res = $ilDB->queryF("SELECT * FROM page_question WHERE page_parent_type = %s ".
219 " AND page_id = %s AND page_lang = %s",
220 array("text", "integer", "text"),
221 array($a_parent_type, $a_page_id, $a_lang));
222 $q_ids = array();
223 while ($rec = $ilDB->fetchAssoc($res))
224 {
225 $q_ids[] = $rec["question_id"];
226 }
227
228 return $q_ids;
229 }

References $ilDB, and $res.

Referenced by ilSCORM2004Asset\exportHTMLPageObjects(), ilObjContentObject\exportHTMLPages(), ilSCORM2004Asset\exportPDFPrepareXmlNFiles(), ilSCORM2004Asset\exportXMLPageObjects(), ilObjectivesAlignmentTableGUI\fillRow(), ilLMPageObject\getQuestionIds(), and ilSCORM2004ScoGUI\sahs_questions().

+ Here is the caller graph for this function:

◆ afterPageUpdate()

static ilPCQuestion::afterPageUpdate (   $a_page,
DOMDocument  $a_domdoc,
  $a_xml,
  $a_creation 
)
static

After page has been updated (or created)

Parameters
objectpage object
DOMDocument$a_domdocdom document
stringxml
booltrue on creation, otherwise false

Reimplemented from ilPageContent.

Definition at line 160 of file class.ilPCQuestion.php.

161 {
162 global $ilDB;
163
164 include_once("./Services/Link/classes/class.ilInternalLink.php");
165
166 $ilDB->manipulateF("DELETE FROM page_question WHERE page_parent_type = %s ".
167 " AND page_id = %s AND page_lang = %s", array("text", "integer", "text"),
168 array($a_page->getParentType(), $a_page->getId(), $a_page->getLanguage()));
169
170 $xpath = new DOMXPath($a_domdoc);
171 $nodes = $xpath->query('//Question');
172 $q_ids = array();
173 foreach ($nodes as $node)
174 {
175 $q_ref = $node->getAttribute("QRef");
176
177 $inst_id = ilInternalLink::_extractInstOfTarget($q_ref);
178 if (!($inst_id > 0))
179 {
181 if ($q_id > 0)
182 {
183 $q_ids[$q_id] = $q_id;
184 }
185 }
186 }
187 foreach($q_ids as $qid)
188 {
189 $ilDB->manipulateF("INSERT INTO page_question (page_parent_type, page_id, page_lang, question_id)".
190 " VALUES (%s,%s,%s,%s)",
191 array("text", "integer", "text", "integer"),
192 array($a_page->getParentType(), $a_page->getId(), $a_page->getLanguage(), $qid));
193 }
194
195 }

References $ilDB, ilPageContent\$node, ilInternalLink\_extractInstOfTarget(), and ilInternalLink\_extractObjIdOfTarget().

+ Here is the call graph for this function:

◆ beforePageDelete()

static ilPCQuestion::beforePageDelete (   $a_page)
static

Before page is being deleted.

Parameters
objectpage object

Reimplemented from ilPageContent.

Definition at line 202 of file class.ilPCQuestion.php.

203 {
204 global $ilDB;
205
206 $ilDB->manipulateF("DELETE FROM page_question WHERE page_parent_type = %s ".
207 " AND page_id = %s AND page_lang = %s", array("text", "integer", "text"),
208 array($a_page->getParentType(), $a_page->getId(), $a_page->getLanguage()));
209 }

References $ilDB.

◆ copyPoolQuestionIntoPage()

ilPCQuestion::copyPoolQuestionIntoPage (   $a_q_id,
  $a_hier_id 
)

Copy question from pool into page.

Parameters

return

Definition at line 87 of file class.ilPCQuestion.php.

88 {
89 include_once "./Modules/TestQuestionPool/classes/class.assQuestion.php";
90 include_once "./Modules/TestQuestionPool/classes/class.assQuestionGUI.php";
91 $question = assQuestion::_instanciateQuestion($a_q_id);
92 $duplicate_id = $question->copyObject(0, $question->getTitle());
93 $duplicate = assQuestion::_instanciateQuestion($duplicate_id);
94 $duplicate->setObjId(0);
95
96 // we remove everything not supported by the non-tiny self
97 // assessment question editor
98 $q = $duplicate->getQuestion();
99
100 // we try to save all latex tags
101 $try = true;
102 $ls = '<span class="latex">';
103 $le = '</span>';
104 while ($try)
105 {
106 // search position of start tag
107 $pos1 = strpos($q, $ls);
108 if (is_int($pos1))
109 {
110 $pos2 = strpos($q, $le, $pos1);
111 if (is_int($pos2))
112 {
113 // both found: replace end tag
114 $q = substr($q, 0, $pos2)."[/tex]".substr($q, $pos2+7);
115 $q = substr($q, 0, $pos1)."[tex]".substr($q, $pos1+20);
116 }
117 else
118 {
119 $try = false;
120 }
121 }
122 else
123 {
124 $try = false;
125 }
126 }
127
129 $tstr = "";
130 foreach ($tags as $t)
131 {
132 $tstr.="<".$t.">";
133 }
134 $q = ilUtil::secureString($q, true, $tstr);
135 // self assessment uses nl2br, not p
136 $duplicate->setQuestion($q);
137
138 $duplicate->saveQuestionDataToDb();
139
140 $this->q_node->set_attribute("QRef", "il__qst_".$duplicate_id);
141 }
getSelfAssessmentTags()
Get tags allowed in question tags in self assessment mode.
static _instanciateQuestion($question_id)
Creates an instance of a question with a given question id.
static secureString($a_str, $a_strip_html=true, $a_allow="")
Remove unsecure tags.

References $t, assQuestion\_instanciateQuestion(), assQuestionGUI\getSelfAssessmentTags(), and ilUtil\secureString().

+ Here is the call graph for this function:

◆ create()

ilPCQuestion::create ( $a_pg_obj,
  $a_hier_id 
)

Create Question Element.

Definition at line 72 of file class.ilPCQuestion.php.

73 {
74 $this->createPageContentNode();
75 $a_pg_obj->insertContent($this, $a_hier_id, IL_INSERT_AFTER);
76 $this->q_node = $this->dom->create_element("Question");
77 $this->q_node = $this->node->append_child($this->q_node);
78 $this->q_node->set_attribute("QRef", "");
79 }
const IL_INSERT_AFTER
createPageContentNode($a_set_this_node=true)
Create page content node (always use this method first when adding a new element)

References ilPageContent\createPageContentNode(), and IL_INSERT_AFTER.

+ Here is the call graph for this function:

◆ getCssFiles()

ilPCQuestion::getCssFiles (   $a_mode)

Get css files.

Definition at line 346 of file class.ilPCQuestion.php.

347 {
348 if ($this->getPage()->getPageConfig()->getEnableSelfAssessment())
349 {
350 return array("./Modules/Scorm2004/templates/default/question_handling.css",
351 "Modules/TestQuestionPool/templates/default/test_javascript.css");
352 }
353 return array();
354 }

References ilPageContent\getPage().

+ Here is the call graph for this function:

◆ getJavascriptFiles()

ilPCQuestion::getJavascriptFiles (   $a_mode)

Get Javascript files.

Definition at line 323 of file class.ilPCQuestion.php.

324 {
325 $js_files = array();
326
327 if ($this->getPage()->getPageConfig()->getEnableSelfAssessment())
328 {
329 $js_files[] = "./Modules/Scorm2004/scripts/questions/pure.js";
330 $js_files[] = "./Modules/Scorm2004/scripts/questions/question_handling.js";
331 $js_files[] = "Modules/TestQuestionPool/js/ilMatchingQuestion.js";
332 }
333
334 if (!$this->getPage()->getPageConfig()->getEnableSelfAssessmentScorm() && $a_mode != IL_PAGE_PREVIEW
335 && $a_mode != "offline")
336 {
337 $js_files[] = "./Services/COPage/js/ilCOPageQuestionHandler.js";
338 }
339
340 return $js_files;
341 }
const IL_PAGE_PREVIEW

References ilPageContent\getPage(), and IL_PAGE_PREVIEW.

+ Here is the call graph for this function:

◆ getJSTextInitCode()

static ilPCQuestion::getJSTextInitCode (   $a_lang)
static

Get js txt init code.

Parameters

return

Definition at line 406 of file class.ilPCQuestion.php.

407 {
408 global $lng, $ilUser;
409
410 if ($a_lang == "")
411 {
412 $a_lang = $ilUser->getLanguage();
413 }
414
415 return
416 '
417 ilias.questions.txt.wrong_answers = "'.$lng->txtlng("content", "cont_wrong_answers", $a_lang).'";
418 ilias.questions.txt.wrong_answers_single = "'.$lng->txtlng("content", "cont_wrong_answers_single", $a_lang).'";
419 ilias.questions.txt.tries_remaining = "'.$lng->txtlng("content", "cont_tries_remaining", $a_lang).'";
420 ilias.questions.txt.please_try_again = "'.$lng->txtlng("content", "cont_please_try_again", $a_lang).'";
421 ilias.questions.txt.all_answers_correct = "'.$lng->txtlng("content", "cont_all_answers_correct", $a_lang).'";
422 ilias.questions.txt.enough_answers_correct = "'.$lng->txtlng("content", "cont_enough_answers_correct", $a_lang).'";
423 ilias.questions.txt.nr_of_tries_exceeded = "'.$lng->txtlng("content", "cont_nr_of_tries_exceeded", $a_lang).'";
424 ilias.questions.txt.correct_answers_shown = "'.$lng->txtlng("content", "cont_correct_answers_shown", $a_lang).'";
425 ilias.questions.txt.correct_answers_also = "'.$lng->txtlng("content", "cont_correct_answers_also", $a_lang).'";
426 ilias.questions.txt.correct_answer_also = "'.$lng->txtlng("content", "cont_correct_answer_also", $a_lang).'";
427 ilias.questions.txt.ov_all_correct = "'.$lng->txtlng("content", "cont_ov_all_correct", $a_lang).'";
428 ilias.questions.txt.ov_some_correct = "'.$lng->txtlng("content", "cont_ov_some_correct", $a_lang).'";
429 ilias.questions.txt.ov_wrong_answered = "'.$lng->txtlng("content", "cont_ov_wrong_answered", $a_lang).'";
430 ilias.questions.txt.please_select = "'.$lng->txtlng("content", "cont_please_select", $a_lang).'";
431 ilias.questions.refresh_lang();
432 ';
433
434 }
global $lng
Definition: privfeed.php:40
global $ilUser
Definition: imgupload.php:15

References $ilUser, and $lng.

Referenced by ilSCORM2004Asset\exportHTMLPageObjects(), and getOnloadCode().

+ Here is the caller graph for this function:

◆ getLangVars()

static ilPCQuestion::getLangVars ( )
static

Get lang vars needed for editing.

Returns
array array of lang var keys

Reimplemented from ilPageContent.

Definition at line 147 of file class.ilPCQuestion.php.

148 {
149 return array("ed_insert_pcqst", "empty_question", "pc_qst");
150 }

◆ getOnloadCode()

ilPCQuestion::getOnloadCode (   $a_mode)

Get on load code.

Definition at line 359 of file class.ilPCQuestion.php.

360 {
361 global $ilCtrl, $ilUser;
362
363 $code = array();
364
365 if ($this->getPage()->getPageConfig()->getEnableSelfAssessment())
366 {
367 if (!$this->getPage()->getPageConfig()->getEnableSelfAssessmentScorm() && $a_mode != IL_PAGE_PREVIEW
368 && $a_mode != "offline")
369 {
370 $ilCtrl->setParameterByClass(strtolower(get_class($this->getPage()))."gui", "page_id", $this->getPage()->getId());
371 $url = $ilCtrl->getLinkTargetByClass(strtolower(get_class($this->getPage()))."gui", "processAnswer", "", true, false);
372 $code[] = "ilCOPageQuestionHandler.initCallback('".$url."');";
373 }
374
375 if ($this->getPage()->getPageConfig()->getDisableDefaultQuestionFeedback())
376 {
377 $code[] = "ilias.questions.default_feedback = false;";
378 }
379
380 $code[] = self::getJSTextInitCode($this->getPage()->getPageConfig()->getLocalizationLanguage()).' il.COPagePres.updateQuestionOverviews();';
381 }
382
383 $get_stored_tries = $this->getPage()->getPageConfig()->getUseStoredQuestionTries();
384 if ($get_stored_tries)
385 {
386 $q_ids = $this->getPage()->getQuestionIds();
387 if (count($q_ids) > 0)
388 {
389 foreach ($q_ids as $q_id)
390 {
391 include_once("./Services/COPage/classes/class.ilPageQuestionProcessor.php");
393 $code[] = "ilias.questions.initAnswer(".$q_id.", ".(int) $as["try"].", ".($as["passed"] ? "true" : "null").");";
394 }
395 }
396 }
397 return $code;
398 }
static getJSTextInitCode($a_lang)
Get js txt init code.
static getAnswerStatus($a_q_id, $a_user_id=0)
Get statistics for question.
global $ilCtrl
Definition: ilias.php:18

References $ilCtrl, $ilUser, ilPageQuestionProcessor\getAnswerStatus(), getJSTextInitCode(), ilPageContent\getPage(), and IL_PAGE_PREVIEW.

+ Here is the call graph for this function:

◆ getQuestionJsOfPage()

ilPCQuestion::getQuestionJsOfPage (   $a_no_interaction,
  $a_mode 
)

Get question js.

Definition at line 439 of file class.ilPCQuestion.php.

440 {
441 require_once './Modules/Scorm2004/classes/class.ilQuestionExporter.php';
442 $q_ids = $this->getPage()->getQuestionIds();
443 $js = array();
444 if (count($q_ids) > 0)
445 {
446 foreach ($q_ids as $q_id)
447 {
448 $q_exporter = new ilQuestionExporter($a_no_interaction);
449 $image_path = null;
450 if ($a_mode == "offline")
451 {
452 if ($this->getPage()->getParentType() == "sahs")
453 {
454 $image_path = "./objects/";
455 }
456 if ($this->getPage()->getParentType() == "lm")
457 {
458 $image_path = "./assessment/0/".$q_id."/images/";
459 }
460 }
461
462 $js[$q_id] = $q_exporter->exportQuestion($q_id, $image_path, $a_mode);
463 }
464 }
465 return $js;
466 }
Scorm 2004 Question Exporter.

References ilPageContent\getPage().

Referenced by modifyPageContentPostXsl().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getQuestionReference()

ilPCQuestion::getQuestionReference ( )

Get Question Reference.

Returns
string Question Reference

Definition at line 60 of file class.ilPCQuestion.php.

61 {
62 if (is_object($this->q_node))
63 {
64 return $this->q_node->get_attribute("QRef", $a_questionreference);
65 }
66 return false;
67 }

◆ init()

ilPCQuestion::init ( )

Init page content component.

Reimplemented from ilPageContent.

Definition at line 28 of file class.ilPCQuestion.php.

29 {
30 $this->setType("pcqst");
31 }
setType($a_type)
Set Type.

References ilPageContent\setType().

+ Here is the call graph for this function:

◆ modifyPageContentPostXsl()

ilPCQuestion::modifyPageContentPostXsl (   $a_output,
  $a_mode 
)

Modify page content after xsl.

Parameters
string$a_output
Returns
string

Reimplemented from ilPageContent.

Definition at line 260 of file class.ilPCQuestion.php.

261 {
262 global $lng;
263
264 if ($this->getPage()->getPageConfig()->getEnableSelfAssessment())
265 {
266 // #14154
267 $q_ids = $this->getPage()->getQuestionIds();
268 if(sizeof($q_ids))
269 {
270 include_once "./Modules/TestQuestionPool/classes/class.assQuestionGUI.php";
271 foreach($q_ids as $q_id)
272 {
273 $q_gui = assQuestionGUI::_getQuestionGUI("", $q_id);
274 // object check due to #16557
275 if(is_object($q_gui->object) && !$q_gui->object->isComplete())
276 {
277 $a_output = str_replace("{{{{{Question;il__qst_".$q_id."}}}}}",
278 "<i>".$lng->txt("cont_empty_question")."</i>",
279 $a_output);
280 }
281 }
282
283 // this exports the questions which is needed below
284 $qhtml = $this->getQuestionJsOfPage(($a_mode == "edit") ? true : false, $a_mode);
285
286 require_once './Modules/Scorm2004/classes/class.ilQuestionExporter.php';
287 $a_output = "<script>".ilQuestionExporter::questionsJS($q_ids)."</script>".$a_output;
288 if(!self::$initial_done)
289 {
290 $a_output = "<script>var ScormApi=null; var questions = new Array();</script>".$a_output;
291 self::$initial_done = true;
292 }
293 }
294 }
295 else
296 {
297 // set by T&A components
298 $qhtml = $this->getPage()->getPageConfig()->getQuestionHTML();
299 }
300
301 if (is_array($qhtml))
302 {
303 foreach ($qhtml as $k => $h)
304 {
305 $a_output = str_replace("{{{{{Question;il__qst_$k"."}}}}}", " ".$h, $a_output);
306 }
307 }
308
309 return $a_output;
310 }
& _getQuestionGUI($question_type, $question_id=-1)
Creates a question gui representation and returns the alias to the question gui note: please do not u...
getQuestionJsOfPage($a_no_interaction, $a_mode)
Get question js.

References $lng, assQuestionGUI\_getQuestionGUI(), ilPageContent\getPage(), and getQuestionJsOfPage().

+ Here is the call graph for this function:

◆ resetInitialState()

static ilPCQuestion::resetInitialState ( )
static

Reset initial state (for exports)

Definition at line 315 of file class.ilPCQuestion.php.

316 {
317 self::$initial_done = false;
318 }

Referenced by ilObjContentObject\exportPageHTML().

+ Here is the caller graph for this function:

◆ setNode()

ilPCQuestion::setNode ( $a_node)

Set node.

Reimplemented from ilPageContent.

Definition at line 36 of file class.ilPCQuestion.php.

37 {
38 parent::setNode($a_node); // this is the PageContent node
39 $this->q_node =& $a_node->first_child(); //... and this the Question
40 }

◆ setQuestionReference()

ilPCQuestion::setQuestionReference (   $a_questionreference)

Set Question Reference.

Parameters
string$a_questionreferenceQuestion Reference

Definition at line 47 of file class.ilPCQuestion.php.

48 {
49 if (is_object($this->q_node))
50 {
51 $this->q_node->set_attribute("QRef", $a_questionreference);
52 }
53 }

Field Documentation

◆ $dom

ilPCQuestion::$dom

Definition at line 20 of file class.ilPCQuestion.php.

◆ $initial_done

ilPCQuestion::$initial_done
staticprotected

Definition at line 23 of file class.ilPCQuestion.php.

◆ $q_node

ilPCQuestion::$q_node

Definition at line 21 of file class.ilPCQuestion.php.


The documentation for this class was generated from the following file: