ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
class.ilPCSourceCodeEditorGUI.php
Go to the documentation of this file.
1<?php
2
21
26{
27 protected \ILIAS\COPage\InternalGUIService $gui;
28
29 public function getEditorElements(
30 UIWrapper $ui_wrapper,
31 string $page_type,
32 ilPageObjectGUI $page_gui,
33 int $style_id
34 ): array {
35 global $DIC;
36 $lng = $DIC->language();
37 $lng->loadLanguageModule("content");
38
39 $this->gui = $DIC->copage()->internal()->gui();
40
41 $acc = new ilAccordionGUI();
42 $acc->addItem($lng->txt("cont_code_import_file"), $this->getRenderedImportForm($ui_wrapper, $lng, $page_gui));
43 $acc->addItem($lng->txt("cont_code_manual_editing"), $this->getRenderedManualForm($ui_wrapper, $lng, $page_gui));
44 $acc->setBehaviour(ilAccordionGUI::FIRST_OPEN);
45
46 return [
47 "creation_form" => $acc->getHTML(true),
48 "icon" => $ui_wrapper->getRenderedIcon("pecd")
49 ];
50 }
51
52 public function getEditComponentForm(
53 UIWrapper $ui_wrapper,
54 string $page_type,
55 \ilPageObjectGUI $page_gui,
56 int $style_id,
57 string $pcid
58 ): string {
59 global $DIC;
60
61 $lng = $DIC->language();
62 $lng->loadLanguageModule("content");
63
65 $pc_src = $page_gui->getPageObject()->getContentObjectForPcId($pcid);
66 $src_gui = new ilPCSourceCodeGUI($page_gui->getPageObject(), $pc_src, "", $pcid);
67
68 $form = $src_gui->getEditingFormAdapter();
69 $html = $ui_wrapper->getRenderedAdapterForm(
70 $form,
71 [["Page", "component.update.back", $lng->txt("save")],
72 ["Page", "component.back", $lng->txt("cancel")]],
73 "copg-src-form"
74 );
75 return $html;
76 }
77
78 protected function getRenderedImportForm(
79 UIWrapper $ui_wrapper,
81 ilPageObjectGUI $page_gui
82 ): string {
83 $source_code_gui = new ilPCSourceCodeGUI($page_gui->getPageObject(), null, "", "");
84 $form = $source_code_gui->getImportFormAdapter();
85 $html = $ui_wrapper->getRenderedAdapterForm(
86 $form,
87 [["Page", "component.save", $lng->txt("insert")],
88 ["Page", "component.cancel", $lng->txt("cancel")]]
89 );
90 return $html;
91 }
92
93 protected function getRenderedManualForm(
94 UIWrapper $ui_wrapper,
96 ilPageObjectGUI $page_gui
97 ): string {
98 $source_code_gui = new ilPCSourceCodeGUI($page_gui->getPageObject(), null, "", "");
99 $form = $source_code_gui->getManualFormAdapter();
100 $html = $ui_wrapper->getRenderedAdapterForm(
101 $form,
102 [["Page", "component.save", $lng->txt("insert")],
103 ["Page", "component.cancel", $lng->txt("cancel")]]
104 );
105 return $html;
106 }
107
108 protected function getRenderedPoolBar(
109 UIWrapper $ui_wrapper,
111 ): string {
112 global $DIC;
113
114 $ui = $DIC->ui();
115 $ctrl = $DIC->ctrl();
116 $lng = $DIC->language();
117
118 $buttons = [];
119
120 $ctrl->setParameterByClass("ilpcmediaobjectgui", "subCmd", "poolSelection");
121 $buttons[] = $ui_wrapper->getButton(
122 $lng->txt("cont_choose_media_pool"),
123 "media-action",
124 "select.pool",
125 [
126 "url" => $ctrl->getLinkTargetByClass("ilpcmediaobjectgui", "insert")
127 ],
128 "MediaObject"
129 );
130 $buttons[] = $ui_wrapper->getButton(
131 $lng->txt("cancel"),
132 "form-button",
133 "component.cancel",
134 [
135 ],
136 "Page"
137 );
138 $ctrl->setParameterByClass("ilpcmediaobjectgui", "subCmd", "poolSelection");
139
140 return $ui_wrapper->getRenderedFormFooter($buttons);
141 }
142
143 protected function getRenderedClipboardBar(
144 UIWrapper $ui_wrapper,
146 ilPageObjectGUI $page_gui
147 ): string {
148 global $DIC;
149
150 $ctrl = $DIC->ctrl();
151
152 $return_cmd = $ctrl->getLinkTargetByClass("ilpageeditorgui", "insertFromClipboard");
153
154 $ctrl->setParameterByClass("ileditclipboardgui", "returnCommand", rawurlencode($return_cmd));
155
156 $buttons = [];
157
158 $buttons[] = $ui_wrapper->getButton(
159 $lng->txt("cont_open_clipboard"),
160 "media-action",
161 "open.clipboard",
162 ["url" => $ctrl->getLinkTargetByClass([get_class($page_gui), "ileditclipboardgui"], "getObject")],
163 "MediaObject"
164 );
165
166 $buttons[] = $ui_wrapper->getButton(
167 $lng->txt("cancel"),
168 "form-button",
169 "component.cancel",
170 [
171 ],
172 "Page"
173 );
174
175 return $ui_wrapper->getRenderedFormFooter($buttons);
176 }
177}
getButton(string $content, string $type, string $action, ?array $data=null, string $component="", bool $primary=false, string $aria_label="")
getRenderedAdapterForm(FormAdapterGUI $form, array $buttons, string $id="", bool $in_modal=false)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
language handling
getRenderedPoolBar(UIWrapper $ui_wrapper, ilLanguage $lng)
getRenderedClipboardBar(UIWrapper $ui_wrapper, ilLanguage $lng, ilPageObjectGUI $page_gui)
ILIAS COPage InternalGUIService $gui
getEditorElements(UIWrapper $ui_wrapper, string $page_type, ilPageObjectGUI $page_gui, int $style_id)
getRenderedImportForm(UIWrapper $ui_wrapper, ilLanguage $lng, ilPageObjectGUI $page_gui)
getRenderedManualForm(UIWrapper $ui_wrapper, ilLanguage $lng, ilPageObjectGUI $page_gui)
Class ilPCSourcecodeGUI.
getManualFormAdapter(?string $download_title=null, ?string $subchar=null, ?bool $line_numbers=null)
Class ilPageObjectGUI.
global $lng
Definition: privfeed.php:31
global $DIC
Definition: shib_login.php:26