19 declare(strict_types=1);
63 $this->
lng = $DIC->language();
66 $this->logger_factory = $DIC[
'ilLoggerFactory'];
68 $this->legacy_content_template =
new PageContentGUI(
"tpl.page_content.html",
true,
true);
69 $this->il_settings = $DIC->settings();
75 $this->
http->saveResponse(
76 $this->
http->response()->withAddedHeader(
78 'CP="CURa ADMa DEVa TAIa PSAa PSDa IVAa IVDa OUR BUS IND UNI COM NAV INT CNT STA PRE"' 82 $this->
http->saveResponse(
83 $this->
http->response()->withAddedHeader(
'Content-type',
'text/html; charset=UTF-8')
86 if (defined(
"ILIAS_HTTP_PATH")) {
87 $this->gs->layout()->meta()->setBaseURL(
88 (substr(ILIAS_HTTP_PATH, -1) ===
'/' ? ILIAS_HTTP_PATH : ILIAS_HTTP_PATH .
'/')
92 $this->gs->layout()->meta()->setTextDirection($this->
lng->getTextDirection());
102 $this->gs->layout()->meta()->addJs(
"assets/js/Basic.js",
true, 1);
105 GlobalPageHandler::initPage($this);
107 $sessionReminder =
new ilSessionReminderGUI(
111 $this->logger_factory
114 $sessionReminder->populatePage();
116 $onScreenNotifier->populatePage();
126 string $part = self::DEFAULT_BLOCK,
127 bool $a_fill_tabs =
true,
128 bool $a_skip_main_menu =
false 134 PageContentProvider::setContent($this->legacy_content_template->renderPage(self::DEFAULT_BLOCK,
true));
135 $this->
http->sendResponse();
137 print $this->
ui->renderer()->render($this->gs->collector()->layout()->getFinalPage());
149 PageContentProvider::setContent($this->legacy_content_template->renderPage(self::DEFAULT_BLOCK,
true));
151 return $this->
ui->renderer()->render($this->gs->collector()->layout()->getFinalPage());
154 public function addJavaScript(
string $a_js_file,
bool $a_add_version_parameter =
true,
int $a_batch = 2): void
156 $this->gs->layout()->meta()->addJs($a_js_file, $a_add_version_parameter, $a_batch);
159 public function addCss(
string $a_css_file,
string $media =
"screen"): void
161 $this->gs->layout()->meta()->addCss($a_css_file, $media);
166 $this->gs->layout()->meta()->addOnloadCode($a_code, $a_batch);
169 public function addInlineCss(
string $a_css,
string $media =
"screen"): void
171 $this->gs->layout()->meta()->addInlineCss($a_css, $media);
176 $this->legacy_content_template->setMainContent($a_html);
181 $this->legacy_content_template->setLeftContent($a_html);
186 $this->legacy_content_template->setRightContent($a_html);
191 $this->legacy_content_template->setFilter($filter);
194 public function setTitle(
string $a_title,
bool $hidden =
false): void
196 $this->legacy_content_template->setTitle($a_title, $hidden);
198 $short_title = (string) $this->il_settings->get(
'short_inst_name');
199 if (trim($short_title) ===
"") {
200 $short_title =
'ILIAS';
203 PageContentProvider::setShortTitle($short_title);
204 PageContentProvider::setViewTitle($a_title);
205 $header_title = ilObjSystemFolder::_getHeaderTitle();
206 PageContentProvider::setTitle($header_title);
211 $this->legacy_content_template->setTitleDesc($a_descr);
214 public function setTitleIcon(
string $a_icon_path,
string $a_icon_desc =
""): void
216 $this->legacy_content_template->setIconPath($a_icon_path);
217 $this->legacy_content_template->setIconDesc($a_icon_desc);
222 $this->legacy_content_template->setBanner($img_src);
227 $this->legacy_content_template->setTitleAlerts($a_props);
232 $this->legacy_content_template->setOnScreenMessage($a_type, $a_txt, $a_keep);
237 $this->legacy_content_template->setFileUploadRefId($a_ref_id);
242 $this->legacy_content_template->setHeaderAction($a_header);
247 PageContentProvider::setViewTitle($a_title);
252 $this->legacy_content_template->setPageFormAction($a_action);
257 $this->legacy_content_template->setAdminPanelCommandsToolbar($toolb);
258 $this->legacy_content_template->setAdminPanelArrow($a_arrow);
259 $this->legacy_content_template->setAdminPanelBottom($a_bottom_panel);
264 if ($variable ===
"LOCATION_CONTENT_STYLESHEET" || $variable ===
"LOCATION_SYNTAX_STYLESHEET") {
270 $this->legacy_content_template->setVariable(
272 $this->
refinery->kindlyTo()->string()->transform($value)
278 $this->gs->layout()->meta()->getJs()->clear();
281 public function get(
string $part = self::DEFAULT_BLOCK):
string 283 return $this->legacy_content_template->get($part);
288 if (in_array($blockname, self::$ignored_blocks)) {
293 return $this->legacy_content_template->setCurrentBlock($blockname);
300 if (in_array($blockname, self::$ignored_blocks)) {
305 $this->legacy_content_template->touchBlock($blockname);
314 if (in_array($blockname, self::$ignored_blocks)) {
318 return $this->legacy_content_template->parseCurrentBlock($blockname);
324 public function addBlockFile(
string $var,
string $block,
string $template_name, ?
string $in_module =
null): bool
327 $this->legacy_content_template->removeBlockData($block);
330 return $this->legacy_content_template->addBlockFile($var, $block, $template_name, $in_module);
335 if (in_array($blockname, self::$ignored_blocks)) {
339 return $this->legacy_content_template->blockExists($blockname);
355 string $a_append =
"",
356 string $a_target =
"",
360 PageContentProvider::setPermaLink($href);
392 foreach ($this->gs->layout()->meta()->getOnLoadCode()->getItemsInOrderOfDelivery() as $code) {
393 $js .= $code->getContent() .
"\n";
396 return '<script type="text/javascript">' .
"\n" .
418 public function setTabs(
string $a_tabs_html): void
429 string $part = self::DEFAULT_BLOCK,
430 bool $add_error_mess =
false,
431 bool $handle_referer =
false,
432 bool $add_ilias_footer =
false,
433 bool $add_standard_elements =
false,
434 bool $a_main_menu =
true,
addOnLoadCode(string $a_code, int $a_batch=2)
Add on load code.
static getStyleSheetLocation(string $mode="output", string $a_css_name="")
get full style sheet file name (path inclusive) of current user
__construct(Services $gs, UIServices $ui, HTTPServices $http)
static initjQueryUI(?ilGlobalTemplateInterface $a_tpl=null)
inits and adds the jQuery-UI JS-File to the global template (see included_components.txt for included components)
PageContentGUI $legacy_content_template
setSubTabs(string $a_tabs_html)
sets subtabs in standard template
printToStdout(string $part=self::DEFAULT_BLOCK, bool $a_fill_tabs=true, bool $a_skip_main_menu=false)
setLoginTargetPar(string $a_val)
Set target parameter for login (public sector).
setCurrentBlock(string $blockname=self::DEFAULT_BLOCK)
Sets the template to the given block.
addBlockFile(string $var, string $block, string $template_name, ?string $in_module=null)
overwrites ITX::addBlockFile
setLeftContent(string $a_html)
Sets content of left column.
setTitle(string $a_title, bool $hidden=false)
Sets title in standard template.
setAlertProperties(array $a_props)
Set alert properties.
addCss(string $a_css_file, string $media="screen")
Add a css file that should be included in the header.
parseCurrentBlock(string $blockname=self::DEFAULT_BLOCK)
Parses the given block.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
setLeftNavContent(string $a_content)
Sets content of left navigation column.
setFilter(string $filter)
static initializeFrontend(ilGlobalTemplateInterface $page)
This exception indicates that an UI component was accepted by the JF but is not backed by a real impl...
setBanner(string $img_src)
hideFooter()
Make the template hide the footer.
setPageFormAction(string $a_action)
Sets the pages form action.
resetHeaderBlock(bool $a_reset_header_action=true)
Reset all header properties: title, icon, description, alerts, action menu.
blockExists(string $blockname)
check if block exists in actual template
addJavaScript(string $a_js_file, bool $a_add_version_parameter=true, int $a_batch=2)
Add a javascript file that should be included in the header.
setHeaderPageTitle(string $a_title)
Sets the title of the page (for browser window).
setTitleIcon(string $a_icon_path, string $a_icon_desc="")
set title icon
static getNewContentStyleSheetLocation(string $mode="output")
get full style sheet file name (path inclusive) of current user
setBodyClass(string $a_class="")
Sets the body-tags class.
setFileUploadRefId(int $a_ref_id)
Enables the file upload into this object by dropping a file.
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
Provides fluid interface to RBAC services.
static http()
Fetches the global http state from ILIAS.
setLocator()
Insert locator.
setRightContent(string $a_html)
Sets content of right column.
setTreeFlatIcon(string $a_link, string $a_mode)
Sets a tree or flat icon.
fillJavaScriptFiles(bool $a_force=false)
Probably adds javascript files.
static initjQuery(?ilGlobalTemplateInterface $a_tpl=null)
inits and adds the jQuery JS-File to the global or a passed template
static _getStaticLink(?int $a_ref_id, string $a_type='', bool $a_fallback_goto=true, string $append="")
printToString()
Use this method to get the finally rendered page as string.
static initializeFrontend(ilGlobalTemplateInterface $page)
getSpecial(string $part=self::DEFAULT_BLOCK, bool $add_error_mess=false, bool $handle_referer=false, bool $add_ilias_footer=false, bool $add_standard_elements=false, bool $a_main_menu=true, bool $a_tabs=true)
Renders the page with specific elements enabled.
setHeaderActionMenu(string $a_header)
Set header action menu.
getOnLoadCodeForAsynch()
Get js onload code for ajax calls.
touchBlock(string $blockname)
overwrites ITX::touchBlock.
setOnScreenMessage(string $a_type, string $a_txt, bool $a_keep=false)
Set a message to be displayed to the user.
setDescription(string $a_descr)
Sets description below title in standard template.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static array $ignored_blocks
ilLoggerFactory $logger_factory
addAdminPanelToolbar(ilToolbarGUI $toolb, bool $a_bottom_panel=true, bool $a_arrow=false)
static _saveUsages()
Store the collected language variable usages in the user session This should be called as late as pos...
setTabs(string $a_tabs_html)
sets tabs in standard template
resetJavascript()
Reset javascript files.
loadStandardTemplate()
This loads the standard template "tpl.adm_content.html" and "tpl.statusline.html" the CONTENT and STA...
clearHeader()
Clear header.
setVariable(string $variable, $value='')
Sets the given variable to the given value.
setContent(string $a_html)
Sets content for standard template.
setPermanentLink(string $a_type, ?int $a_id, string $a_append="", string $a_target="", string $a_title="")
Generates and sets a permanent ilias link.
addInlineCss(string $a_css, string $media="screen")
Add a css file that should be included in the header.