ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
ilQuestionEditGUI Class Reference

Class ilQuestionEditGUI. More...

+ Collaboration diagram for ilQuestionEditGUI:

Public Member Functions

 setSelfAssessmentEditingMode (bool $a_selfassessmenteditingmode)
 
 getSelfAssessmentEditingMode ()
 
 setDefaultNrOfTries (?int $a_defaultnroftries)
 
 getDefaultNrOfTries ()
 
 setPageConfig (ilPageConfig $a_val)
 
 getPageConfig ()
 
 executeCommand ()
 
 forwardToFeedbackEditGUI (assQuestionGUI $question_gui)
 
 setQuestionId (?int $a_questionid)
 
 getQuestionId ()
 
 setPoolRefId (?int $a_poolrefid)
 
 getPoolRefId ()
 
 setPoolObjId (?int $a_poolobjid)
 
 getPoolObjId ()
 
 setQuestionType (?string $a_questiontype)
 
 getQuestionType ()
 

Private Attributes

ilGlobalTemplateInterface $main_tpl
 
ilTabsGUI $tabs
 
readonly ilHelpGUI $help
 
readonly ilCtrlInterface $ctrl
 
readonly ilAccessHandler $access
 
readonly ilLanguage $lng
 
readonly ilRbacSystem $rbac_system
 
readonly ContentStyle $content_style
 
readonly RequestDataCollector $request
 
readonly GeneralQuestionPropertiesRepository $questionrepository
 
int $questionid = null
 
int $poolrefid = null
 
int $poolobjid = null
 
string $questiontype = null
 
array $new_id_listeners
 
int $new_id_listener_cnt
 
bool $selfassessmenteditingmode = false
 
int $defaultnroftries = null
 
ilPageConfig $page_config = null
 

Detailed Description

Member Function Documentation

◆ executeCommand()

ilQuestionEditGUI::executeCommand ( )

Definition at line 126 of file class.ilQuestionEditGUI.php.

126 : string
127 {
128 $cmd = $this->ctrl->getCmd();
129 $next_class = $this->ctrl->getNextClass();
130
131 switch ($next_class) {
132 default:
133 $question_gui = assQuestionGUI::_getQuestionGUI(
134 $this->getQuestionType() ?? '',
135 $this->getQuestionId()
136 );
137 $question = $question_gui->getObject();
138 $question->setSelfAssessmentEditingMode(
140 );
141 if ($this->getDefaultNrOfTries() > 0) {
142 $question->setDefaultNrOfTries(
143 $this->getDefaultNrOfTries()
144 );
145 }
146
147 if (is_object($this->page_config)) {
148 $question->setPreventRteUsage($this->getPageConfig()->getPreventRteUsage());
149 $question_gui->setInLearningModuleContext(get_class($this->page_config) === ilLMPageConfig::class);
150 }
151 $question->setObjId((int) $this->getPoolObjId());
152 $question_gui->setObject($question);
153
154 $count = $this->questionrepository->usageCount($question_gui->getObject()->getId());
155 if ($count > 0) {
156 if ($this->rbac_system->checkAccess('write', $this->getPoolRefId())) {
157 $this->main_tpl->setOnScreenMessage('info', sprintf($this->lng->txt('qpl_question_is_in_use'), $count));
158 }
159 }
160
161 $this->tabs->activateTab('question');
162 if ($cmd !== 'save') {
163 return (string) $this->ctrl->forwardCommand($question_gui);
164 }
165 if ($question_gui->saveQuestion()) {
166 $this->main_tpl->setOnScreenMessage('success', $this->lng->txt('msg_obj_modified'), true);
167 }
168
169 return (string) $question_gui->editQuestion();
170 }
171 }
static _getQuestionGUI(string $question_type='', int $question_id=-1)
Creates a question gui representation and returns the alias to the question gui.

References assQuestionGUI\_getQuestionGUI(), ILIAS\Repository\ctrl(), getDefaultNrOfTries(), getPageConfig(), getPoolObjId(), getQuestionId(), getQuestionType(), getSelfAssessmentEditingMode(), ILIAS\Repository\lng(), and ILIAS\Repository\tabs().

+ Here is the call graph for this function:

◆ forwardToFeedbackEditGUI()

ilQuestionEditGUI::forwardToFeedbackEditGUI ( assQuestionGUI  $question_gui)

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

173 : void
174 {
175 $this->ctrl->forwardCommand(
177 $question_gui,
178 $this->ctrl,
179 $this->access,
180 $this->main_tpl,
181 $this->tabs,
182 $this->lng,
183 $this->help,
184 $this->request,
185 $this->content_style
186 )
187 );
188 }

References ILIAS\Repository\access(), ILIAS\Repository\ctrl(), ILIAS\Repository\help(), ILIAS\Repository\lng(), and ILIAS\Repository\tabs().

+ Here is the call graph for this function:

◆ getDefaultNrOfTries()

ilQuestionEditGUI::getDefaultNrOfTries ( )

Definition at line 111 of file class.ilQuestionEditGUI.php.

111 : ?int
112 {
114 }

References $defaultnroftries.

Referenced by executeCommand().

+ Here is the caller graph for this function:

◆ getPageConfig()

ilQuestionEditGUI::getPageConfig ( )

Definition at line 121 of file class.ilQuestionEditGUI.php.

121 : ?ilPageConfig
122 {
123 return $this->page_config;
124 }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...

References $page_config.

Referenced by executeCommand().

+ Here is the caller graph for this function:

◆ getPoolObjId()

ilQuestionEditGUI::getPoolObjId ( )

Definition at line 224 of file class.ilQuestionEditGUI.php.

224 : ?int
225 {
226 return $this->poolobjid;
227 }

References $poolobjid.

Referenced by executeCommand().

+ Here is the caller graph for this function:

◆ getPoolRefId()

ilQuestionEditGUI::getPoolRefId ( )

Definition at line 213 of file class.ilQuestionEditGUI.php.

213 : ?int
214 {
215 return $this->poolrefid;
216 }

References $poolrefid.

Referenced by setPoolRefId().

+ Here is the caller graph for this function:

◆ getQuestionId()

ilQuestionEditGUI::getQuestionId ( )

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

196 : ?int
197 {
198 return $this->questionid;
199 }

References $questionid.

Referenced by executeCommand().

+ Here is the caller graph for this function:

◆ getQuestionType()

ilQuestionEditGUI::getQuestionType ( )

Definition at line 235 of file class.ilQuestionEditGUI.php.

235 : ?string
236 {
237 return $this->questiontype;
238 }

References $questiontype.

Referenced by executeCommand().

+ Here is the caller graph for this function:

◆ getSelfAssessmentEditingMode()

ilQuestionEditGUI::getSelfAssessmentEditingMode ( )

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

101 : bool
102 {
104 }

References $selfassessmenteditingmode.

Referenced by executeCommand().

+ Here is the caller graph for this function:

◆ setDefaultNrOfTries()

ilQuestionEditGUI::setDefaultNrOfTries ( ?int  $a_defaultnroftries)

Definition at line 106 of file class.ilQuestionEditGUI.php.

106 : void
107 {
108 $this->defaultnroftries = $a_defaultnroftries;
109 }

◆ setPageConfig()

ilQuestionEditGUI::setPageConfig ( ilPageConfig  $a_val)

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

116 : void
117 {
118 $this->page_config = $a_val;
119 }

◆ setPoolObjId()

ilQuestionEditGUI::setPoolObjId ( ?int  $a_poolobjid)

Definition at line 218 of file class.ilQuestionEditGUI.php.

218 : void
219 {
220 $this->poolobjid = $a_poolobjid;
221 $this->ctrl->setParameter($this, 'qpool_obj_id', $this->poolobjid);
222 }

References ILIAS\Repository\ctrl().

Referenced by setPoolRefId().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setPoolRefId()

ilQuestionEditGUI::setPoolRefId ( ?int  $a_poolrefid)

Definition at line 201 of file class.ilQuestionEditGUI.php.

201 : void
202 {
203 $this->poolrefid = $a_poolrefid;
204 $this->ctrl->setParameter($this, 'qpool_ref_id', $this->poolrefid);
205
206 if ($this->getPoolRefId() > 0) {
208 } else {
209 $this->setPoolObjId(null);
210 }
211 }
static _lookupObjId(int $ref_id)
setPoolObjId(?int $a_poolobjid)

References ilObject\_lookupObjId(), ILIAS\Repository\ctrl(), getPoolRefId(), and setPoolObjId().

+ Here is the call graph for this function:

◆ setQuestionId()

ilQuestionEditGUI::setQuestionId ( ?int  $a_questionid)

Definition at line 190 of file class.ilQuestionEditGUI.php.

190 : void
191 {
192 $this->questionid = $a_questionid;
193 $this->ctrl->setParameter($this, 'q_id', $this->questionid);
194 }

References ILIAS\Repository\ctrl().

+ Here is the call graph for this function:

◆ setQuestionType()

ilQuestionEditGUI::setQuestionType ( ?string  $a_questiontype)

Definition at line 229 of file class.ilQuestionEditGUI.php.

229 : void
230 {
231 $this->questiontype = $a_questiontype;
232 $this->ctrl->setParameter($this, 'q_type', $this->questiontype);
233 }

References ILIAS\Repository\ctrl().

+ Here is the call graph for this function:

◆ setSelfAssessmentEditingMode()

ilQuestionEditGUI::setSelfAssessmentEditingMode ( bool  $a_selfassessmenteditingmode)

Definition at line 96 of file class.ilQuestionEditGUI.php.

96 : void
97 {
98 $this->selfassessmenteditingmode = $a_selfassessmenteditingmode;
99 }

Field Documentation

◆ $access

readonly ilAccessHandler ilQuestionEditGUI::$access
private

Definition at line 43 of file class.ilQuestionEditGUI.php.

◆ $content_style

readonly ContentStyle ilQuestionEditGUI::$content_style
private

Definition at line 46 of file class.ilQuestionEditGUI.php.

◆ $ctrl

readonly ilCtrlInterface ilQuestionEditGUI::$ctrl
private

Definition at line 42 of file class.ilQuestionEditGUI.php.

◆ $defaultnroftries

int ilQuestionEditGUI::$defaultnroftries = null
private

Definition at line 59 of file class.ilQuestionEditGUI.php.

Referenced by getDefaultNrOfTries().

◆ $help

readonly ilHelpGUI ilQuestionEditGUI::$help
private

Definition at line 41 of file class.ilQuestionEditGUI.php.

◆ $lng

readonly ilLanguage ilQuestionEditGUI::$lng
private

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

◆ $main_tpl

ilGlobalTemplateInterface ilQuestionEditGUI::$main_tpl
private

Definition at line 39 of file class.ilQuestionEditGUI.php.

◆ $new_id_listener_cnt

int ilQuestionEditGUI::$new_id_listener_cnt
private

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

◆ $new_id_listeners

array ilQuestionEditGUI::$new_id_listeners
private

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

◆ $page_config

ilPageConfig ilQuestionEditGUI::$page_config = null
private

Definition at line 60 of file class.ilQuestionEditGUI.php.

Referenced by getPageConfig().

◆ $poolobjid

int ilQuestionEditGUI::$poolobjid = null
private

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

Referenced by getPoolObjId().

◆ $poolrefid

int ilQuestionEditGUI::$poolrefid = null
private

Definition at line 52 of file class.ilQuestionEditGUI.php.

Referenced by getPoolRefId().

◆ $questionid

int ilQuestionEditGUI::$questionid = null
private

Definition at line 51 of file class.ilQuestionEditGUI.php.

Referenced by getQuestionId().

◆ $questionrepository

readonly GeneralQuestionPropertiesRepository ilQuestionEditGUI::$questionrepository
private

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

◆ $questiontype

string ilQuestionEditGUI::$questiontype = null
private

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

Referenced by getQuestionType().

◆ $rbac_system

readonly ilRbacSystem ilQuestionEditGUI::$rbac_system
private

Definition at line 45 of file class.ilQuestionEditGUI.php.

◆ $request

readonly RequestDataCollector ilQuestionEditGUI::$request
private

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

◆ $selfassessmenteditingmode

bool ilQuestionEditGUI::$selfassessmenteditingmode = false
private

Definition at line 58 of file class.ilQuestionEditGUI.php.

Referenced by getSelfAssessmentEditingMode().

◆ $tabs

ilTabsGUI ilQuestionEditGUI::$tabs
private

Definition at line 40 of file class.ilQuestionEditGUI.php.


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