ILIAS  trunk Revision v11.0_alpha-1761-g6dbbfa7b760
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator 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 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.

References ilAsqQuestionAuthoring\setQuestion().

86  {
87  $authoringGUI; /* @var ilAsqQuestionAuthoring $authoringGUI */
88 
94  $authoringGUI->setQuestion($questionInstance);
95 
96  return $authoringGUI;
97  }
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 150 of file class.ilAsqFactory.php.

150  : ilAsqQuestion
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.

References ilAsqQuestionSolution\setQuestionId().

241  {
242  $emptySolutionInstance; /* @var ilAsqQuestionSolution $questionSolutionInstance */
243 
249  $emptySolutionInstance->setQuestionId($questionId);
250 
251  return $emptySolutionInstance;
252  }
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 166 of file class.ilAsqFactory.php.

References ilAsqQuestion\setId().

166  : ilAsqQuestion
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)
+ 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.

References $DIC, and ilAssQuestionList\setParentObjIdsFilter().

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  }
setParentObjIdsFilter(array $parentObjIdsFilter)
global $DIC
Definition: shib_login.php:22
+ 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 131 of file class.ilAsqFactory.php.

References ilAsqQuestion\setId().

Referenced by getQuestionInstances().

131  : ilAsqQuestion
132  {
133  $questionInstance; /* @var ilAsqQuestion $questionInstance */
134 
140  $questionInstance->setId($questionId);
141  $questionInstance->load();
142 
143  return $questionInstance;
144  }
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 61 of file class.ilAsqFactory.php.

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

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  }
setParentObjIdsFilter(array $parentObjIdsFilter)
getQuestionInstance($questionId)
global $DIC
Definition: shib_login.php:22
+ 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.

References ilAsqQuestionPresentation\setQuestion().

113  {
114  $presentationGUI; /* @var ilAsqQuestionPresentation $presentationGUI */
115 
122  $presentationGUI->setQuestion($questionInstance);
123 
124  return $presentationGUI;
125  }
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 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.

References ilAsqQuestionSolution\setQuestionId().

222  {
223  $questionSolutionInstance; /* @var ilAsqQuestionSolution $questionSolutionInstance */
224 
229  $questionSolutionInstance->setQuestionId($questionId);
230  $questionSolutionInstance->setSolutionId($solutionId);
231  $questionSolutionInstance->load();
232 
233  return $questionSolutionInstance;
234  }
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 259 of file class.ilAsqFactory.php.

References ilAsqResultCalculator\setQuestion().

260  {
261  $resultCalculator; /* @var ilAsqResultCalculator $resultCalculator */
262 
268  $resultCalculator->setQuestion($questionInstance);
269  $resultCalculator->setSolution($solutionInstance);
270 
271  return $resultCalculator;
272  }
setQuestion(ilAsqQuestion $question)
+ Here is the call graph for this function:

◆ service()

ilAsqFactory::service ( )
Returns
ilAsqService

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

29  : ilAsqService
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: