ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
class.ilSubStyleAssignmentGUI.php
Go to the documentation of this file.
1 <?php
2 include_once "Services/Form/classes/class.ilPropertyFormGUI.php";
3 include_once("Services/Style/System/classes/Utilities/class.ilSkinXML.php");
4 include_once("Services/Style/System/classes/Utilities/class.ilSystemStyleSkinContainer.php");
5 include_once("Services/Style/System/classes/class.ilStyleDefinition.php");
6 include_once("Services/Style/System/classes/class.ilSystemStyleSettings.php");
7 include_once("Services/Style/System/classes/Exceptions/class.ilSystemStyleException.php");
8 include_once("Services/Style/System/classes/Utilities/class.ilSystemStyleMessageStack.php");
9 include_once("Services/Style/System/classes/Utilities/class.ilSystemStyleMessage.php");
10 include_once("Services/Style/System/classes/Settings/class.ilSysStyleCatAssignmentTableGUI.php");
11 
18 {
22  protected $ctrl;
23 
27  protected $lng;
28 
32  protected $tpl;
33 
37  protected $toolbar;
38 
42  protected $parent_gui;
43 
47  protected $tree;
48 
49 
54  {
55  global $DIC;
56 
57  $this->ctrl = $DIC->ctrl();
58  $this->lng = $DIC->language();
59  $this->toolbar = $DIC->toolbar();
60  $this->tpl = $DIC["tpl"];
61  $this->parent_gui = $parent_gui;
62  $this->tree = $DIC["tree"];
63  }
64 
72  public function assignStyle(ilSkinXML $skin, ilSkinStyleXML $substyle)
73  {
74  $style = $skin->getStyle($substyle->getSubstyleOf());
75 
76  $this->toolbar->addFormButton($this->lng->txt("sty_add_assignment"), "addAssignment");
77  $this->toolbar->setFormAction($this->ctrl->getFormAction($this->getParentGui()));
78 
80  $this->getParentGui(),
81  "assignStyleToCat",
82  $skin->getId(),
83  $style->getId(),
84  $substyle->getId()
85  );
86 
87  $this->tpl->setContent($tab->getHTML());
88  }
89 
90 
94  public function addAssignment()
95  {
96  include_once 'Services/Search/classes/class.ilSearchRootSelector.php';
97  $exp = new ilSearchRootSelector(
98  $this->ctrl->getLinkTarget($this->getParentGui(), 'addStyleCatAssignment')
99  );
100  $exp->setExpand($_GET["search_root_expand"] ? $_GET["search_root_expand"] : $this->tree->readRootId());
101  $exp->setExpandTarget($this->ctrl->getLinkTarget($this->getParentGui(), 'addAssignment'));
102  $exp->setTargetClass(get_class($this->getParentGui()));
103  $exp->setCmd('saveAssignment');
104  $exp->setClickableTypes(["cat"]);
105 
106  $exp->setOutput(0);
107  $this->tpl->setContent($exp->getOutput());
108  }
109 
110 
117  public function saveAssignment(ilSkinXML $skin, ilSkinStyleXML $substyle)
118  {
119  $style = $skin->getStyle($substyle->getSubstyleOf());
120  try {
122  $skin->getId(),
123  $style->getId(),
124  $substyle->getId(),
125  $_GET["root_id"]
126  );
127  ilUtil::sendSuccess($this->lng->txt("msg_obj_modified"), true);
128  } catch (ilSystemStyleException $e) {
129  ilUtil::sendFailure($this->lng->txt("msg_assignment_failed") . $e->getMessage(), true);
130  }
131 
132 
133  $this->ctrl->redirect($this->getParentGui(), "assignStyle");
134  }
135 
142  public function deleteAssignments(ilSkinXML $skin, ilSkinStyleXML $substyle)
143  {
144  $style = $skin->getStyle($substyle->getSubstyleOf());
145 
146 
147  if (is_array($_POST["id"])) {
148  foreach ($_POST["id"] as $id) {
149  $id_arr = explode(":", $id);
151  $skin->getId(),
152  $style->getId(),
153  $substyle->getId(),
154  $id_arr[1]
155  );
156  }
157  ilUtil::sendSuccess($this->lng->txt("msg_obj_modified"), true);
158  } else {
159  ilUtil::sendFailure($this->lng->txt("no_style_selected"), true);
160  }
161 
162  $this->ctrl->redirect($this->getParentGui(), "assignStyle");
163  }
164 
168  public function getParentGui()
169  {
170  return $this->parent_gui;
171  }
172 
176  public function setParentGui($parent_gui)
177  {
178  $this->parent_gui = $parent_gui;
179  }
180 }
static writeSystemStyleCategoryAssignment( $a_skin_id, $a_style_id, $a_substyle, $a_ref_id)
Sets a substyle category assignment.
$style
Definition: example_012.php:70
static deleteSystemStyleCategoryAssignment( $a_skin_id, $a_style_id, $a_substyle, $a_ref_id)
Deletes all sub style category assignment of a system style.
global $DIC
Definition: saml.php:7
$_GET["client_id"]
getSubstyleOf()
Returns the parent style of this style if set.
if(!array_key_exists('StateId', $_REQUEST)) $id
ilSkinXml holds an manages the basic data of a skin as provide by the template of the skin...
TableGUI class for system style to category assignments.
addAssignment()
Add style category assignment.
deleteAssignments(ilSkinXML $skin, ilSkinStyleXML $substyle)
Delete system style to category assignments.
Class for advanced editing exception handling in ILIAS.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
saveAssignment(ilSkinXML $skin, ilSkinStyleXML $substyle)
Save style category assignment.
__construct(ilSystemStyleSettingsGUI $parent_gui)
Constructor.
assignStyle(ilSkinXML $skin, ilSkinStyleXML $substyle)
Assign styles to categories.
$_POST["username"]