2 include_once(
"Services/Object/exceptions/class.ilObjectException.php");
62 public function __construct()
69 $this->ctrl = $DIC->ctrl();
70 $this->lng = $DIC->language();
71 $this->tabs = $DIC->tabs();
72 $this->rbacsystem = $DIC->rbac()->system();
73 $this->tpl = $DIC[
"tpl"];
76 $this->ref_id = (int)
$_GET[
"ref_id"];
86 public function executeCommand()
94 $next_class = $this->ctrl->getNextClass($this);
96 $DIC->help()->setScreenIdComponent(
"sty");
97 $DIC->help()->setScreenId(
"system_styles");
99 if (!
$_GET[
"skin_id"]) {
105 $this->ctrl->setParameterByClass(
'ilsystemstylesettingsgui',
'skin_id',
$_GET[
"skin_id"]);
106 $this->ctrl->setParameterByClass(
'ilsystemstylesettingsgui',
'style_id',
$_GET[
"style_id"]);
107 $this->ctrl->setParameterByClass(
'ilsystemstylelessgui',
'skin_id',
$_GET[
"skin_id"]);
108 $this->ctrl->setParameterByClass(
'ilsystemstylelessgui',
'style_id',
$_GET[
"style_id"]);
109 $this->ctrl->setParameterByClass(
'ilsystemstyleiconsgui',
'skin_id',
$_GET[
"skin_id"]);
110 $this->ctrl->setParameterByClass(
'ilsystemstyleiconsgui',
'style_id',
$_GET[
"style_id"]);
111 $this->ctrl->setParameterByClass(
'ilsystemstyledocumentationgui',
'skin_id',
$_GET[
"skin_id"]);
112 $this->ctrl->setParameterByClass(
'ilsystemstyledocumentationgui',
'style_id',
$_GET[
"style_id"]);
115 switch ($next_class) {
117 case "ilsystemstylesettingsgui":
118 $DIC->help()->setSubScreenId(
"settings");
122 include_once(
"Settings/class.ilSystemStyleSettingsGUI.php");
124 $this->ctrl->forwardCommand($system_styles_settings);
126 case "ilsystemstylelessgui":
127 $DIC->help()->setSubScreenId(
"less");
131 include_once(
"Less/class.ilSystemStyleLessGUI.php");
133 $this->ctrl->forwardCommand($system_styles_less);
135 case "ilsystemstyleiconsgui":
136 $DIC->help()->setSubScreenId(
"icons");
140 include_once(
"Icons/class.ilSystemStyleIconsGUI.php");
142 $this->ctrl->forwardCommand($system_styles_icons);
144 case "ilsystemstyledocumentationgui":
145 $DIC->help()->setSubScreenId(
"documentation");
149 include_once(
"Documentation/class.ilSystemStyleDocumentationGUI.php");
151 $this->ctrl->forwardCommand($system_styles_documentation);
153 case "ilsystemstyleoverviewgui":
155 $DIC->help()->setSubScreenId(
"overview");
157 include_once(
"Overview/class.ilSystemStyleOverviewGUI.php");
159 $this->ctrl->forwardCommand($system_styles_overview);
165 include_once(
"Overview/class.ilSystemStyleOverviewGUI.php");
166 $this->ctrl->setCmd(
"");
168 $this->ctrl->forwardCommand($system_styles_overview);
184 $DIC->ctrl()->setParameterByClass(
'ilSystemStyleDocumentationGUI',
'skin_id', $skin_id);
185 $DIC->ctrl()->setParameterByClass(
186 'ilSystemStyleDocumentationGUI',
190 $DIC->ctrl()->setParameterByClass(
'ilSystemStyleDocumentationGUI',
'node_id', $node_id);
191 $DIC->ctrl()->setParameterByClass(
'ilSystemStyleDocumentationGUI',
'ref_id',
$ref_id);
193 $_GET[
'baseClass'] =
'ilAdministrationGUI';
197 "ilAdministrationGUI",
198 "ilObjStyleSettingsGUI",
199 "ilSystemStyleMainGUI",
200 'ilSystemStyleDocumentationGUI' 203 $DIC->ctrl()->setTargetScript(
"ilias.php");
204 $DIC->ctrl()->redirectByClass($cmd_classes, $cmd);
223 if ($a_perm ==
"sty_management") {
224 $has_perm = $DIC->iliasIni()->readVariable(
"tools",
"enable_system_styles_management") ==
"1" ?
true:
false;
225 $a_perm =
"sty_write_system";
226 if ($has_perm && !is_writable(
$config->getCustomizingSkinPath())) {
233 $has_perm = $this->rbacsystem->checkAccess($a_perm, $this->ref_id);
238 include_once
"Services/Object/exceptions/class.ilObjectException.php";
254 $this->tabs->clearTargets();
259 $DIC->help()->setScreenIdComponent(
"sty");
260 $DIC->help()->setScreenId(
"system_styles");
261 $this->tabs->setBackTarget($this->lng->txt(
"back"), $this->ctrl->getLinkTarget($this));
264 $this->tabs->addTab(
'settings', $this->lng->txt(
'settings'), $this->ctrl->getLinkTargetByClass(
'ilsystemstylesettingsgui'));
265 $this->tabs->addTab(
'less', $this->lng->txt(
'less'), $this->ctrl->getLinkTargetByClass(
'ilsystemstylelessgui'));
266 $this->tabs->addTab(
'icons', $this->lng->txt(
'icons'), $this->ctrl->getLinkTargetByClass(
'ilsystemstyleiconsgui'));
269 $this->tabs->addTab(
'documentation', $this->lng->txt(
'documentation'), $this->ctrl->getLinkTargetByClass(
'ilsystemstyledocumentationgui'));
271 $this->tabs->activateTab($active);
282 $skin_id =
$_GET[
"skin_id"];
283 $style_id =
$_GET[
"style_id"];
286 $style = $skin->getStyle($style_id);
288 $this->tpl->setTitle(
$style->getName());
289 if (
$style->isSubstyle()) {
290 $this->tpl->setDescription(
291 $this->lng->txt(
"settings_of_substyle") .
" '" .
$style->getName() .
"' " .
292 $this->lng->txt(
"of_parent") .
" '" . $skin->getStyle(
$style->getSubstyleOf())->getName() .
"' " .
293 $this->lng->txt(
"from_skin") .
" " . $skin->getName()
296 $this->tpl->setDescription(
297 $this->lng->txt(
"settings_of_style") .
" '" .
$style->getName() .
"' " .
298 $this->lng->txt(
"from_skin") .
" '" . $skin->getName() .
"'" setUnderworldTitle()
Sets title correctly if one system style is opened.
Base exception class for object service.
checkPermission($a_perm, $a_throw_exc=true)
Checks permission for system styles.
static _goto($ref_id, $params)
static generateFromId($skin_id, ilSystemStyleMessageStack $message_stack=null, ilSystemStyleConfig $system_styles_conf=null)
Generate the container class by parsing the corresponding XML.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
Settings UI class for system styles.
ilSystemStyleConfig wraps all 'constants' to ensure the testability of all classes using those 'const...
setUnderworldTabs($active="")
Sets the tab correctly if one system style is open (navigational underworld opened) ...