3require_once(
"./Services/Container/classes/class.ilContainerGUI.php");
4require_once(
"./Services/AccessControl/classes/class.ilObjRole.php");
5require_once(
"./Services/Form/classes/class.ilPropertyFormGUI.php");
6require_once(
"./Services/AccessControl/classes/class.ilPermissionGUI.php");
7require_once(
"./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
8require_once(
"./Services/User/classes/class.ilUserAccountSettings.php");
9require_once(
"./Services/Tracking/classes/class.ilLearningProgressGUI.php");
10require_once(
"./Services/User/classes/class.ilObjUserFolderGUI.php");
11require_once(
"./Services/Tree/classes/class.ilTree.php");
12require_once(
"./Modules/OrgUnit/classes/Staff/class.ilOrgUnitStaffGUI.php");
13require_once(
"./Modules/OrgUnit/classes/LocalUser/class.ilLocalUserGUI.php");
14require_once(
"./Modules/OrgUnit/classes/Translation/class.ilTranslationGUI.php");
15require_once(
"./Modules/OrgUnit/classes/ExtId/class.ilExtIdGUI.php");
16require_once(
"./Modules/OrgUnit/classes/SimpleImport/class.ilOrgUnitSimpleImportGUI.php");
17require_once(
"./Modules/OrgUnit/classes/SimpleUserImport/class.ilOrgUnitSimpleUserImportGUI.php");
18require_once(
"./Modules/OrgUnit/classes/class.ilOrgUnitImporter.php");
19require_once(
"./Services/Object/classes/class.ilObjectAddNewItemGUI.php");
20require_once(
"class.ilOrgUnitExplorerGUI.php");
21require_once(
"class.ilOrgUnitExportGUI.php");
22require_once(
"class.ilObjOrgUnitAccess.php");
23require_once(
"class.ilObjOrgUnitTree.php");
24require_once(dirname(__FILE__) .
'/Types/class.ilOrgUnitTypeGUI.php');
25require_once(dirname(__FILE__) .
'/Settings/class.ilObjOrgUnitSettingsFormGUI.php');
26require_once(
'./Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php');
27require_once(
'./Services/Container/classes/class.ilContainerByTypeContentGUI.php');
92 parent::ilContainerGUI(array(),
$_GET[
"ref_id"],
true,
false);
99 $this->toolbar = $ilToolbar;
102 $this->type =
'orgu';
104 $lng->loadLanguageModule(
"orgu");
105 $this->tpl->addCss(
'./Modules/OrgUnit/templates/default/orgu.css');
110 $cmd = $this->ctrl->getCmd();
111 $next_class = $this->ctrl->getNextClass($this);
112 parent::prepareOutput();
119 switch ($next_class) {
120 case "illocalusergui":
123 $this->ctrl->redirect($this);
125 $this->tabs_gui->setTabActive(
'administrate_users');
127 $this->ctrl->forwardCommand($ilLocalUserGUI);
129 case "ilorgunitsimpleimportgui":
130 $this->tabs_gui->setTabActive(
"view");
132 $this->tabs_gui->setSubTabActive(
'import');
134 $this->ctrl->forwardCommand($ilOrgUnitSimpleImportGUI);
136 case "ilorgunitsimpleuserimportgui":
138 $this->ctrl->forwardCommand($ilOrgUnitSimpleUserImportGUI);
140 case "ilorgunitstaffgui":
141 case "ilrepositorysearchgui":
142 $this->tabs_gui->setTabActive(
'orgu_staff');
144 $this->ctrl->forwardCommand($ilOrgUnitStaffGUI);
150 $ilObjUserGUI->setCreationMode(
true);
151 $this->ctrl->forwardCommand($ilObjUserGUI);
152 $this->tabs_gui->setBackTarget($this->lng->txt(
"back"), $this->ctrl->getLinkTargetByClass(
"illocalusergui",
'index'));
156 $ilObjUserGUI->setCreationMode(
true);
157 $this->ctrl->forwardCommand($ilObjUserGUI);
158 $this->tabs_gui->clearTargets();
159 $this->tabs_gui->setBackTarget($this->lng->txt(
"back"), $this->ctrl->getLinkTargetByClass(
"illocalusergui",
'index'));
164 $ilObjUserGUI->setCreationMode(
false);
165 $this->ctrl->forwardCommand($ilObjUserGUI);
166 $this->tabs_gui->clearTargets();
167 $this->tabs_gui->setBackTarget($this->lng->txt(
"back"), $this->ctrl->getLinkTargetByClass(
"illocalusergui",
'index'));
170 $this->ctrl->redirectByClass(
"illocalusergui",
"index");
174 case "ilobjuserfoldergui":
177 $this->ctrl->redirectByClass(
"illocalusergui",
"index");
181 $ilObjUserFolderGUI->setUserOwnerId((
int)
$_GET[
'ref_id']);
182 $ilObjUserFolderGUI->setCreationMode(
true);
183 $this->ctrl->forwardCommand($ilObjUserFolderGUI);
184 $this->tabs_gui->clearTargets();
185 $this->tabs_gui->setBackTarget($this->lng->txt(
"back"), $this->ctrl->getLinkTargetByClass(
"illocalusergui",
'index'));
189 case "ilinfoscreengui":
190 $this->tabs_gui->setTabActive(
"info_short");
191 if (!$this->ilAccess->checkAccess(
"read",
"", $this->ref_id) AND !$this->ilAccess->checkAccess(
"visible",
"", $this->ref_id)) {
192 $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_read"), $this->ilias->error_obj->MESSAGE);
196 $amd_gui->setInfoObject(
$info);
198 $this->ctrl->forwardCommand(
$info);
200 case 'ilpermissiongui':
201 $this->tabs_gui->setTabActive(
'perm_settings');
203 $this->ctrl->forwardCommand($ilPermissionGUI);
205 case "ilcommonactiondispatchergui":
206 include_once(
"Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
208 $this->ctrl->forwardCommand($gui);
210 case 'illearningprogressgui':
211 case 'illplistofprogressgui':
212 $this->tabs_gui->clearTargets();
213 $this->tabs_gui->setBackTarget($this->lng->txt(
'backto_staff'), $this->ctrl->getLinkTargetByClass(
"ilOrgUnitStaffGUI",
'showStaff'));
216 $this->ctrl->redirectByClass(
"ilOrgUnitStaffGUI",
"showStaff");
218 $this->ctrl->saveParameterByClass(
"illearningprogressgui",
"obj_id");
219 $this->ctrl->saveParameterByClass(
"illearningprogressgui",
"recursive");
220 include_once
'./Services/Tracking/classes/class.ilLearningProgressGUI.php';
222 $this->ctrl->forwardCommand($new_gui);
224 case 'ilorgunitexportgui':
225 $this->tabs_gui->setTabActive(
'export');;
227 $ilOrgUnitExportGUI->addFormat(
'xml');
228 $this->ctrl->forwardCommand($ilOrgUnitExportGUI);
230 case 'iltranslationgui':
231 $this->tabs_gui->setTabActive(
"settings");
235 $this->ctrl->forwardCommand($ilTranslationGui);
237 case 'ilorgunittypegui':
238 $this->tabs_gui->setTabActive(
'orgu_types');
240 $this->ctrl->forwardCommand($types_gui);
257 case 'performPasteIntoMultipleObjects':
261 parent::createObject();
264 parent::saveObject();
267 $this->tabs_gui->clearTargets();
268 $this->tabs_gui->setBackTarget($this->lng->txt(
"back"), $this->ctrl->getLinkTarget($this));
269 parent::deleteObject();
271 case 'confirmedDelete':
272 parent::confirmedDeleteObject();
275 $this->tabs_gui->clearTargets();
276 $this->tabs_gui->setBackTarget($this->lng->txt(
"back"), $this->ctrl->getLinkTarget($this));
280 parent::clearObject();
282 case 'enableAdministrationPanel':
283 parent::enableAdministrationPanelObject();
285 case 'disableAdministrationPanel':
286 parent::disableAdministrationPanelObject();
288 case 'getAsynchItemList':
289 parent::getAsynchItemListObject();
292 $this->tabs_gui->setTabActive(
"settings");
296 case 'updateSettings':
297 $this->tabs_gui->setTabActive(
"settings");
301 case 'editAdvancedSettings':
302 $this->tabs_gui->setTabActive(
"settings");
306 case 'updateAdvancedSettings':
307 $this->tabs_gui->setTabActive(
"settings");
321 if (!$this->ilAccess->checkAccess(
"read",
"",
$_GET[
"ref_id"])) {
322 if ($this->ilAccess->checkAccess(
"visible",
"",
$_GET[
"ref_id"])) {
324 $this->ctrl->redirectByClass(
'ilinfoscreengui',
'');
327 $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_read"), $this->ilias->error_obj->WARNING);
330 parent::renderObject();
331 $this->tabs_gui->setTabActive(
"view_content");
332 $this->tabs_gui->removeSubTab(
"page_editor");
333 $this->tabs_gui->removeSubTab(
"ordering");
360 $gui->setCreationUrl(
"ilias.php?ref_id=" .
$_GET[
"ref_id"] .
"&admin_mode=settings&cmd=create&baseClass=ilAdministrationGUI");
367 $tree->setTypeWhiteList(array(
"orgu" ));
368 if (!
$tree->handleCommand()) {
369 $this->tpl->setLeftNavContent(
$tree->getHTML());
371 $this->ctrl->setParameterByClass(
"ilObjOrgUnitGUI",
"ref_id",
$_GET[
"ref_id"]);
379 # all possible create permissions
381 parent::setTitleAndDescription();
382 if ($this->object->getTitle() ==
"__OrgUnitAdministration") {
383 $this->tpl->setTitle($this->lng->txt(
"objs_orgu"));
384 $this->tpl->setDescription($this->lng->txt(
"objs_orgu"));
388 if ($this->
ilias->getSetting(
'custom_icons')) {
389 $icons_cache = ilObjOrgUnit::getIconsCache();
390 $icon_file = (isset($icons_cache[$this->object->getId()])) ? $icons_cache[$this->object->getId()] :
'';
392 $this->tpl->setTitleIcon($icon_file, $this->lng->txt(
"obj_" . $this->object->getType()));
402 if (
$row[
"title"] ==
"__OrgUnitAdministration") {
403 $row[
"title"] = $this->lng->txt(
"objs_orgu");
405 $this->ctrl->setParameterByClass(
"ilobjorgunitgui",
"ref_id",
$row[
"child"]);
407 $this->ctrl->setParameterByClass(
"ilobjorgunitgui",
"ref_id",
$_GET[
"ref_id"]);
418 if ($obj_type !=
"orgu") {
419 parent::redirectToRefId($a_ref_id, $a_cmd);
421 $this->ctrl->setParameterByClass(
"ilObjOrgUnitGUI",
"ref_id", $a_ref_id);
422 $this->ctrl->redirectByClass(
"ilObjOrgUnitGUI", $a_cmd);
431 if ($this->ilAccess->checkAccess(
'read',
'', $this->object->getRefId())) {
432 $this->tabs_gui->addTab(
"view_content", $this->lng->txt(
"content"), $this->ctrl->getLinkTarget($this,
""));
433 $this->tabs_gui->addTab(
"info_short",
"Info", $this->ctrl->getLinkTargetByClass(
"ilinfoscreengui",
"showSummary"));
439 $this->tabs_gui->addTab(
"orgu_staff", $this->lng->txt(
"orgu_staff"), $this->ctrl->getLinkTargetByClass(
"ilOrgUnitStaffGUI",
"showStaff"));
441 if ($this->ilAccess->checkAccess(
'write',
'', $this->object->getRefId())) {
442 $this->tabs_gui->addTab(
"settings", $this->lng->txt(
"settings"), $this->ctrl->getLinkTarget($this,
'editSettings'));
445 $this->tabs_gui->addTab(
"administrate_users", $this->lng->txt(
"administrate_users"), $this->ctrl->getLinkTargetByClass(
"ilLocalUserGUI",
"index"));
449 if ($this->ilAccess->checkAccess(
'write',
'', $this->object->getRefId())) {
450 $this->tabs_gui->addTarget(
'export', $this->ctrl->getLinkTargetByClass(
'ilorgunitexportgui',
''),
'export',
'ilorgunitexportgui');
454 $this->tabs_gui->addTab(
'orgu_types', $this->lng->txt(
'orgu_types'), $this->ctrl->getLinkTargetByClass(
'ilOrgUnitTypeGUI'));
457 parent::getTabs($this->tabs_gui);
465 $next_class = $this->ctrl->getNextClass($this);
466 $cmd = $this->ctrl->getCmd();
467 $this->tabs_gui->addSubTab(
'edit_settings', $this->lng->txt(
'settings'), $this->ctrl->getLinkTarget($this,
'editSettings'));
468 $this->tabs_gui->addSubTab(
"edit_translations", $this->lng->txt(
"obj_multilinguality"), $this->ctrl->getLinkTargetByClass(
"iltranslationgui",
"editTranslations"));
470 $ilOrgUnitType = $this->
object->getOrgUnitType();
472 if (count($ilOrgUnitType->getAssignedAdvancedMDRecords(
true))) {
473 $this->tabs_gui->addSubTab(
'edit_advanced_settings', $this->lng->txt(
'orgu_adv_settings'), $this->ctrl->getLinkTarget($this,
'editAdvancedSettings'));
477 $this->tabs_gui->setSubTabActive($active_tab_id);
478 switch ($next_class) {
479 case 'iltranslationgui':
480 $this->tabs_gui->setSubTabActive(
"edit_translations");
485 $this->tabs_gui->setSubTabActive(
'edit_settings');
487 case 'editAdvancedSettings':
488 case 'updateAdvancedSettings':
489 $this->tabs_gui->setSubTabActive(
'edit_advanced_settings');
506 $this->tabs_gui->addSubTab(
"import", $this->lng->txt(
"import"), $this->ctrl->getLinkTargetByClass(
"ilOrgUnitSimpleImportGUI",
"chooseImport"));
518 $form->setFormAction($this->ctrl->getFormAction($this));
519 $form->addCommandButton(
'updateAdvancedSettings', $this->lng->txt(
'save'));
520 $form->addCommandButton(
'editSettings', $this->lng->txt(
'cancel'));
530 if (!$this->ilAccess->checkAccess(
"write",
"", $this->ref_id)) {
532 $this->ctrl->redirect($this);
536 $gui->setPropertyForm($form);
538 $this->tpl->setContent($form->getHTML());
546 if (!$this->ilAccess->checkAccess(
"write",
"", $this->ref_id)) {
548 $this->ctrl->redirect($this);
552 $gui->setPropertyForm($form);
555 if ($gui->importEditFormPostValues()) {
556 $gui->writeEditForm();
558 $this->ctrl->redirect($this,
'editAdvancedSettings');
560 $this->tpl->setContent($form->getHTML());
565 if (!$this->ilAccess->checkAccess(
"write",
"", $this->ref_id)) {
567 $this->ctrl->redirect($this);
570 $this->tpl->setContent($form->getHTML());
575 if (!$this->ilAccess->checkAccess(
"write",
"", $this->ref_id)) {
577 $this->ctrl->redirect($this);
580 if ($form->saveObject()) {
582 $this->ctrl->redirect($this,
'editSettings');
584 $this->tpl->setContent($form->getHTML());
590 parent::showAdministrationPanel(
$tpl);
597 foreach (
$toolbar->items as $key => $item) {
598 if ($item[
"cmd"] ==
"link" || $item[
"cmd"] ==
"copy" || $item[
"cmd"] ==
"download") {
608 $ilCtrl->initBaseClass(
"ilAdministrationGUI");
609 $ilCtrl->setTargetScript(
"ilias.php");
610 $ilCtrl->setParameterByClass(
"ilObjOrgUnitGUI",
"ref_id",
$ref_id);
611 $ilCtrl->setParameterByClass(
"ilObjOrgUnitGUI",
"admin_mode",
"settings");
612 $ilCtrl->redirectByClass(array(
"ilAdministrationGUI",
"ilObjOrgUnitGUI" ),
"view");
619 $explorer->setAjax(
false);
620 $explorer->setSelectMode(
'nodes[]',
false);
639 if (!in_array(
$_SESSION[
'clipboard'][
'cmd'], array(
'cut' ))) {
640 $message = __METHOD__ .
": cmd was not 'cut' ; may be a hack attempt!";
641 $this->
ilias->raiseError($message, $this->
ilias->error_obj->WARNING);
643 if (
$_SESSION[
'clipboard'][
'cmd'] ==
'cut') {
644 if (isset(
$_GET[
'ref_id']) && (
int)
$_GET[
'ref_id']) {
649 $this->ctrl->returnToParent($this);
667 return parent::__initTableGUI();
676 return parent::__setTableGUIBasicData(
$tbl, $a_result_set, $a_from, $a_form);
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
showAdministrationPanel(&$tpl)
show administration panel
performPasteIntoMultipleObjectsObject()
addStandardContainerSubTabs($a_include_view=true)
Add standar container subtabs for view, manage, oderdering and text/media editor link.
const LP_CONTEXT_ORG_UNIT
Class ilObjUserTrackingGUI.
static _checkAccessToUserLearningProgress($ref_id, $usr_id)
static _checkAccessStaff($ref_id)
static _checkAccessAdministrateUsers($ref_id)
Class ilObjOrgUnit GUI class.
getTabs(ilTabsGUI $tabs_gui=NULL)
redirectToRefId($a_ref_id, $a_cmd="")
executeCommand()
execute command note: this method is overwritten in all container objects
__setTableGUIBasicData(&$tbl, &$a_result_set, $a_from, $a_form)
updateAdvancedSettings()
Update Advanced Metadata.
setContentSubTabs()
Set content sub tabs.
setTitleAndDescription()
called by prepare output
doUserAutoCompleteObject()
??
editAdvancedSettings()
Edit Advanced Metadata.
showPossibleSubObjects()
show possible sub objects selection list
performPaste()
@description Prepare $_POST for the generic method performPasteIntoMultipleObjectsObject
setSubTabsSettings($active_tab_id)
getAdminTabs(ilTabsGUI $tabs_gui)
initCreationForms($a_new_type)
initCreationForms
initAdvancedSettingsForm()
Initialize the form for editing advanced meta data.
Class ilObjUserFolderGUI.
Render add new item selector.
const MODE_ADMINISTRATION
initImportForm($a_new_type)
Init object import form.
importFileObject($parent_id=null, $a_catch_errors=true)
Import.
initCreateForm($a_new_type)
Init object creation form.
static _lookupType($a_id, $a_reference=false)
lookup object type
Class ilOrgUnitExplorerGUI.
Class ilOrgUnitExportGUI.
Class ilOrgUnitSimpleImportGUI.
Class ilOrgUnitSimpleUserImportGUI.
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
Tree class data representation in hierachical trees using the Nested Set Model with Gaps by Joe Celco...
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
redirection script todo: (a better solution should control the processing via a xml file)