ILIAS  release_8 Revision v8.24
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 24 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 85 of file class.ilAsqFactory.php.

86 {
87 $authoringGUI; /* @var ilAsqQuestionAuthoring $authoringGUI */
88
94 $authoringGUI->setQuestion($questionInstance);
95
96 return $authoringGUI;
97 }
setQuestion(ilAsqQuestion $question)

References ilAsqQuestionAuthoring\setQuestion().

+ 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 150 of file class.ilAsqFactory.php.

151 {
152 $questionInstance; /* @var ilAsqQuestion $questionInstance */
153
159 return $questionInstance;
160 }

◆ 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 240 of file class.ilAsqFactory.php.

241 {
242 $emptySolutionInstance; /* @var ilAsqQuestionSolution $questionSolutionInstance */
243
249 $emptySolutionInstance->setQuestionId($questionId);
250
251 return $emptySolutionInstance;
252 }
setQuestionId($questionId)

References ilAsqQuestionSolution\setQuestionId().

+ 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 166 of file class.ilAsqFactory.php.

167 {
168 $questionInstance; /* @var ilAsqQuestion $questionInstance */
169
175 $questionInstance->setId($questionId);
176 $questionInstance->load();
177
178 $questionInstance->setOfflineExportImagePath($a_image_path);
179 $questionInstance->setOfflineExportPagePresentationMode($a_output_mode);
180
181 return $questionInstance;
182 }
setId($questionId)

References ilAsqQuestion\setId().

+ 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 38 of file class.ilAsqFactory.php.

38 : array
39 {
40 global $DIC; /* @var ILIAS\DI\Container $DIC */
41
42 /* @var ilComponentRepository $component_repository */
43 $component_repository = $DIC['component.repository'];
44
45 $list = new ilAssQuestionList($DIC->database(), $DIC->language(), $DIC->refinery(), $component_repository);
46 $list->setParentObjIdsFilter([$parentObjectId]);
47 $list->load();
48
49 return $list->getQuestionDataArray(); // returns an array of arrays containing the question data
50
55 }
global $DIC
Definition: feed.php:28

References $DIC.

◆ 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 131 of file class.ilAsqFactory.php.

132 {
133 $questionInstance; /* @var ilAsqQuestion $questionInstance */
134
140 $questionInstance->setId($questionId);
141 $questionInstance->load();
142
143 return $questionInstance;
144 }

References ilAsqQuestion\setId().

Referenced by getQuestionInstances().

+ 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 61 of file class.ilAsqFactory.php.

61 : array
62 {
63 global $DIC; /* @var ILIAS\DI\Container $DIC */
64
65 /* @var ilComponentRepository $component_repository */
66 $component_repository = $DIC['component.repository'];
67
68 $list = new ilAssQuestionList($DIC->database(), $DIC->language(), $DIC->refinery(), $component_repository);
69 $list->setParentObjIdsFilter(array($parentObjectId));
70 $list->load();
71
72 $questionInstances = array();
73
74 foreach ($list->getQuestionDataArray() as $questionId => $questionData) {
75 $questionInstances[] = $this->getQuestionInstance($questionId);
76 }
77
78 return $questionInstances;
79 }
getQuestionInstance($questionId)

References $DIC, and getQuestionInstance().

+ 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 188 of file class.ilAsqFactory.php.

189 {
190 $qstOffPresentationExporter; /* @var ilAsqQuestionOfflinePresentationExporter $qstOffPresentationExporter */
191
198 $qstOffPresentationExporter->setQuestion($offlineExportableQuestionInstance);
199
200 return $qstOffPresentationExporter;
201 }

◆ 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 112 of file class.ilAsqFactory.php.

113 {
114 $presentationGUI; /* @var ilAsqQuestionPresentation $presentationGUI */
115
122 $presentationGUI->setQuestion($questionInstance);
123
124 return $presentationGUI;
125 }
setQuestion(ilAsqQuestion $question)

References ilAsqQuestionPresentation\setQuestion().

+ 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 206 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 221 of file class.ilAsqFactory.php.

222 {
223 $questionSolutionInstance; /* @var ilAsqQuestionSolution $questionSolutionInstance */
224
229 $questionSolutionInstance->setQuestionId($questionId);
230 $questionSolutionInstance->setSolutionId($solutionId);
231 $questionSolutionInstance->load();
232
233 return $questionSolutionInstance;
234 }

References ilAsqQuestionSolution\setQuestionId().

+ 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 259 of file class.ilAsqFactory.php.

260 {
261 $resultCalculator; /* @var ilAsqResultCalculator $resultCalculator */
262
268 $resultCalculator->setQuestion($questionInstance);
269 $resultCalculator->setSolution($solutionInstance);
270
271 return $resultCalculator;
272 }
setQuestion(ilAsqQuestion $question)

References ilAsqResultCalculator\setQuestion().

+ Here is the call graph for this function:

◆ service()

ilAsqFactory::service ( )
Returns
ilAsqService

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

30 {
31 return new ilAsqService();
32 }

Field Documentation

◆ RENDER_PURPOSE_DEMOPLAY

const ilAsqFactory::RENDER_PURPOSE_DEMOPLAY = 'renderPurposeDemoplay'

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

◆ RENDER_PURPOSE_INPUT_VALUE

const ilAsqFactory::RENDER_PURPOSE_INPUT_VALUE = 'renderPurposeInputValue'

Definition at line 106 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 102 of file class.ilAsqFactory.php.

◆ RENDER_PURPOSE_PREVIEW

const ilAsqFactory::RENDER_PURPOSE_PREVIEW = 'renderPurposePreview'

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

◆ RENDER_PURPOSE_PRINT_PDF

const ilAsqFactory::RENDER_PURPOSE_PRINT_PDF = 'renderPurposePrintPdf'

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


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