4require_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();
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)
initFilteredQuestionList(ilObjTestDynamicQuestionSetConfig $dynamicQuestionSetConfig, ilTestDynamicQuestionSetFilterSelection $filterSelection)
questionExists($questionId)
__construct(ilDB $db, ilLanguage $lng, ilPluginAdmin $pluginAdmin, ilObjTest $testOBJ)
Constructor.
initCompleteQuestionList(ilObjTestDynamicQuestionSetConfig $dynamicQuestionSetConfig, $answerStatusActiveId)
getQuestionSequenceStructuredByUpdateDate(ilAssQuestionList $questionList)
load(ilObjTestDynamicQuestionSetConfig $dynamicQuestionSetConfig, ilTestDynamicQuestionSetFilterSelection $filterSelection)
initActualQuestionSequence(ilObjTestDynamicQuestionSetConfig $dynamicQuestionSetConfig, ilAssQuestionList $questionList)
getQuestionData($questionId)
getCompleteQuestionList()
getActualQuestionSequence()