47 : void
48 {
49 if ($this->testrequest->raw('prev_qid')) {
50 $this->
ctrl->setParameter($this,
'prev_qid', $this->testrequest->raw(
'prev_qid'));
51 }
52
53 $this->content_style->gui()->addCss(
54 $this->tpl,
55 $this->test_obj->getRefId()
56 );
57
58
59 $this->tpl->setCurrentBlock("SyntaxStyle");
60 $this->tpl->setVariable(
61 "LOCATION_SYNTAX_STYLESHEET",
63 );
64 $this->tpl->parseCurrentBlock();
66
68 $q_gui->setQuestionTabs();
69 $question = $q_gui->getObject();
70 $question->setObjId($this->test_obj->getId());
71 $q_gui->setObject($question);
72
73 if ($this->
ctrl->getCmd() ===
'edit'
74 && $this->test_obj->evalTotalPersons() !== 0) {
75 $this->tpl->setOnScreenMessage(
'failure', $this->
lng->txt(
'question_is_part_of_running_test'),
true);
77 }
78
79 $this->
ctrl->saveParameter($this,
'q_id');
80 $this->
lng->loadLanguageModule(
'content');
81 $this->
ctrl->setReturnByClass(ilAssQuestionPageGUI::class,
'view');
84 $page_gui->setFileDownloadLink(
85 $this->
ctrl->getLinkTargetByClass(ilObjTestGUI::class,
'downloadFile')
86 );
87 $page_gui->setEditPreview(true);
88 $page_gui->setQuestionHTML([$q_gui->getObject()->getId() => $q_gui->getPreview(true)]);
89 $page_gui->setTemplateTargetVar("ADM_CONTENT");
90 $page_gui->setOutputMode($this->test_obj->evalTotalPersons() == 0 ? "edit" : 'preview');
91 $page_gui->setHeader($question->getTitleForHTMLOutput());
92 $page_gui->setPresentationTitle(
93 $question->getTitle()
94 . ' [' . $this->lng->txt('question_id_short')
95 . ': ' . $question->getId() . ']'
96 );
97 $page_gui->setStyleId(
98 $this->content_style
99 ->domain()
100 ->styleForRefId($this->test_obj->getRefId())
101 ->getEffectiveStyleId()
102 );
103
104 $html = $this->
ctrl->forwardCommand($page_gui);
105 $this->tpl->setContent($html);
106 }
static _getQuestionGUI(string $question_type='', int $question_id=-1)
Creates a question gui representation and returns the alias to the question gui.
const RENDER_PURPOSE_PREVIEW
static getSyntaxStylePath()