4require_once
'Modules/TestQuestionPool/classes/class.ilAssQuestionList.php';
79 $dynamicQuestionSetConfig, $filterSelection
83 $dynamicQuestionSetConfig, $filterSelection
87 $dynamicQuestionSetConfig, $this->filteredQuestionList
99 $questionList->load();
101 return $questionList;
117 require_once
'Services/Taxonomy/classes/class.ilObjTaxonomy.php';
125 $questionList->addTaxonomyFilter(
126 $taxId, $taxNodes, $this->testOBJ->getId(), $this->testOBJ->getType()
132 $questionList->setAvailableTaxonomyIds( array(
139 $questionList->load();
141 return $questionList;
157 require_once
'Services/Taxonomy/classes/class.ilObjTaxonomy.php';
165 $questionList->addTaxonomyFilter(
166 $taxId, $taxNodes, $this->testOBJ->getId(), $this->testOBJ->getType()
171 $questionList->load();
173 return $questionList;
192 require_once
'Services/Taxonomy/classes/class.ilObjTaxonomy.php';
195 require_once
'Modules/Test/classes/class.ilTestTaxonomyTree.php';
197 $tree->initOrderedTreeIndex($tax);
199 $questionsByNode = array();
200 $nodelessQuestions = array();
204 if( isset($qData[
'taxonomies'][$orderingTaxId]) && count($qData[
'taxonomies'][$orderingTaxId]) )
206 foreach($qData[
'taxonomies'][$orderingTaxId] as $nodeId => $itemData)
208 $nodeOrderingPath = $tree->getNodeOrderingPathString($itemData[
'node_id']);
210 if( !isset($questionsByNode[ $nodeOrderingPath ]) )
212 $questionsByNode[ $nodeOrderingPath ] = array();
217 $questionsByNode[ $nodeOrderingPath ][$itemData[
'order_nr']] = $qId;
221 $questionsByNode[ $nodeOrderingPath ][$qData[
'title'].
'::'.$qId] = $qId;
227 $nodelessQuestions[$qData[
'tstamp'].
'::'.$qId] = $qId;
231 foreach($questionsByNode as
$path => $questions)
235 ksort($questions, SORT_NUMERIC);
239 ksort($questions, SORT_STRING);
242 $questionsByNode[
$path] = array_values($questions);
245 ksort($questionsByNode, SORT_STRING);
246 $sequence = array_values($questionsByNode);
248 ksort($nodelessQuestions);
249 $sequence[] = array_values($nodelessQuestions);
260 $sequence[ $qData[
'tstamp'].
'::'.$qId ] = $qId;
264 $sequence = array_values($sequence);
266 return array($sequence);
278 $questionData = $this->completeQuestionList->getQuestionDataArray();
279 return isset($questionData[$questionId]);
284 $questionData = $this->completeQuestionList->getQuestionDataArray();
285 return $questionData[$questionId];
290 return $this->completeQuestionList->getQuestionDataArray();
326 $questionList =
new ilAssQuestionList($this->db, $this->lng, $this->pluginAdmin);
327 $questionList->setParentObjId($sourceQuestionPoolId);
328 $questionList->setAnswerStatusActiveId($answerStatusActiveId);
329 return $questionList;
An exception for terminatinating execution or to throw for unit testing.
static getUsageOfObject($a_obj_id, $a_include_titles=false)
Get usage of object.
getSourceQuestionPoolId()
getter for source question pool id
isTaxonomyFilterEnabled()
isser for taxonomie filter enabled
isAnswerStatusFilterEnabled()
getOrderingTaxonomyId()
setter for ordering taxonomy id
Administration class for plugins.
getAnswerStatusActiveId()
getAnswerStatusSelection()
getFilteredQuestionList()
getQuestionSequenceStructuredByTaxonomy(ilAssQuestionList $questionList, $orderingTaxId)
getSelectionQuestionList()
initFilteredQuestionList(ilObjTestDynamicQuestionSetConfig $dynamicQuestionSetConfig, ilTestDynamicQuestionSetFilterSelection $filterSelection)
__construct(ilDBInterface $db, ilLanguage $lng, ilPluginAdmin $pluginAdmin, ilObjTest $testOBJ)
Constructor.
questionExists($questionId)
initCompleteQuestionList(ilObjTestDynamicQuestionSetConfig $dynamicQuestionSetConfig, $answerStatusActiveId)
getQuestionSequenceStructuredByUpdateDate(ilAssQuestionList $questionList)
load(ilObjTestDynamicQuestionSetConfig $dynamicQuestionSetConfig, ilTestDynamicQuestionSetFilterSelection $filterSelection)
initActualQuestionSequence(ilObjTestDynamicQuestionSetConfig $dynamicQuestionSetConfig, ilAssQuestionList $questionList)
getQuestionData($questionId)
getCompleteQuestionList()
buildQuestionList($sourceQuestionPoolId, $answerStatusActiveId)
getActualQuestionSequence()
initSelectionQuestionList(ilObjTestDynamicQuestionSetConfig $dynamicQuestionSetConfig, ilTestDynamicQuestionSetFilterSelection $filterSelection)