ILIAS  release_7 Revision v7.30-3-g800a261c036
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.

71 {
72 $authoringGUI; /* @var ilAsqQuestionAuthoring $authoringGUI */
73
79 $authoringGUI->setQuestion($questionInstance);
80
81 return $authoringGUI;
82 }
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 135 of file class.ilAsqFactory.php.

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.

226 {
227 $emptySolutionInstance; /* @var ilAsqQuestionSolution $questionSolutionInstance */
228
234 $emptySolutionInstance->setQuestionId($questionId);
235
236 return $emptySolutionInstance;
237 }
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 151 of file class.ilAsqFactory.php.

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)

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

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(), $DIC['refinery'], $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 }
global $DIC
Definition: goto.php:24

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

117 {
118 $questionInstance; /* @var ilAsqQuestion $questionInstance */
119
125 $questionInstance->setId($questionId);
126 $questionInstance->load();
127
128 return $questionInstance;
129 }

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

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(), $DIC['refinery'], $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)

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 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.

98 {
99 $presentationGUI; /* @var ilAsqQuestionPresentation $presentationGUI */
100
107 $presentationGUI->setQuestion($questionInstance);
108
109 return $presentationGUI;
110 }
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 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.

207 {
208 $questionSolutionInstance; /* @var ilAsqQuestionSolution $questionSolutionInstance */
209
214 $questionSolutionInstance->setQuestionId($questionId);
215 $questionSolutionInstance->setSolutionId($solutionId);
216 $questionSolutionInstance->load();
217
218 return $questionSolutionInstance;
219 }

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

245 {
246 $resultCalculator; /* @var ilAsqResultCalculator $resultCalculator */
247
253 $resultCalculator->setQuestion($questionInstance);
254 $resultCalculator->setSolution($solutionInstance);
255
256 return $resultCalculator;
257 }
setQuestion(ilAsqQuestion $question)

References ilAsqResultCalculator\setQuestion().

+ Here is the call graph for this function:

◆ service()

ilAsqFactory::service ( )
Returns
ilAsqService

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

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: