ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
All Data Structures Namespaces Files Functions Variables Modules Pages
ilAsqFactory Class Reference
+ Collaboration diagram for ilAsqFactory:

Public Member Functions

 service ()
 
 getQuestionDataArray ($parentObjectId)
 
 getQuestionInstances ($parentObjectId)
 
 getAuthoringCommandInstance ($questionInstance)
 
 getQuestionPresentationInstance ($questionInstance, $renderPurpose)
 
 getQuestionInstance ($questionId)
 
 getEmptyQuestionInstance ($questionType)
 
 getOfflineExportableQuestionInstance ($questionId, $a_image_path=null, $a_output_mode='presentation')
 
 getQuestionOfflinePresentationExporter (ilAsqQuestion $offlineExportableQuestionInstance)
 
 getQuestionResourcesCollector ()
 
 getQuestionSolutionInstance ($questionId, $solutionId)
 
 getEmptyQuestionSolutionInstance ($questionId)
 
 getResultCalculator (ilAsqQuestion $questionInstance, ilAsqQuestionSolution $solutionInstance)
 

Data Fields

const RENDER_PURPOSE_PLAYBACK = 'renderPurposePlayback'
 render purpose constants that are required to get corresponding presentation renderer More...
 
const RENDER_PURPOSE_DEMOPLAY = 'renderPurposeDemoplay'
 
const RENDER_PURPOSE_PREVIEW = 'renderPurposePreview'
 
const RENDER_PURPOSE_PRINT_PDF = 'renderPurposePrintPdf'
 
const RENDER_PURPOSE_INPUT_VALUE = 'renderPurposeInputValue'
 

Detailed Description

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

Member Function Documentation

◆ getAuthoringCommandInstance()

ilAsqFactory::getAuthoringCommandInstance (   $questionInstance)
Parameters
ilAsqQuestion$questionInstance
Returns
ilAsqQuestionAuthoring

initialise $authoringGUI as an instance of the question type corresponding authoring class that implements ilAsqQuestionAuthoring depending on the given $questionInstance

Definition at line 70 of file class.ilAsqFactory.php.

References ilAsqQuestionAuthoring\setQuestion().

71  {
72  $authoringGUI; /* @var ilAsqQuestionAuthoring $authoringGUI */
73 
79  $authoringGUI->setQuestion($questionInstance);
80 
81  return $authoringGUI;
82  }
setQuestion(ilAsqQuestion $question)
+ Here is the call graph for this function:

◆ getEmptyQuestionInstance()

ilAsqFactory::getEmptyQuestionInstance (   $questionType)
Parameters
string$questionId
Returns
ilAsqQuestion

initialise $questionInstance as an instance of the question type corresponding object class that implements ilAsqQuestion depending on the given $questionType

Definition at line 135 of file class.ilAsqFactory.php.

135  : ilAsqQuestion
136  {
137  $questionInstance; /* @var ilAsqQuestion $questionInstance */
138 
144  return $questionInstance;
145  }

◆ getEmptyQuestionSolutionInstance()

ilAsqFactory::getEmptyQuestionSolutionInstance (   $questionId)
Parameters
integer$questionId
Returns
ilAsqQuestionSolution

initialise $emptySolutionInstance as an instance of the question type corresponding object class that implements ilAsqQuestionSolution depending on the given $questionId

Definition at line 225 of file class.ilAsqFactory.php.

References ilAsqQuestionSolution\setQuestionId().

226  {
227  $emptySolutionInstance; /* @var ilAsqQuestionSolution $questionSolutionInstance */
228 
234  $emptySolutionInstance->setQuestionId($questionId);
235 
236  return $emptySolutionInstance;
237  }
setQuestionId($questionId)
+ Here is the call graph for this function:

◆ getOfflineExportableQuestionInstance()

ilAsqFactory::getOfflineExportableQuestionInstance (   $questionId,
  $a_image_path = null,
  $a_output_mode = 'presentation' 
)
Parameters
integer$questionId
Returns
ilAsqQuestion

initialise $questionInstance as an instance of the question type corresponding object class that implements ilAsqQuestion depending on the given $questionId

Definition at line 151 of file class.ilAsqFactory.php.

References ilAsqQuestion\setId().

151  : ilAsqQuestion
152  {
153  $questionInstance; /* @var ilAsqQuestion $questionInstance */
154 
160  $questionInstance->setId($questionId);
161  $questionInstance->load();
162 
163  $questionInstance->setOfflineExportImagePath($a_image_path);
164  $questionInstance->setOfflineExportPagePresentationMode($a_output_mode);
165 
166  return $questionInstance;
167  }
setId($questionId)
+ Here is the call graph for this function:

◆ getQuestionDataArray()

ilAsqFactory::getQuestionDataArray (   $parentObjectId)
Parameters
integer$parentObjectId
Returns
array

TBD: Should we return an iterator with ilAsqQuestion instances? Issue: ilTable(2) does not support this kind object structure.

Definition at line 27 of file class.ilAsqFactory.php.

References $DIC, and ilAssQuestionList\setParentObjIdsFilter().

27  : array
28  {
29  global $DIC; /* @var ILIAS\DI\Container $DIC */
30  global $ilPluginAdmin; /* @var ilPluginAdmin $ilPluginAdmin */
31 
32  $list = new ilAssQuestionList($DIC->database(), $DIC->language(), $ilPluginAdmin);
33  $list->setParentObjIdsFilter(array($parentObjectId));
34  $list->load();
35 
36  return $list->getQuestionDataArray(); // returns an array of arrays containing the question data
37 
42  }
$DIC
Definition: xapitoken.php:46
setParentObjIdsFilter($parentObjIdsFilter)
+ Here is the call graph for this function:

◆ getQuestionInstance()

ilAsqFactory::getQuestionInstance (   $questionId)
Parameters
integer$questionId
Returns
ilAsqQuestion

initialise $questionInstance as an instance of the question type corresponding object class that implements ilAsqQuestion depending on the given $questionId

Definition at line 116 of file class.ilAsqFactory.php.

References ilAsqQuestion\setId().

Referenced by getQuestionInstances().

116  : ilAsqQuestion
117  {
118  $questionInstance; /* @var ilAsqQuestion $questionInstance */
119 
125  $questionInstance->setId($questionId);
126  $questionInstance->load();
127 
128  return $questionInstance;
129  }
setId($questionId)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getQuestionInstances()

ilAsqFactory::getQuestionInstances (   $parentObjectId)
Parameters
integer$parentObjectId
Returns
ilAsqQuestion[]

Definition at line 48 of file class.ilAsqFactory.php.

References $DIC, getQuestionInstance(), and ilAssQuestionList\setParentObjIdsFilter().

48  : array
49  {
50  global $DIC; /* @var ILIAS\DI\Container $DIC */
51  global $ilPluginAdmin; /* @var ilPluginAdmin $ilPluginAdmin */
52 
53  $list = new ilAssQuestionList($DIC->database(), $DIC->language(), $ilPluginAdmin);
54  $list->setParentObjIdsFilter(array($parentObjectId));
55  $list->load();
56 
57  $questionInstances = array();
58 
59  foreach ($list->getQuestionDataArray() as $questionId => $questionData) {
60  $questionInstances[] = $this->getQuestionInstance($questionId);
61  }
62 
63  return $questionInstances;
64  }
getQuestionInstance($questionId)
$DIC
Definition: xapitoken.php:46
setParentObjIdsFilter($parentObjIdsFilter)
+ Here is the call graph for this function:

◆ getQuestionOfflinePresentationExporter()

ilAsqFactory::getQuestionOfflinePresentationExporter ( ilAsqQuestion  $offlineExportableQuestionInstance)
Parameters
ilAsqQuestion$offlineExportableQuestionInstance
Returns
ilAsqQuestionOfflinePresentationExporter

initialise $qstOffPresentationExporter as an instance of the question type corresponding object class that implements ilAsqQuestionOfflinePresentationExporter depending on the given $offlineExportableQuestionInstance

Definition at line 173 of file class.ilAsqFactory.php.

174  {
175  $qstOffPresentationExporter; /* @var ilAsqQuestionOfflinePresentationExporter $qstOffPresentationExporter */
176 
183  $qstOffPresentationExporter->setQuestion($offlineExportableQuestionInstance);
184 
185  return $qstOffPresentationExporter;
186  }

◆ getQuestionPresentationInstance()

ilAsqFactory::getQuestionPresentationInstance (   $questionInstance,
  $renderPurpose 
)
Parameters
ilAsqQuestion$questionInstance
Returns
ilAsqQuestionPresentation

initialise $presentationGUI as an instance of the question type corresponding presentation class that implements ilAsqQuestionPresentation depending on the given $questionInstance and depending on the given render purpose.

Definition at line 97 of file class.ilAsqFactory.php.

References ilAsqQuestionPresentation\setQuestion().

98  {
99  $presentationGUI; /* @var ilAsqQuestionPresentation $presentationGUI */
100 
107  $presentationGUI->setQuestion($questionInstance);
108 
109  return $presentationGUI;
110  }
setQuestion(ilAsqQuestion $question)
+ Here is the call graph for this function:

◆ getQuestionResourcesCollector()

ilAsqFactory::getQuestionResourcesCollector ( )
Returns
ilAsqQuestionResourcesCollector

this collector is able to manage all kind resources that aredepencies for the offline presentation of a question (like js/css, media files, mobs).

Definition at line 191 of file class.ilAsqFactory.php.

◆ getQuestionSolutionInstance()

ilAsqFactory::getQuestionSolutionInstance (   $questionId,
  $solutionId 
)
Parameters
integer$questionId
integer$solutionId
Returns
ilAsqQuestionSolution

initialise $questionSolutionInstance as an instance of the question type corresponding object class that implements ilAsqQuestionSolution depending on the given $questionId and $solutionId

Definition at line 206 of file class.ilAsqFactory.php.

References ilAsqQuestionSolution\setQuestionId().

207  {
208  $questionSolutionInstance; /* @var ilAsqQuestionSolution $questionSolutionInstance */
209 
214  $questionSolutionInstance->setQuestionId($questionId);
215  $questionSolutionInstance->setSolutionId($solutionId);
216  $questionSolutionInstance->load();
217 
218  return $questionSolutionInstance;
219  }
setQuestionId($questionId)
+ Here is the call graph for this function:

◆ getResultCalculator()

ilAsqFactory::getResultCalculator ( ilAsqQuestion  $questionInstance,
ilAsqQuestionSolution  $solutionInstance 
)
Parameters
ilAsqQuestion$questionInstance
ilAsqQuestionSolution$solutionInstance
Returns
ilAsqResultCalculator

initialise $resultCalculator as an instance of the question type corresponding object class that implements ilAsqResultCalculator depending on the given $questionInstance and $solutionInstance

Definition at line 244 of file class.ilAsqFactory.php.

References ilAsqResultCalculator\setQuestion().

245  {
246  $resultCalculator; /* @var ilAsqResultCalculator $resultCalculator */
247 
253  $resultCalculator->setQuestion($questionInstance);
254  $resultCalculator->setSolution($solutionInstance);
255 
256  return $resultCalculator;
257  }
setQuestion(ilAsqQuestion $question)
+ Here is the call graph for this function:

◆ service()

ilAsqFactory::service ( )
Returns
ilAsqService

Definition at line 18 of file class.ilAsqFactory.php.

18  : ilAsqService
19  {
20  return new ilAsqService();
21  }

Field Documentation

◆ RENDER_PURPOSE_DEMOPLAY

const ilAsqFactory::RENDER_PURPOSE_DEMOPLAY = 'renderPurposeDemoplay'

Definition at line 88 of file class.ilAsqFactory.php.

◆ RENDER_PURPOSE_INPUT_VALUE

const ilAsqFactory::RENDER_PURPOSE_INPUT_VALUE = 'renderPurposeInputValue'

Definition at line 91 of file class.ilAsqFactory.php.

◆ RENDER_PURPOSE_PLAYBACK

const ilAsqFactory::RENDER_PURPOSE_PLAYBACK = 'renderPurposePlayback'

render purpose constants that are required to get corresponding presentation renderer

Definition at line 87 of file class.ilAsqFactory.php.

◆ RENDER_PURPOSE_PREVIEW

const ilAsqFactory::RENDER_PURPOSE_PREVIEW = 'renderPurposePreview'

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

◆ RENDER_PURPOSE_PRINT_PDF

const ilAsqFactory::RENDER_PURPOSE_PRINT_PDF = 'renderPurposePrintPdf'

Definition at line 90 of file class.ilAsqFactory.php.


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