ILIAS  trunk Revision v13.0_alpha-62-g3b72d83f2e5
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 127 of file class.ilQuestionEditGUI.php.

127 : string
128 {
129 $cmd = $this->ctrl->getCmd();
130 $next_class = $this->ctrl->getNextClass();
131
132 switch ($next_class) {
133 default:
134 $question_gui = assQuestionGUI::_getQuestionGUI(
135 $this->getQuestionType() ?? '',
136 $this->getQuestionId()
137 );
138 $question = $question_gui->getObject();
139 $question->setSelfAssessmentEditingMode(
141 );
142 if ($this->getDefaultNrOfTries() > 0) {
143 $question->setDefaultNrOfTries(
144 $this->getDefaultNrOfTries()
145 );
146 }
147
148 if (is_object($this->page_config)) {
149 $question->setPreventRteUsage($this->getPageConfig()->getPreventRteUsage());
150 $question_gui->setInLearningModuleContext(get_class($this->page_config) === ilLMPageConfig::class);
151 }
152 $question->setObjId((int) $this->getPoolObjId());
153 $question_gui->setObject($question);
154
155 $count = $this->questionrepository->usageCount($question_gui->getObject()->getId());
156 if ($count > 0) {
157 if ($this->rbac_system->checkAccess('write', $this->getPoolRefId())) {
158 $this->main_tpl->setOnScreenMessage('info', sprintf($this->lng->txt('qpl_question_is_in_use'), $count));
159 }
160 }
161
162 if ($cmd !== 'save') {
163 return (string) $this->ctrl->forwardCommand($question_gui);
164 }
165
166 $result = $question_gui->saveQuestion();
167
168 if (!$result) {
169 return '';
170 }
171
172 $this->main_tpl->setOnScreenMessage('success', $this->lng->txt('msg_obj_modified'), true);
173 $question_gui->editQuestion();
174 return '';
175 }
176 }
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(), and ILIAS\Repository\lng().

+ Here is the call graph for this function:

◆ forwardToFeedbackEditGUI()

ilQuestionEditGUI::forwardToFeedbackEditGUI ( assQuestionGUI  $question_gui)

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

178 : void
179 {
180 $this->ctrl->forwardCommand(
182 $question_gui,
183 $this->ctrl,
184 $this->access,
185 $this->main_tpl,
186 $this->tabs,
187 $this->lng,
188 $this->help,
189 $this->request,
190 $this->content_style
191 )
192 );
193 }

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

112 : ?int
113 {
115 }

References $defaultnroftries.

Referenced by executeCommand().

+ Here is the caller graph for this function:

◆ getPageConfig()

ilQuestionEditGUI::getPageConfig ( )

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

122 : ?ilPageConfig
123 {
124 return $this->page_config;
125 }
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 229 of file class.ilQuestionEditGUI.php.

229 : ?int
230 {
231 return $this->poolobjid;
232 }

References $poolobjid.

Referenced by executeCommand().

+ Here is the caller graph for this function:

◆ getPoolRefId()

ilQuestionEditGUI::getPoolRefId ( )

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

218 : ?int
219 {
220 return $this->poolrefid;
221 }

References $poolrefid.

Referenced by setPoolRefId().

+ Here is the caller graph for this function:

◆ getQuestionId()

ilQuestionEditGUI::getQuestionId ( )

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

201 : ?int
202 {
203 return $this->questionid;
204 }

References $questionid.

Referenced by executeCommand().

+ Here is the caller graph for this function:

◆ getQuestionType()

ilQuestionEditGUI::getQuestionType ( )

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

240 : ?string
241 {
242 return $this->questiontype;
243 }

References $questiontype.

Referenced by executeCommand().

+ Here is the caller graph for this function:

◆ getSelfAssessmentEditingMode()

ilQuestionEditGUI::getSelfAssessmentEditingMode ( )

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

102 : bool
103 {
105 }

References $selfassessmenteditingmode.

Referenced by executeCommand().

+ Here is the caller graph for this function:

◆ setDefaultNrOfTries()

ilQuestionEditGUI::setDefaultNrOfTries ( ?int  $a_defaultnroftries)

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

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

◆ setPageConfig()

ilQuestionEditGUI::setPageConfig ( ilPageConfig  $a_val)

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

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

◆ setPoolObjId()

ilQuestionEditGUI::setPoolObjId ( ?int  $a_poolobjid)

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

223 : void
224 {
225 $this->poolobjid = $a_poolobjid;
226 $this->ctrl->setParameter($this, 'qpool_obj_id', $this->poolobjid);
227 }

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 206 of file class.ilQuestionEditGUI.php.

206 : void
207 {
208 $this->poolrefid = $a_poolrefid;
209 $this->ctrl->setParameter($this, 'qpool_ref_id', $this->poolrefid);
210
211 if ($this->getPoolRefId() > 0) {
213 } else {
214 $this->setPoolObjId(null);
215 }
216 }
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 195 of file class.ilQuestionEditGUI.php.

195 : void
196 {
197 $this->questionid = $a_questionid;
198 $this->ctrl->setParameter($this, 'q_id', $this->questionid);
199 }

References ILIAS\Repository\ctrl().

+ Here is the call graph for this function:

◆ setQuestionType()

ilQuestionEditGUI::setQuestionType ( ?string  $a_questiontype)

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

234 : void
235 {
236 $this->questiontype = $a_questiontype;
237 $this->ctrl->setParameter($this, 'q_type', $this->questiontype);
238 }

References ILIAS\Repository\ctrl().

+ Here is the call graph for this function:

◆ setSelfAssessmentEditingMode()

ilQuestionEditGUI::setSelfAssessmentEditingMode ( bool  $a_selfassessmenteditingmode)

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

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

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: