102 $this->questionOBJ = $questionGUI->object;
103 $this->feedbackOBJ = $questionGUI->object->feedbackOBJ;
120 $ilHelp = $DIC[
'ilHelp'];
121 $ilHelp->setScreenIdComponent(
'qpl');
123 $cmd = $this->ctrl->getCmd(self::CMD_SHOW);
124 $nextClass = $this->ctrl->getNextClass($this);
126 $this->ctrl->setParameter($this,
'q_id', (
int)
$_GET[
'q_id']);
128 switch ($nextClass) {
129 case 'ilassspecfeedbackpagegui':
130 case 'ilassgenfeedbackpagegui':
131 require_once
'Modules/TestQuestionPool/classes/class.ilAssQuestionFeedbackPageObjectCommandForwarder.php';
133 $forwarder->forward();
151 require_once
"./Services/Style/Content/classes/class.ilObjStyleSheet.php";
152 $this->tpl->setCurrentBlock(
"ContentStyle");
154 $this->tpl->parseCurrentBlock();
158 $this->feedbackOBJ->initGenericFormProperties($form);
159 $this->feedbackOBJ->initSpecificFormProperties($form);
161 $this->tpl->setContent($this->ctrl->getHTML($form));
177 $form->setValuesByPost();
179 if ($form->checkInput()) {
180 $this->feedbackOBJ->saveGenericFormProperties($form);
181 $this->feedbackOBJ->saveSpecificFormProperties($form);
183 $this->questionOBJ->cleanupMediaObjectUsage();
184 $this->questionOBJ->updateTimestamp();
187 ilUtil::sendSuccess($this->lng->txt(
'saved_successfully'),
true);
188 $this->ctrl->redirect($this, self::CMD_SHOW_SYNC);
191 ilUtil::sendSuccess($this->lng->txt(
'saved_successfully'),
true);
192 $this->ctrl->redirect($this, self::CMD_SHOW);
196 $this->tpl->setContent($this->ctrl->getHTML($form));
207 require_once
'Services/Form/classes/class.ilPropertyFormGUI.php';
210 $form->setFormAction($this->ctrl->getFormAction($this));
211 $form->setTitle($this->lng->txt(
'feedback_generic'));
212 $form->setTableWidth(
"100%");
213 $form->setId(
"feedback");
215 $this->feedbackOBJ->completeGenericFormProperties($form);
216 $this->feedbackOBJ->completeSpecificFormProperties($form);
219 $form->addCommandButton(self::CMD_SAVE, $this->lng->txt(
"save"));
236 $isAdditionalContentEditingModePageObject = $this->questionOBJ->isAdditionalContentEditingModePageObject();
237 $isSaveableInPageObjectEditingMode = $this->feedbackOBJ->isSaveableInPageObjectEditingMode();
239 if ($isAdditionalContentEditingModePageObject && !$isSaveableInPageObjectEditingMode) {
243 $hasWriteAccess = $this->access->checkAccess(
"write",
"",
$_GET[
'ref_id']);
244 $isSelfAssessmentEditingMode = $this->questionOBJ->getSelfAssessmentEditingMode();
246 return $hasWriteAccess || $isSelfAssessmentEditingMode;
261 if (!
$_GET[
"calling_test"]) {
265 if ($this->questionOBJ->isAdditionalContentEditingModePageObject()) {
269 if (!$this->questionOBJ->_questionExistsInPool($this->questionOBJ->original_id)) {
282 $this->questionGUI->originalSyncForm(
'',
'true');
static getContentStylePath($a_style_id, $add_random=true, $add_token=true)
get content style path
isFormSaveable()
returns the fact wether the feedback editing form has to be saveable or not.
This class provides processing control methods.
showFeedbackFormCmd()
command for rendering the feedback editing form to the content area
buildForm()
builds the feedback editing form object
isSyncAfterSaveRequired()
returns the fact wether the presentation of the question sync2pool form is required after saving the ...
const CMD_SHOW
command constants
Interface ilAccessHandler.
Basic GUI class for assessment questions.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
__construct(assQuestionGUI $questionGUI, ilCtrl $ctrl, ilAccessHandler $access, ilGlobalTemplateInterface $tpl, ilTabsGUI $tabs, ilLanguage $lng)
Constructor.
saveFeedbackFormCmd()
command for processing the submitted feedback editing form.
executeCommand()
Execute Command.
static _isWriteable($question_id, $user_id)
Returns true if the question is writeable by a certain user.