ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
ilLOSettings Class Reference

Settings for LO courses. More...

+ Collaboration diagram for ilLOSettings:

Public Member Functions

 setInitialTestType ($a_type)
 Set Initial test type. More...
 
 getInitialTestType ()
 Get initial test type. More...
 
 getQualifyingTestType ()
 Get qualifying test type. More...
 
 setQualifyingTestType ($a_type)
 Set qualifying test type. More...
 
 setInitialTestAsStart ($a_type)
 
 isInitialTestStart ()
 Get initial test start. More...
 
 setQualifyingTestAsStart ($a_type)
 Set qt as start object. More...
 
 isQualifyingTestStart ()
 Is qt start object. More...
 
 hasSeparateInitialTests ()
 Check if separate initial test are configured. More...
 
 hasSeparateQualifiedTests ()
 Check if separate qualified tests are configured. More...
 
 isInitialTestQualifying ()
 Check if initial test is qualifying*. More...
 
 worksWithStartObjects ()
 Check if start objects are enabled. More...
 
 worksWithInitialTest ()
 Check if the loc is configured for initial tests. More...
 
 isGeneralQualifiedTestVisible ()
 Check if qualified test for all objectives is visible. More...
 
 setGeneralQualifiedTestVisibility ($a_stat)
 
 isQualifiedTestPerObjectiveVisible ()
 
 setQualifiedTestPerObjectiveVisibility ($a_stat)
 
 getPassedObjectiveMode ()
 
 setPassedObjectiveMode ($a_mode)
 
 isGeneralInitialTestVisible ()
 Check if initial test for all objectives is visible. More...
 
 settingsExist ()
 
 getObjId ()
 
 setType ($a_type)
 
 getType ()
 
 getTestByType ($a_type)
 
 getTests ()
 Get assigned tests. More...
 
 isRandomTestType ($a_type)
 Check if test is of type random test. More...
 
 setInitialTest ($a_id)
 set initial test id More...
 
 getInitialTest ()
 get initial test More...
 
 setQualifiedTest ($a_id)
 set qualified test More...
 
 getQualifiedTest ()
 get qualified test More...
 
 resetResults ($a_status)
 reset results More...
 
 isResetResultsEnabled ()
 check if reset result is enabled More...
 
 create ()
 Create new entry. More...
 
 update ()
 update settings type $ilDB More...
 
 updateStartObjects (ilContainerStartObjects $start)
 Update start objects Depends on course objective settings. More...
 
 toXml (ilXmlWriter $writer)
 export to xml More...
 

Static Public Member Functions

static getInstanceByObjId ($a_obj_id)
 get singleton instance More...
 
static isObjectiveTest ($a_trst_ref_id)
 Check if test ref_id is used in an objective course. More...
 
static cloneSettings ($a_copy_id, $a_container_id, $a_new_container_id)
 Clone settings. More...
 

Data Fields

const QST_PASSED_FLAG = 1
 
const QST_PASSED_HIDE = 2
 
const TYPE_INITIAL_PLACEMENT_ALL = 1
 
const TYPE_INITIAL_PLACEMENT_SELECTED = 2
 
const TYPE_INITIAL_QUALIFYING_ALL = 3
 
const TYPE_INITIAL_QUALIFYING_SELECTED = 4
 
const TYPE_INITIAL_NONE = 5
 
const TYPE_QUALIFYING_ALL = 1
 
const TYPE_QUALIFYING_SELECTED = 2
 
const TYPE_TEST_UNDEFINED = 0
 
const TYPE_TEST_INITIAL = 1
 
const TYPE_TEST_QUALIFIED = 2
 
const QT_VISIBLE_ALL = 0
 
const QT_VISIBLE_OBJECTIVE = 1
 
const LOC_INITIAL_ALL = 1
 
const LOC_INITIAL_SEL = 2
 
const LOC_QUALIFIED = 3
 
const LOC_PRACTISE = 4
 
const HIDE_PASSED_OBJECTIVE_QST = 1
 
const MARK_PASSED_OBJECTIVE_QST = 2
 

Protected Member Functions

 __construct ($a_cont_id)
 Constructor. More...
 
 read ()
 Read. More...
 

Private Attributes

 $logger = null
 
 $it_type = self::TYPE_INITIAL_PLACEMENT_ALL
 
 $qt_type = self::TYPE_QUALIFYING_ALL
 
 $it_start = false
 
 $qt_start = false
 
 $container_id = 0
 
 $type = 0
 
 $initial_test = 0
 
 $qualified_test = 0
 
 $reset_results = true
 
 $passed_obj_mode = self::HIDE_PASSED_OBJECTIVE_QST
 
 $entry_exists = false
 

Static Private Attributes

static $instances = array()
 

Detailed Description

Settings for LO courses.

Author
Stefan Meyer smeye.nosp@m.r.il.nosp@m.ias@g.nosp@m.mx.d.nosp@m.e
Version
$Id$

Definition at line 10 of file class.ilLOSettings.php.

Constructor & Destructor Documentation

◆ __construct()

ilLOSettings::__construct (   $a_cont_id)
protected

Constructor.

Parameters
int$a_cont_id

Definition at line 76 of file class.ilLOSettings.php.

References $GLOBALS, and read().

77  {
78  $this->logger = $GLOBALS['DIC']->logger()->crs();
79 
80  $this->container_id = $a_cont_id;
81  $this->read();
82  }
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
+ Here is the call graph for this function:

Member Function Documentation

◆ cloneSettings()

static ilLOSettings::cloneSettings (   $a_copy_id,
  $a_container_id,
  $a_new_container_id 
)
static

Clone settings.

Parameters
type$a_copy_id
type$a_container_id
type$a_new_container_id

Definition at line 220 of file class.ilLOSettings.php.

References $options, and ilCopyWizardOptions\_getInstance().

Referenced by ilObjCourse\cloneDependencies().

221  {
222  include_once './Services/CopyWizard/classes/class.ilCopyWizardOptions.php';
224  $mappings = $options->getMappings();
225 
226  $settings = self::getInstanceByObjId($a_container_id);
227  $new_settings = self::getInstanceByObjId($a_new_container_id);
228 
229  $new_settings->setType($settings->getType());
230  $new_settings->setInitialTestType($settings->getInitialTestType());
231  $new_settings->setQualifyingTestType($settings->getQualifyingTestType());
232  $new_settings->resetResults($settings->isResetResultsEnabled());
233  $new_settings->setPassedObjectiveMode($settings->getPassedObjectiveMode());
234 
235  if ($settings->getInitialTest() and array_key_exists($settings->getInitialTest(), $mappings)) {
236  $new_settings->setInitialTest($mappings[$settings->getInitialTest()]);
237  $new_settings->setInitialTestAsStart($new_settings->isInitialTestStart());
238  }
239 
240  if ($settings->getQualifiedTest() and array_key_exists($settings->getQualifiedTest(), $mappings)) {
241  $new_settings->setQualifiedTest($mappings[$settings->getQualifiedTest()]);
242  $new_settings->setQualifyingTestAsStart($settings->isQualifyingTestStart());
243  }
244 
245  // update calls create in case of no entry exists.
246  $new_settings->update();
247  }
static _getInstance($a_copy_id)
Get instance of copy wizard options.
if(!isset($_REQUEST['ReturnTo'])) if(!isset($_REQUEST['AuthId'])) $options
Definition: as_login.php:20
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ create()

ilLOSettings::create ( )

Create new entry.

Definition at line 445 of file class.ilLOSettings.php.

References $ilDB, $query, getInitialTest(), getInitialTestType(), getObjId(), getPassedObjectiveMode(), getQualifiedTest(), getQualifyingTestType(), isInitialTestStart(), isQualifyingTestStart(), and isResetResultsEnabled().

Referenced by update().

446  {
447  global $ilDB;
448 
449  $query = 'INSERT INTO loc_settings ' .
450  '(obj_id, it_type,itest,qtest,it_start,qt_type,qt_start,reset_results,passed_obj_mode) VALUES ( ' .
451  $ilDB->quote($this->getObjId(), 'integer') . ', ' .
452  $ilDB->quote($this->getInitialTestType(), 'integer') . ', ' .
453  $ilDB->quote($this->getInitialTest(), 'integer') . ', ' .
454  $ilDB->quote($this->getQualifiedTest(), 'integer') . ', ' .
455  $ilDB->quote($this->isInitialTestStart(), 'integer') . ', ' .
456  $ilDB->quote($this->getQualifyingTestType(), 'integer') . ', ' .
457  $ilDB->quote($this->isQualifyingTestStart(), 'integer') . ', ' .
458  $ilDB->quote($this->isResetResultsEnabled(), 'integer') . ', ' .
459  $ilDB->quote($this->getPassedObjectiveMode(), 'integer') . ' ' .
460  ') ';
461  $ilDB->manipulate($query);
462 
463  $this->entry_exists = true;
464  }
isQualifyingTestStart()
Is qt start object.
getInitialTestType()
Get initial test type.
isResetResultsEnabled()
check if reset result is enabled
$query
getQualifiedTest()
get qualified test
getQualifyingTestType()
Get qualifying test type.
getInitialTest()
get initial test
global $ilDB
isInitialTestStart()
Get initial test start.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getInitialTest()

ilLOSettings::getInitialTest ( )

get initial test

Returns
type
Todo:
refactor

Definition at line 399 of file class.ilLOSettings.php.

References $initial_test.

Referenced by create(), getTestByType(), getTests(), read(), toXml(), update(), and updateStartObjects().

400  {
401  return $this->initial_test;
402  }
+ Here is the caller graph for this function:

◆ getInitialTestType()

ilLOSettings::getInitialTestType ( )

Get initial test type.

Returns
type

Definition at line 110 of file class.ilLOSettings.php.

References $it_type.

Referenced by create(), hasSeparateInitialTests(), isGeneralInitialTestVisible(), isInitialTestQualifying(), toXml(), update(), updateStartObjects(), ilLOEditorGUI\updateTestAssignments(), and worksWithInitialTest().

111  {
112  return $this->it_type;
113  }
+ Here is the caller graph for this function:

◆ getInstanceByObjId()

static ilLOSettings::getInstanceByObjId (   $a_obj_id)
static

get singleton instance

Parameters
int$a_obj_id
Returns
ilLOSettings

Definition at line 89 of file class.ilLOSettings.php.

Referenced by ilLOTestAssignments\__construct(), ilLOMemberTestResultTableGUI\__construct(), ilLOTestAssignmentForm\__construct(), ilLOTestQuestionAdapter\__construct(), ilLOTestAssignmentTableGUI\__construct(), ilLOEditorStatus\__construct(), ilLOEditorGUI\__construct(), ilCourseObjectivesTableGUI\__construct(), ilCourseObjectiveQuestionAssignmentTableGUI\__construct(), ilCourseObjectivesGUI\__construct(), ilContainerObjectiveGUI\buildObjectiveProgressBar(), ilLOEditorGUI\confirmDeleteTest(), ilLOEditorGUI\confirmDeleteTests(), ilLOEditorGUI\deleteTest(), ilLOEditorGUI\deleteTests(), ilLOUserResults\getCompletedObjectiveIds(), ilLOUserResults\getCourseResultsForUserPresentation(), ilLOEditorStatus\getHTML(), ilContainerObjectiveGUI\getMainContent(), ilLOUserResults\getObjectiveStatusForLP(), ilLOUserResults\getSummarizedObjectiveStatusForLP(), ilTrQuery\getUserObjectiveMatrix(), ilTestResultHeaderLabelBuilder\initTestType(), ilLOUtils\isCompleted(), ilLOUtils\lookupObjectiveRequiredPercentage(), ilLOXmlParser\parseSettings(), ilPortfolioPageGUI\renderMyCourses(), ilTestLearningObjectivesStatusGUI\renderStatus(), ilCourseObjectiveResult\reset(), ilTestLP\resetCustomLPDataForUserIds(), ilLOEditorGUI\saveMultiTestAssignment(), ilLOEditorGUI\saveSettings(), ilLOEditorGUI\saveTest(), ilLOEditorGUI\setTabs(), ilContainerObjectiveGUI\showObjectives(), ilLOEditorGUI\testOverview(), ilLOEditorGUI\testsOverview(), and ilLOXmlWriter\write().

90  {
91  if (self::$instances[$a_obj_id]) {
92  return self::$instances[$a_obj_id];
93  }
94  return self::$instances[$a_obj_id] = new ilLOSettings($a_obj_id);
95  }
Settings for LO courses.
+ Here is the caller graph for this function:

◆ getObjId()

ilLOSettings::getObjId ( )

Definition at line 322 of file class.ilLOSettings.php.

References $container_id.

Referenced by create(), read(), and update().

323  {
324  return $this->container_id;
325  }
+ Here is the caller graph for this function:

◆ getPassedObjectiveMode()

ilLOSettings::getPassedObjectiveMode ( )

Definition at line 294 of file class.ilLOSettings.php.

Referenced by create(), toXml(), and update().

295  {
296  return $this->passed_objective_mode;
297  }
+ Here is the caller graph for this function:

◆ getQualifiedTest()

ilLOSettings::getQualifiedTest ( )

get qualified test

Returns
type
Todo:
refactor

Definition at line 419 of file class.ilLOSettings.php.

References $qualified_test.

Referenced by create(), getTestByType(), getTests(), read(), toXml(), update(), and updateStartObjects().

420  {
421  return $this->qualified_test;
422  }
+ Here is the caller graph for this function:

◆ getQualifyingTestType()

ilLOSettings::getQualifyingTestType ( )

Get qualifying test type.

Definition at line 118 of file class.ilLOSettings.php.

References $qt_type.

Referenced by create(), hasSeparateQualifiedTests(), isGeneralQualifiedTestVisible(), isQualifiedTestPerObjectiveVisible(), toXml(), update(), updateStartObjects(), and ilLOEditorGUI\updateTestAssignments().

119  {
120  return $this->qt_type;
121  }
+ Here is the caller graph for this function:

◆ getTestByType()

ilLOSettings::getTestByType (   $a_type)
Parameters
type$a_type
Returns
type
Todo:
refactor

Definition at line 343 of file class.ilLOSettings.php.

References $a_type, getInitialTest(), and getQualifiedTest().

Referenced by isRandomTestType().

344  {
345  switch ($a_type) {
346  case self::TYPE_TEST_INITIAL:
347  return $this->getInitialTest();
348 
349  case self::TYPE_TEST_QUALIFIED:
350  return $this->getQualifiedTest();
351  }
352  }
$a_type
Definition: workflow.php:92
getQualifiedTest()
get qualified test
getInitialTest()
get initial test
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getTests()

ilLOSettings::getTests ( )

Get assigned tests.

Returns
type
Todo:
refactor

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

References array, getInitialTest(), and getQualifiedTest().

360  {
361  $tests = array();
362  if ($this->getInitialTest()) {
363  $tests[] = $this->getInitialTest();
364  }
365  if ($this->getQualifiedTest()) {
366  $tests[] = $this->getQualifiedTest();
367  }
368  return $tests;
369  }
getQualifiedTest()
get qualified test
Create styles array
The data for the language used.
getInitialTest()
get initial test
+ Here is the call graph for this function:

◆ getType()

ilLOSettings::getType ( )

Definition at line 332 of file class.ilLOSettings.php.

References $type.

333  {
334  return $this->type;
335  }

◆ hasSeparateInitialTests()

ilLOSettings::hasSeparateInitialTests ( )

Check if separate initial test are configured.

Definition at line 171 of file class.ilLOSettings.php.

References getInitialTestType().

172  {
173  return $this->getInitialTestType() == self::TYPE_INITIAL_PLACEMENT_SELECTED || $this->getInitialTestType() == self::TYPE_INITIAL_QUALIFYING_SELECTED;
174  }
getInitialTestType()
Get initial test type.
+ Here is the call graph for this function:

◆ hasSeparateQualifiedTests()

ilLOSettings::hasSeparateQualifiedTests ( )

Check if separate qualified tests are configured.

Definition at line 179 of file class.ilLOSettings.php.

References getQualifyingTestType().

180  {
181  return $this->getQualifyingTestType() == self::TYPE_QUALIFYING_SELECTED;
182  }
getQualifyingTestType()
Get qualifying test type.
+ Here is the call graph for this function:

◆ isGeneralInitialTestVisible()

ilLOSettings::isGeneralInitialTestVisible ( )

Check if initial test for all objectives is visible.

Returns
bool

Definition at line 308 of file class.ilLOSettings.php.

References getInitialTestType().

309  {
310  return $this->getInitialTestType() == self::TYPE_INITIAL_PLACEMENT_ALL || $this->getInitialTestType() == self::TYPE_INITIAL_QUALIFYING_ALL;
311  }
getInitialTestType()
Get initial test type.
+ Here is the call graph for this function:

◆ isGeneralQualifiedTestVisible()

ilLOSettings::isGeneralQualifiedTestVisible ( )

Check if qualified test for all objectives is visible.

Returns
type

Definition at line 270 of file class.ilLOSettings.php.

References getQualifyingTestType().

271  {
272  return $this->getQualifyingTestType() == self::TYPE_QUALIFYING_ALL;
273  }
getQualifyingTestType()
Get qualifying test type.
+ Here is the call graph for this function:

◆ isInitialTestQualifying()

ilLOSettings::isInitialTestQualifying ( )

Check if initial test is qualifying*.

Definition at line 187 of file class.ilLOSettings.php.

References getInitialTestType().

188  {
189  return $this->getInitialTestType() == self::TYPE_INITIAL_QUALIFYING_ALL || $this->getInitialTestType() == self::TYPE_INITIAL_QUALIFYING_SELECTED;
190  }
getInitialTestType()
Get initial test type.
+ Here is the call graph for this function:

◆ isInitialTestStart()

ilLOSettings::isInitialTestStart ( )

Get initial test start.

Returns
type

Definition at line 145 of file class.ilLOSettings.php.

References $it_start.

Referenced by create(), toXml(), update(), updateStartObjects(), and worksWithStartObjects().

146  {
147  return $this->it_start;
148  }
+ Here is the caller graph for this function:

◆ isObjectiveTest()

static ilLOSettings::isObjectiveTest (   $a_trst_ref_id)
static

Check if test ref_id is used in an objective course.

Parameters
intref_id

Definition at line 196 of file class.ilLOSettings.php.

References $ilDB, $query, $res, $row, ilDBConstants\FETCHMODE_OBJECT, and ilLOTestAssignments\lookupContainerForTest().

Referenced by ilObjTestGUI\determineObjectiveOrientedContainer(), ilObjTestListGUI\isObjectiveTest(), ilObjTestListGUI\modifyTitleLink(), and ilTestLP\resetCustomLPDataForUserIds().

197  {
198  global $ilDB;
199 
200 
201  // Check for direct assignment
202  $query = 'SELECT obj_id FROM loc_settings ' .
203  'WHERE itest = ' . $ilDB->quote($a_trst_ref_id, 'integer') . ' ' .
204  'OR qtest = ' . $ilDB->quote($a_trst_ref_id, 'integer');
205  $res = $ilDB->query($query);
206  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
207  return $row->obj_id;
208  }
209 
210  include_once './Modules/Course/classes/Objectives/class.ilLOTestAssignments.php';
211  return ilLOTestAssignments::lookupContainerForTest($a_trst_ref_id);
212  }
foreach($_POST as $key=> $value) $res
$query
static lookupContainerForTest($a_test_ref_id)
global $ilDB
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isQualifiedTestPerObjectiveVisible()

ilLOSettings::isQualifiedTestPerObjectiveVisible ( )

Definition at line 284 of file class.ilLOSettings.php.

References getQualifyingTestType().

285  {
286  return $this->getQualifyingTestType() == self::TYPE_QUALIFYING_SELECTED;
287  }
getQualifyingTestType()
Get qualifying test type.
+ Here is the call graph for this function:

◆ isQualifyingTestStart()

ilLOSettings::isQualifyingTestStart ( )

Is qt start object.

Returns
type

Definition at line 163 of file class.ilLOSettings.php.

References $qt_start.

Referenced by create(), toXml(), update(), updateStartObjects(), and worksWithStartObjects().

164  {
165  return $this->qt_start;
166  }
+ Here is the caller graph for this function:

◆ isRandomTestType()

ilLOSettings::isRandomTestType (   $a_type)

Check if test is of type random test.

Parameters
type$a_type
Returns
type
Todo:
refactor

Definition at line 377 of file class.ilLOSettings.php.

References $a_type, ilObject\_lookupObjId(), ilObjTest\_lookupRandomTest(), and getTestByType().

378  {
379  $tst = $this->getTestByType($a_type);
380  include_once './Modules/Test/classes/class.ilObjTest.php';
382  }
static _lookupRandomTest($a_obj_id)
Returns the fact wether the test with passed obj id is a random questions test or not...
$a_type
Definition: workflow.php:92
static _lookupObjId($a_id)
+ Here is the call graph for this function:

◆ isResetResultsEnabled()

ilLOSettings::isResetResultsEnabled ( )

check if reset result is enabled

Returns
type

Definition at line 437 of file class.ilLOSettings.php.

References $reset_results.

Referenced by create(), toXml(), and update().

438  {
439  return (bool) $this->reset_results;
440  }
+ Here is the caller graph for this function:

◆ read()

ilLOSettings::read ( )
protected

Read.

Definition at line 562 of file class.ilLOSettings.php.

References $GLOBALS, $ilDB, $query, $res, $row, ilDBConstants\FETCHMODE_OBJECT, getInitialTest(), getObjId(), getQualifiedTest(), resetResults(), setInitialTest(), setInitialTestAsStart(), setInitialTestType(), setPassedObjectiveMode(), setQualifiedTest(), setQualifyingTestAsStart(), and setQualifyingTestType().

Referenced by __construct().

563  {
564  global $ilDB;
565 
566  $query = 'SELECT * FROM loc_settings ' .
567  'WHERE obj_id = ' . $ilDB->quote($this->getObjId(), 'integer');
568  $res = $ilDB->query($query);
569  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
570  $this->entry_exists = true;
571 
572  $this->setInitialTestType($row->it_type);
573  $this->setInitialTestAsStart((bool) $row->it_start);
574  $this->setQualifyingTestType($row->qt_type);
575  $this->setQualifyingTestAsStart($row->qt_start);
576 
577  #$this->setType($row->type);
578  $this->setInitialTest($row->itest);
579  $this->setQualifiedTest($row->qtest);
580  #$this->setGeneralQualifiedTestVisibility($row->qt_vis_all);
581  #$this->setQualifiedTestPerObjectiveVisibility($row->qt_vis_obj);
582  $this->resetResults($row->reset_results);
583  $this->setPassedObjectiveMode($row->passed_obj_mode);
584  }
585 
586  if ($GLOBALS['tree']->isDeleted($this->getInitialTest())) {
587  $this->setInitialTest(0);
588  }
589  if ($GLOBALS['tree']->isDeleted($this->getQualifiedTest())) {
590  $this->setQualifiedTest(0);
591  }
592  }
setInitialTest($a_id)
set initial test id
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
setPassedObjectiveMode($a_mode)
setQualifiedTest($a_id)
set qualified test
foreach($_POST as $key=> $value) $res
setQualifyingTestType($a_type)
Set qualifying test type.
$query
setInitialTestType($a_type)
Set Initial test type.
getQualifiedTest()
get qualified test
getInitialTest()
get initial test
global $ilDB
setQualifyingTestAsStart($a_type)
Set qt as start object.
setInitialTestAsStart($a_type)
resetResults($a_status)
reset results
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ resetResults()

ilLOSettings::resetResults (   $a_status)

reset results

Parameters
type$a_status

Definition at line 428 of file class.ilLOSettings.php.

Referenced by read().

429  {
430  $this->reset_results = $a_status;
431  }
+ Here is the caller graph for this function:

◆ setGeneralQualifiedTestVisibility()

ilLOSettings::setGeneralQualifiedTestVisibility (   $a_stat)
Returns
type

Definition at line 278 of file class.ilLOSettings.php.

279  {
280  $this->qt_visible_all = $a_stat;
281  return true;
282  }

◆ setInitialTest()

ilLOSettings::setInitialTest (   $a_id)

set initial test id

Parameters
type$a_id
Todo:
refactor

Definition at line 389 of file class.ilLOSettings.php.

Referenced by read(), and ilLOEditorGUI\updateTestAssignments().

390  {
391  $this->initial_test = $a_id;
392  }
+ Here is the caller graph for this function:

◆ setInitialTestAsStart()

ilLOSettings::setInitialTestAsStart (   $a_type)
Parameters
type$a_type

Definition at line 136 of file class.ilLOSettings.php.

References $a_type.

Referenced by read().

137  {
138  $this->it_start = $a_type;
139  }
$a_type
Definition: workflow.php:92
+ Here is the caller graph for this function:

◆ setInitialTestType()

ilLOSettings::setInitialTestType (   $a_type)

Set Initial test type.

Parameters
type$a_type

Definition at line 101 of file class.ilLOSettings.php.

References $a_type.

Referenced by read().

102  {
103  $this->it_type = $a_type;
104  }
$a_type
Definition: workflow.php:92
+ Here is the caller graph for this function:

◆ setPassedObjectiveMode()

ilLOSettings::setPassedObjectiveMode (   $a_mode)

Definition at line 299 of file class.ilLOSettings.php.

Referenced by read().

300  {
301  $this->passed_objective_mode = $a_mode;
302  }
+ Here is the caller graph for this function:

◆ setQualifiedTest()

ilLOSettings::setQualifiedTest (   $a_id)

set qualified test

Parameters
type$a_id
Todo:
refactor

Definition at line 409 of file class.ilLOSettings.php.

Referenced by read(), and ilLOEditorGUI\updateTestAssignments().

410  {
411  $this->qualified_test = $a_id;
412  }
+ Here is the caller graph for this function:

◆ setQualifiedTestPerObjectiveVisibility()

ilLOSettings::setQualifiedTestPerObjectiveVisibility (   $a_stat)

Definition at line 289 of file class.ilLOSettings.php.

290  {
291  $this->qt_visible_lo = $a_stat;
292  }

◆ setQualifyingTestAsStart()

ilLOSettings::setQualifyingTestAsStart (   $a_type)

Set qt as start object.

Parameters
type$a_type

Definition at line 154 of file class.ilLOSettings.php.

References $a_type.

Referenced by read().

155  {
156  $this->qt_start = $a_type;
157  }
$a_type
Definition: workflow.php:92
+ Here is the caller graph for this function:

◆ setQualifyingTestType()

ilLOSettings::setQualifyingTestType (   $a_type)

Set qualifying test type.

Parameters
type$a_type

Definition at line 127 of file class.ilLOSettings.php.

References $a_type.

Referenced by read().

128  {
129  $this->qt_type = $a_type;
130  }
$a_type
Definition: workflow.php:92
+ Here is the caller graph for this function:

◆ settingsExist()

ilLOSettings::settingsExist ( )
Returns
type

Definition at line 317 of file class.ilLOSettings.php.

References $entry_exists.

318  {
319  return $this->entry_exists;
320  }

◆ setType()

ilLOSettings::setType (   $a_type)

Definition at line 327 of file class.ilLOSettings.php.

References $a_type.

328  {
329  $this->type = $a_type;
330  }
$a_type
Definition: workflow.php:92

◆ toXml()

ilLOSettings::toXml ( ilXmlWriter  $writer)

export to xml

Parameters
ilXmlWriter$writer

Definition at line 598 of file class.ilLOSettings.php.

References array, getInitialTest(), getInitialTestType(), getPassedObjectiveMode(), getQualifiedTest(), getQualifyingTestType(), isInitialTestStart(), isQualifyingTestStart(), isResetResultsEnabled(), and ilXmlWriter\xmlElement().

599  {
600  $writer->xmlElement(
601  'Settings',
602  array(
603  'initialTestType' => (int) $this->getInitialTestType(),
604  'initialTestStart' => (int) $this->isInitialTestStart(),
605  'qualifyingTestType' => (int) $this->getQualifyingTestType(),
606  'qualifyingTestStart' => (int) $this->isQualifyingTestStart(),
607  'resetResults' => (int) $this->isResetResultsEnabled(),
608  'passedObjectivesMode' => (int) $this->getPassedObjectiveMode(),
609  'iTest' => (int) $this->getInitialTest(),
610  'qTest' => (int) $this->getQualifiedTest()
611  )
612  );
613  }
isQualifyingTestStart()
Is qt start object.
getInitialTestType()
Get initial test type.
isResetResultsEnabled()
check if reset result is enabled
getQualifiedTest()
get qualified test
Create styles array
The data for the language used.
xmlElement($tag, $attrs=null, $data=null, $encode=true, $escape=true)
Writes a basic element (no children, just textual content)
getQualifyingTestType()
Get qualifying test type.
getInitialTest()
get initial test
isInitialTestStart()
Get initial test start.
+ Here is the call graph for this function:

◆ update()

ilLOSettings::update ( )

update settings type $ilDB

Definition at line 471 of file class.ilLOSettings.php.

References $ilDB, $query, create(), getInitialTest(), getInitialTestType(), getObjId(), getPassedObjectiveMode(), getQualifiedTest(), getQualifyingTestType(), isInitialTestStart(), isQualifyingTestStart(), and isResetResultsEnabled().

Referenced by ilLOEditorGUI\updateTestAssignments().

472  {
473  global $ilDB;
474 
475  if (!$this->entry_exists) {
476  return $this->create();
477  }
478 
479  $query = 'UPDATE loc_settings ' . ' ' .
480  'SET it_type = ' . $ilDB->quote($this->getInitialTestType(), 'integer') . ', ' .
481  'itest = ' . $ilDB->quote($this->getInitialTest(), 'integer') . ', ' .
482  'qtest = ' . $ilDB->quote($this->getQualifiedTest(), 'integer') . ', ' .
483  'it_start = ' . $ilDB->quote($this->isInitialTestStart(), 'integer') . ', ' .
484  'qt_type = ' . $ilDB->quote($this->getQualifyingTestType(), 'integer') . ', ' .
485  'qt_start = ' . $ilDB->quote($this->isQualifyingTestStart(), 'integer') . ', ' .
486  'reset_results = ' . $ilDB->quote($this->isResetResultsEnabled(), 'integer') . ', ' .
487  'passed_obj_mode = ' . $ilDB->quote($this->getPassedObjectiveMode(), 'integer') . ' ' .
488  'WHERE obj_id = ' . $ilDB->quote($this->getObjId(), 'integer');
489 
490  $ilDB->manipulate($query);
491  }
isQualifyingTestStart()
Is qt start object.
getInitialTestType()
Get initial test type.
create()
Create new entry.
isResetResultsEnabled()
check if reset result is enabled
$query
getQualifiedTest()
get qualified test
getQualifyingTestType()
Get qualifying test type.
getInitialTest()
get initial test
global $ilDB
isInitialTestStart()
Get initial test start.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ updateStartObjects()

ilLOSettings::updateStartObjects ( ilContainerStartObjects  $start)

Update start objects Depends on course objective settings.

Parameters
ilContainerStartObjects

Definition at line 499 of file class.ilLOSettings.php.

References ilContainerStartObjects\add(), ilContainerStartObjects\deleteItem(), ilContainerStartObjects\exists(), getInitialTest(), getInitialTestType(), getQualifiedTest(), getQualifyingTestType(), isInitialTestStart(), and isQualifyingTestStart().

500  {
501  if ($this->getInitialTestType() != self::TYPE_INITIAL_NONE) {
502  if ($start->exists($this->getQualifiedTest())) {
503  $start->deleteItem($this->getQualifiedTest());
504  }
505  }
506 
507  switch ($this->getInitialTestType()) {
508  case self::TYPE_INITIAL_PLACEMENT_ALL:
509  case self::TYPE_INITIAL_QUALIFYING_ALL:
510 
511  if ($this->isInitialTestStart()) {
512  if (!$start->exists($this->getInitialTest())) {
513  $start->add($this->getInitialTest());
514  }
515  } else {
516  if ($start->exists($this->getInitialTest())) {
517  $start->deleteItem($this->getInitialTest());
518  }
519  }
520  break;
521 
522  case self::TYPE_INITIAL_NONE:
523 
524  if ($start->exists($this->getInitialTest())) {
525  $start->deleteItem($this->getInitialTest());
526  }
527  break;
528 
529  default:
530 
531  $this->logger->debug('Type initial default');
532  if ($start->exists($this->getInitialTest())) {
533  $this->logger->debug('Old start object exists. Trying to delete');
534  $start->deleteItem($this->getInitialTest());
535  }
536  break;
537  }
538 
539  switch ($this->getQualifyingTestType()) {
540  case self::TYPE_QUALIFYING_ALL:
541 
542  if ($this->isQualifyingTestStart()) {
543  if (!$start->exists($this->getQualifiedTest())) {
544  $start->add($this->getQualifiedTest());
545  }
546  }
547  break;
548 
549  default:
550  if ($start->exists($this->getQualifiedTest())) {
551  $start->deleteItem($this->getQualifiedTest());
552  }
553  break;
554  }
555  return true;
556  }
isQualifyingTestStart()
Is qt start object.
getInitialTestType()
Get initial test type.
deleteItem($a_item_ref_id)
Delete item by ref_id.
getQualifiedTest()
get qualified test
getQualifyingTestType()
Get qualifying test type.
getInitialTest()
get initial test
isInitialTestStart()
Get initial test start.
+ Here is the call graph for this function:

◆ worksWithInitialTest()

ilLOSettings::worksWithInitialTest ( )

Check if the loc is configured for initial tests.

Definition at line 261 of file class.ilLOSettings.php.

References getInitialTestType().

262  {
263  return $this->getInitialTestType() != self::TYPE_INITIAL_NONE;
264  }
getInitialTestType()
Get initial test type.
+ Here is the call graph for this function:

◆ worksWithStartObjects()

ilLOSettings::worksWithStartObjects ( )

Check if start objects are enabled.

Definition at line 252 of file class.ilLOSettings.php.

References isInitialTestStart(), and isQualifyingTestStart().

253  {
254  return $this->isInitialTestStart() or $this->isQualifyingTestStart();
255  }
isQualifyingTestStart()
Is qt start object.
isInitialTestStart()
Get initial test start.
+ Here is the call graph for this function:

Field Documentation

◆ $container_id

ilLOSettings::$container_id = 0
private

Definition at line 61 of file class.ilLOSettings.php.

Referenced by getObjId().

◆ $entry_exists

ilLOSettings::$entry_exists = false
private

Definition at line 69 of file class.ilLOSettings.php.

Referenced by settingsExist().

◆ $initial_test

ilLOSettings::$initial_test = 0
private

Definition at line 63 of file class.ilLOSettings.php.

Referenced by getInitialTest().

◆ $instances

ilLOSettings::$instances = array()
staticprivate

Definition at line 44 of file class.ilLOSettings.php.

◆ $it_start

ilLOSettings::$it_start = false
private

Definition at line 56 of file class.ilLOSettings.php.

Referenced by isInitialTestStart().

◆ $it_type

ilLOSettings::$it_type = self::TYPE_INITIAL_PLACEMENT_ALL
private

Definition at line 53 of file class.ilLOSettings.php.

Referenced by getInitialTestType().

◆ $logger

ilLOSettings::$logger = null
private

Definition at line 49 of file class.ilLOSettings.php.

◆ $passed_obj_mode

ilLOSettings::$passed_obj_mode = self::HIDE_PASSED_OBJECTIVE_QST
private

Definition at line 66 of file class.ilLOSettings.php.

◆ $qt_start

ilLOSettings::$qt_start = false
private

Definition at line 57 of file class.ilLOSettings.php.

Referenced by isQualifyingTestStart().

◆ $qt_type

ilLOSettings::$qt_type = self::TYPE_QUALIFYING_ALL
private

Definition at line 54 of file class.ilLOSettings.php.

Referenced by getQualifyingTestType().

◆ $qualified_test

ilLOSettings::$qualified_test = 0
private

Definition at line 64 of file class.ilLOSettings.php.

Referenced by getQualifiedTest().

◆ $reset_results

ilLOSettings::$reset_results = true
private

Definition at line 65 of file class.ilLOSettings.php.

Referenced by isResetResultsEnabled().

◆ $type

ilLOSettings::$type = 0
private

Definition at line 62 of file class.ilLOSettings.php.

Referenced by getType().

◆ HIDE_PASSED_OBJECTIVE_QST

const ilLOSettings::HIDE_PASSED_OBJECTIVE_QST = 1

◆ LOC_INITIAL_ALL

const ilLOSettings::LOC_INITIAL_ALL = 1

Definition at line 35 of file class.ilLOSettings.php.

◆ LOC_INITIAL_SEL

const ilLOSettings::LOC_INITIAL_SEL = 2

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

◆ LOC_PRACTISE

const ilLOSettings::LOC_PRACTISE = 4

Definition at line 38 of file class.ilLOSettings.php.

◆ LOC_QUALIFIED

const ilLOSettings::LOC_QUALIFIED = 3

Definition at line 37 of file class.ilLOSettings.php.

◆ MARK_PASSED_OBJECTIVE_QST

const ilLOSettings::MARK_PASSED_OBJECTIVE_QST = 2

◆ QST_PASSED_FLAG

const ilLOSettings::QST_PASSED_FLAG = 1

Definition at line 13 of file class.ilLOSettings.php.

◆ QST_PASSED_HIDE

const ilLOSettings::QST_PASSED_HIDE = 2

Definition at line 14 of file class.ilLOSettings.php.

◆ QT_VISIBLE_ALL

const ilLOSettings::QT_VISIBLE_ALL = 0

Definition at line 31 of file class.ilLOSettings.php.

◆ QT_VISIBLE_OBJECTIVE

const ilLOSettings::QT_VISIBLE_OBJECTIVE = 1

Definition at line 32 of file class.ilLOSettings.php.

◆ TYPE_INITIAL_NONE

const ilLOSettings::TYPE_INITIAL_NONE = 5

◆ TYPE_INITIAL_PLACEMENT_ALL

const ilLOSettings::TYPE_INITIAL_PLACEMENT_ALL = 1

◆ TYPE_INITIAL_PLACEMENT_SELECTED

const ilLOSettings::TYPE_INITIAL_PLACEMENT_SELECTED = 2

◆ TYPE_INITIAL_QUALIFYING_ALL

const ilLOSettings::TYPE_INITIAL_QUALIFYING_ALL = 3

◆ TYPE_INITIAL_QUALIFYING_SELECTED

const ilLOSettings::TYPE_INITIAL_QUALIFYING_SELECTED = 4

◆ TYPE_QUALIFYING_ALL

const ilLOSettings::TYPE_QUALIFYING_ALL = 1

◆ TYPE_QUALIFYING_SELECTED

◆ TYPE_TEST_INITIAL

const ilLOSettings::TYPE_TEST_INITIAL = 1

◆ TYPE_TEST_QUALIFIED

◆ TYPE_TEST_UNDEFINED


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