ILIAS  Release_5_0_x_branch Revision 61816
 All Data Structures Namespaces Files Functions Variables Groups Pages
class.ilTestQuestionSetConfig.php
Go to the documentation of this file.
1 <?php
2 /* Copyright (c) 1998-2013 ILIAS open source, Extended GPL, see docs/LICENSE */
3 
13 {
19  protected $tree = null;
20 
26  protected $db = null;
27 
33  protected $pluginAdmin = null;
34 
40  protected $testOBJ = null;
41 
49  {
50  $this->tree = $tree;
51  $this->db = $db;
52  $this->pluginAdmin = $pluginAdmin;
53  $this->testOBJ = $testOBJ;
54  }
55 
59  abstract public function loadFromDb();
60 
64  abstract public function saveToDb();
65 
71  abstract public function cloneToDbForTestId($testId);
72 
76  abstract public function deleteFromDb();
77 
79  {
80  return false;
81  }
82 
84  {
85  return '';
86  }
87 
88  public function areDepenciesBroken()
89  {
90  return false;
91  }
92 
94  {
95  return '';
96  }
97 
98  public function isValidRequestOnBrokenQuestionSetDepencies($nextClass, $cmd)
99  {
100  return true;
101  }
102 
104  {
105  return array();
106  }
107 
108  abstract public function isQuestionSetConfigured();
109 
113  abstract public function doesQuestionSetRelatedDataExist();
114 
118  abstract public function removeQuestionSetRelatedData();
119 
123  abstract public function resetQuestionSetRelatedTestSettings();
124 
130  abstract public function cloneQuestionSetRelatedData($cloneTestOBJ);
131 
136  public function getQuestionPoolPathString($poolId)
137  {
138  $nodePath = $this->tree->getNodePath(
139  current(ilObject::_getAllReferences($poolId))
140  );
141 
142  $questionPoolPathString = '';
143 
144  $i = 0;
145  $j = count($nodePath) - 2;
146 
147  foreach($nodePath as $node)
148  {
149  if( $i > 0 )
150  {
151  $questionPoolPathString .= ' > ';
152  }
153 
154  $questionPoolPathString .= $node['title'];
155 
156  if( $i == $j )
157  {
158  break;
159  }
160 
161  $i++;
162  }
163 
164  return $questionPoolPathString;
165  }
166 
167  abstract public function isResultTaxonomyFilterSupported();
168 }