4 require_once
'Modules/TestQuestionPool/classes/class.ilAssQuestionList.php';
74 $dynamicQuestionSetConfig, $filterSelection
78 $dynamicQuestionSetConfig, $this->filteredQuestionList
90 $questionList->setAnswerStatusActiveId($answerStatusActiveId);
92 $questionList->load();
112 require_once
'Services/Taxonomy/classes/class.ilObjTaxonomy.php';
120 $questionList->addTaxonomyFilter(
121 $taxId, $taxNodes, $this->testOBJ->getId(), $this->testOBJ->getType()
127 $questionList->setAvailableTaxonomyIds( array(
134 $questionList->load();
136 return $questionList;
155 require_once
'Services/Taxonomy/classes/class.ilObjTaxonomy.php';
158 require_once
'Modules/Test/classes/class.ilTestTaxonomyTree.php';
160 $tree->initOrderedTreeIndex($tax);
162 $questionsByNode = array();
163 $nodelessQuestions = array();
167 if( isset($qData[
'taxonomies'][$orderingTaxId]) && count($qData[
'taxonomies'][$orderingTaxId]) )
169 foreach($qData[
'taxonomies'][$orderingTaxId] as $nodeId => $itemData)
171 $nodeOrderingPath = $tree->getNodeOrderingPathString($itemData[
'node_id']);
173 if( !isset($questionsByNode[ $nodeOrderingPath ]) )
175 $questionsByNode[ $nodeOrderingPath ] = array();
180 $questionsByNode[ $nodeOrderingPath ][$itemData[
'order_nr']] = $qId;
184 $questionsByNode[ $nodeOrderingPath ][$qData[
'title'].
'::'.$qId] = $qId;
190 $nodelessQuestions[$qData[
'tstamp'].
'::'.$qId] = $qId;
194 foreach($questionsByNode as
$path => $questions)
198 ksort($questions, SORT_NUMERIC);
202 ksort($questions, SORT_STRING);
205 $questionsByNode[
$path] = array_values($questions);
208 ksort($questionsByNode, SORT_STRING);
209 $sequence = array_values($questionsByNode);
211 ksort($nodelessQuestions);
212 $sequence[] = array_values($nodelessQuestions);
223 $sequence[ $qData[
'tstamp'].
'::'.$qId ] = $qId;
227 $sequence = array_values($sequence);
229 return array($sequence);
241 $questionData = $this->completeQuestionList->getQuestionDataArray();
242 return isset($questionData[$questionId]);
247 $questionData = $this->completeQuestionList->getQuestionDataArray();
248 return $questionData[$questionId];
253 return $this->completeQuestionList->getQuestionDataArray();
getCompleteQuestionList()
initFilteredQuestionList(ilObjTestDynamicQuestionSetConfig $dynamicQuestionSetConfig, ilTestDynamicQuestionSetFilterSelection $filterSelection)
getQuestionSequenceStructuredByUpdateDate(ilAssQuestionList $questionList)
static getUsageOfObject($a_obj_id, $a_include_titles=false)
Get usage of object.
isTaxonomyFilterEnabled()
isser for taxonomie filter enabled
getAnswerStatusSelection()
getAnswerStatusActiveId()
Administration class for plugins.
initActualQuestionSequence(ilObjTestDynamicQuestionSetConfig $dynamicQuestionSetConfig, ilAssQuestionList $questionList)
__construct(ilDB $db, ilLanguage $lng, ilPluginAdmin $pluginAdmin, ilObjTest $testOBJ)
Constructor.
getFilteredQuestionList()
getQuestionSequenceStructuredByTaxonomy(ilAssQuestionList $questionList, $orderingTaxId)
questionExists($questionId)
isAnswerStatusFilterEnabled()
getActualQuestionSequence()
getQuestionData($questionId)
getOrderingTaxonomyId()
setter for ordering taxonomy id
getSourceQuestionPoolId()
getter for source question pool id
initCompleteQuestionList(ilObjTestDynamicQuestionSetConfig $dynamicQuestionSetConfig, $answerStatusActiveId)
load(ilObjTestDynamicQuestionSetConfig $dynamicQuestionSetConfig, ilTestDynamicQuestionSetFilterSelection $filterSelection)