ILIAS  release_5-0 Revision 5.0.0-1144-gc4397b1f870
ilContainerStartObjectsGUI Class Reference

Class ilContainerStartObjectsGUI. More...

+ Collaboration diagram for ilContainerStartObjectsGUI:

Public Member Functions

 __construct (ilObject $a_parent_obj)
 
 executeCommand ()
 
 setTabs ($a_active="manage")
 

Protected Member Functions

 checkPermission ($a_cmd)
 
 listStructureObject ()
 
 saveSortingObject ()
 
 askDeleteStarterObject ()
 
 deleteStarterObject ()
 
 selectStarterObject ()
 
 addStarterObject ()
 

Protected Attributes

 $object
 
 $start_object
 

Detailed Description

Constructor & Destructor Documentation

◆ __construct()

ilContainerStartObjectsGUI::__construct ( ilObject  $a_parent_obj)

Definition at line 18 of file class.ilContainerStartObjectsGUI.php.

19 {
20 global $ilCtrl, $ilTabs, $lng, $tpl;
21
22 $this->ctrl = $ilCtrl;
23 $this->tabs_gui = $ilTabs;
24 $this->lng = $lng;
25 $this->tpl = $tpl;
26 $this->object = $a_parent_obj;
27
28 include_once "Services/Container/classes/class.ilContainerStartObjects.php";
29 $this->start_object = new ilContainerStartObjects($this->object->getRefId(),
30 $this->object->getId());
31
32 $this->lng->loadLanguageModule("crs");
33 }
global $tpl
Definition: ilias.php:8
global $ilCtrl
Definition: ilias.php:18
global $lng
Definition: privfeed.php:40

References $ilCtrl, $lng, and $tpl.

Member Function Documentation

◆ addStarterObject()

ilContainerStartObjectsGUI::addStarterObject ( )
protected

Definition at line 210 of file class.ilContainerStartObjectsGUI.php.

211 {
212 $this->checkPermission('write');
213
214 if(!count($_POST['starter']))
215 {
216 ilUtil::sendFailure($this->lng->txt('select_one'), true);
217 $this->ctrl->redirect($this, "selectStarter");
218 }
219
220 $added = 0;
221 foreach($_POST['starter'] as $item_ref_id)
222 {
223 if(!$this->start_object->exists($item_ref_id))
224 {
225 ++$added;
226 $this->start_object->add($item_ref_id);
227 }
228 }
229 if($added)
230 {
231 ilUtil::sendSuccess($this->lng->txt('crs_added_starters'), true);
232 $this->ctrl->redirect($this, "listStructure");
233 }
234 else
235 {
236 ilUtil::sendFailure($this->lng->txt('crs_starters_already_assigned'), true);
237 $this->ctrl->redirect($this, "selectStarter");
238 }
239 }
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
$_POST['username']
Definition: cron.php:12

References $_POST, checkPermission(), ilUtil\sendFailure(), and ilUtil\sendSuccess().

+ Here is the call graph for this function:

◆ askDeleteStarterObject()

ilContainerStartObjectsGUI::askDeleteStarterObject ( )
protected

Definition at line 146 of file class.ilContainerStartObjectsGUI.php.

147 {
148 if(!count($_POST['starter']))
149 {
150 ilUtil::sendFailure($this->lng->txt('select_one'), true);
151 $this->ctrl->redirect($this, "listStructure");
152 }
153
154 $this->checkPermission('write');
155 $this->setTabs();
156
157 // display confirmation message
158 include_once("./Services/Utilities/classes/class.ilConfirmationGUI.php");
159 $cgui = new ilConfirmationGUI();
160 $cgui->setFormAction($this->ctrl->getFormAction($this, "listStructure"));
161 $cgui->setHeaderText($this->lng->txt("crs_starter_delete_sure"));
162 $cgui->setCancel($this->lng->txt("cancel"), "listStructure");
163 $cgui->setConfirm($this->lng->txt("delete"), "deleteStarter");
164
165 // list objects that should be deleted
166 $all = $this->start_object->getStartObjects();
167 foreach($_POST['starter'] as $starter_id)
168 {
169 $obj_id = ilObject::_lookupObjId($all[$starter_id]["item_ref_id"]);
170 $title = ilObject::_lookupTitle($obj_id);
171 $icon = ilObject::_getIcon($obj_id, "tiny");
172 $alt = $this->lng->txt('obj_'.ilObject::_lookupType($obj_id));
173 $cgui->addItem("starter[]", $starter_id, $title, $icon, $alt);
174 }
175
176 $this->tpl->setContent($cgui->getHTML());
177 }
Confirmation screen class.
static _lookupObjId($a_id)
static _lookupTitle($a_id)
lookup object title
static _getIcon($a_obj_id="", $a_size="big", $a_type="", $a_offline=false)
Get icon for repository item.
static _lookupType($a_id, $a_reference=false)
lookup object type

References $_POST, ilObject\_getIcon(), ilObject\_lookupObjId(), ilObject\_lookupTitle(), ilObject\_lookupType(), checkPermission(), ilUtil\sendFailure(), and setTabs().

+ Here is the call graph for this function:

◆ checkPermission()

ilContainerStartObjectsGUI::checkPermission (   $a_cmd)
protected

Definition at line 81 of file class.ilContainerStartObjectsGUI.php.

82 {
83 global $ilAccess;
84
85 $ref_id = $this->object->getRefId();
86 if(!$ilAccess->checkAccess($a_cmd, "", $ref_id))
87 {
88 ilUtil::sendFailure($this->lng->txt("permission_denied"), true);
89 ilUtil::redirect("goto.php?target=".$this->object->getType()."_".$ref_id);
90 }
91 }
static redirect($a_script)
http redirect to other script
$ref_id
Definition: sahs_server.php:39

References $ref_id, ilUtil\redirect(), and ilUtil\sendFailure().

Referenced by addStarterObject(), askDeleteStarterObject(), deleteStarterObject(), executeCommand(), listStructureObject(), and selectStarterObject().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ deleteStarterObject()

ilContainerStartObjectsGUI::deleteStarterObject ( )
protected

Definition at line 179 of file class.ilContainerStartObjectsGUI.php.

180 {
181 $this->checkPermission('write');
182
183 if(!count($_POST['starter']))
184 {
185 ilUtil::sendFailure($this->lng->txt('select_one'), true);
186 }
187 else
188 {
189 foreach($_POST['starter'] as $starter_id)
190 {
191 $this->start_object->delete((int)$starter_id);
192 }
193
194 ilUtil::sendSuccess($this->lng->txt('crs_starter_deleted'), true);
195 }
196
197 $this->ctrl->redirect($this, "listStructure");
198 }

References $_POST, checkPermission(), ilUtil\sendFailure(), and ilUtil\sendSuccess().

+ Here is the call graph for this function:

◆ executeCommand()

ilContainerStartObjectsGUI::executeCommand ( )

Definition at line 35 of file class.ilContainerStartObjectsGUI.php.

36 {
37 // $this->prepareOutput();
38
39 switch($this->ctrl->getNextClass($this))
40 {
41 case "ilcontainerstartobjectspagegui":
42 $this->checkPermission("write");
43 $this->tabs_gui->clearTargets();
44 $this->tabs_gui->setBackTarget($this->lng->txt("back"),
45 $this->ctrl->getLinkTarget($this, "listStructure"));
46
47 include_once "Services/Container/classes/class.ilContainerStartObjectsPage.php";
48 if(!ilContainerStartObjectsPage::_exists("cstr", $this->object->getId()))
49 {
50 // doesn't exist -> create new one
51 $new_page_object = new ilContainerStartObjectsPage();
52 $new_page_object->setParentId($this->object->getId());
53 $new_page_object->setId($this->object->getId());
54 $new_page_object->createFromXML();
55 unset($new_page_object);
56 }
57
58 $this->ctrl->setReturnByClass("ilcontainerstartobjectspagegui", "edit");
59 include_once "Services/Container/classes/class.ilContainerStartObjectsPageGUI.php";
60 $pgui = new ilContainerStartObjectsPageGUI($this->object->getId());
61
62 // needed for editor?
63 include_once("./Services/Style/classes/class.ilObjStyleSheet.php");
65
66 $ret = $this->ctrl->forwardCommand($pgui);
67 if($ret)
68 {
69 $this->tpl->setContent($ret);
70 }
71 break;
72
73 default:
74 $cmd = $this->ctrl->getCmd("listStructure");
75 $cmd .= "Object";
76 $this->$cmd();
77 break;
78 }
79 }
Container start objects page GUI class.
Container start objects page object.
static getEffectiveContentStyleId($a_style_id, $a_type="")
Get effective Style Id.
static _exists($a_parent_type, $a_id, $a_lang="")
Checks whether page exists.
$cmd
Definition: sahs_server.php:35

References $cmd, $ret, ilPageObject\_exists(), checkPermission(), and ilObjStyleSheet\getEffectiveContentStyleId().

+ Here is the call graph for this function:

◆ listStructureObject()

ilContainerStartObjectsGUI::listStructureObject ( )
protected

Definition at line 112 of file class.ilContainerStartObjectsGUI.php.

113 {
114 global $ilToolbar;
115
116 $this->checkPermission('write');
117 $this->setTabs();
118
119 $ilToolbar->addButton($this->lng->txt('crs_add_starter'),
120 $this->ctrl->getLinkTarget($this, 'selectStarter'));
121
122 include_once './Services/Container/classes/class.ilContainerStartObjectsTableGUI.php';
123 $table = new ilContainerStartObjectsTableGUI($this, 'listStructure', $this->start_object);
124 $this->tpl->setContent($table->getHTML());
125 }

References checkPermission(), and setTabs().

+ Here is the call graph for this function:

◆ saveSortingObject()

ilContainerStartObjectsGUI::saveSortingObject ( )
protected

Definition at line 127 of file class.ilContainerStartObjectsGUI.php.

128 {
129 $pos = $_POST["pos"];
130 if(is_array($pos))
131 {
132 asort($pos);
133 $counter = 0;
134 foreach(array_keys($pos) as $start_id)
135 {
136 $counter += 10;
137 $this->start_object->setObjectPos($start_id, $counter);
138 }
139
140 ilUtil::sendSuccess($this->lng->txt('cntr_saved_sorting'), true);
141 }
142
143 $this->ctrl->redirect($this, "listStructure");
144 }

References $_POST, and ilUtil\sendSuccess().

+ Here is the call graph for this function:

◆ selectStarterObject()

ilContainerStartObjectsGUI::selectStarterObject ( )
protected

Definition at line 200 of file class.ilContainerStartObjectsGUI.php.

201 {
202 $this->checkPermission('write');
203 $this->setTabs();
204
205 include_once './Services/Container/classes/class.ilContainerStartObjectsTableGUI.php';
206 $table = new ilContainerStartObjectsTableGUI($this, 'selectStarter', $this->start_object);
207 $this->tpl->setContent($table->getHTML());
208 }

References checkPermission(), and setTabs().

+ Here is the call graph for this function:

◆ setTabs()

ilContainerStartObjectsGUI::setTabs (   $a_active = "manage")

Definition at line 93 of file class.ilContainerStartObjectsGUI.php.

94 {
95 global $ilSetting;
96
97 $this->tabs_gui->addSubTab("manage",
98 $this->lng->txt("cntr_manage"),
99 $this->ctrl->getLinkTarget($this, "listStructure"));
100
101 // :TODO: depending on this setting?
102 if ($ilSetting->get("enable_cat_page_edit"))
103 {
104 $this->tabs_gui->addSubTab("page_editor",
105 $this->lng->txt("cntr_text_media_editor"),
106 $this->ctrl->getLinkTargetByClass("ilContainerStartObjectsPageGUI", "edit"));
107 }
108
109 $this->tabs_gui->activateSubTab($a_active);
110 }
global $ilSetting
Definition: privfeed.php:40

References $ilSetting.

Referenced by askDeleteStarterObject(), listStructureObject(), and selectStarterObject().

+ Here is the caller graph for this function:

Field Documentation

◆ $object

ilContainerStartObjectsGUI::$object
protected

Definition at line 15 of file class.ilContainerStartObjectsGUI.php.

◆ $start_object

ilContainerStartObjectsGUI::$start_object
protected

Definition at line 16 of file class.ilContainerStartObjectsGUI.php.


The documentation for this class was generated from the following file: