83 $ilToolbar = $DIC[
'ilToolbar'];
89 parent::__construct(array(),
$_GET[
"ref_id"],
true,
false);
96 $this->toolbar = $ilToolbar;
101 $lng->loadLanguageModule(
"orgu");
102 $this->tpl->addCss(
'./Modules/OrgUnit/templates/default/orgu.css');
112 $cmd = $this->ctrl->getCmd();
113 $next_class = $this->ctrl->getNextClass($this);
114 parent::prepareOutput();
121 switch ($next_class) {
122 case 'ilorgunitglobalsettingsgui':
123 $this->tabs_gui->activateTab(self::TAB_GLOBAL_SETTINGS);
125 $this->ctrl->forwardCommand($global_settings);
127 case "illocalusergui":
130 $this->ctrl->redirect($this);
132 $this->tabs_gui->activateTab(
'administrate_users');
134 $this->ctrl->forwardCommand($ilLocalUserGUI);
136 case "ilorgunitsimpleimportgui":
137 $this->tabs_gui->activateTab(
"view");
139 $this->tabs_gui->setSubTabActive(
'import');
141 $this->ctrl->forwardCommand($ilOrgUnitSimpleImportGUI);
143 case "ilorgunitsimpleuserimportgui":
145 $this->ctrl->forwardCommand($ilOrgUnitSimpleUserImportGUI);
147 case "ilorgunitstaffgui":
148 case "ilrepositorysearchgui":
149 $this->tabs_gui->activateTab(self::TAB_STAFF);
151 $this->ctrl->forwardCommand($ilOrgUnitStaffGUI);
156 $ilObjUserGUI =
new ilObjUserGUI(
"", (
int) $_GET[
'ref_id'],
true,
false);
157 $ilObjUserGUI->setCreationMode(
true);
158 $this->ctrl->forwardCommand($ilObjUserGUI);
159 $this->tabs_gui->setBackTarget($this->lng->txt(
"back"), $this->ctrl->getLinkTargetByClass(
"illocalusergui",
'index'));
162 $ilObjUserGUI =
new ilObjUserGUI(
"", $_GET[
'ref_id'],
true,
false);
163 $ilObjUserGUI->setCreationMode(
true);
164 $this->ctrl->forwardCommand($ilObjUserGUI);
165 $this->tabs_gui->clearTargets();
166 $this->tabs_gui->setBackTarget($this->lng->txt(
"back"), $this->ctrl->getLinkTargetByClass(
"illocalusergui",
'index'));
170 $ilObjUserGUI =
new ilObjUserGUI(
"", (
int) $_GET[
'obj_id'],
false,
false);
171 $ilObjUserGUI->setCreationMode(
false);
172 $this->ctrl->forwardCommand($ilObjUserGUI);
173 $this->tabs_gui->clearTargets();
174 $this->tabs_gui->setBackTarget($this->lng->txt(
"back"), $this->ctrl->getLinkTargetByClass(
"illocalusergui",
'index'));
177 $this->ctrl->redirectByClass(
"illocalusergui",
"index");
181 case "ilobjuserfoldergui":
184 $this->ctrl->redirectByClass(
"illocalusergui",
"index");
188 $ilObjUserFolderGUI->setUserOwnerId((
int) $_GET[
'ref_id']);
189 $ilObjUserFolderGUI->setCreationMode(
true);
190 $this->ctrl->forwardCommand($ilObjUserFolderGUI);
191 $this->tabs_gui->clearTargets();
192 $this->tabs_gui->setBackTarget($this->lng->txt(
"back"), $this->ctrl->getLinkTargetByClass(
"illocalusergui",
'index'));
196 case "ilinfoscreengui":
197 $this->tabs_gui->activateTab(
"info_short");
199 $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_read"), $this->
ilias->error_obj->MESSAGE);
205 $this->ctrl->forwardCommand(
$info);
207 case 'ilpermissiongui':
208 $this->tabs_gui->activateTab(
'perm_settings');
210 $this->ctrl->forwardCommand($ilPermissionGUI);
212 case "ilcommonactiondispatchergui":
214 $this->ctrl->forwardCommand($gui);
216 case 'illearningprogressgui':
217 case 'illplistofprogressgui':
218 $this->tabs_gui->clearTargets();
222 $this->ctrl->redirectByClass(
"ilOrgUnitStaffGUI",
"showStaff");
224 $this->ctrl->saveParameterByClass(
"illearningprogressgui",
"obj_id");
225 $this->ctrl->saveParameterByClass(
"illearningprogressgui",
"recursive");
227 $this->ctrl->forwardCommand($new_gui);
229 case 'ilorgunitexportgui':
232 $this->ctrl->redirect($this);
234 $this->tabs_gui->activateTab(self::TAB_EXPORT);;
236 $ilOrgUnitExportGUI->addFormat(
'xml');
237 $this->ctrl->forwardCommand($ilOrgUnitExportGUI);
239 case strtolower(ilTranslationGUI::class):
240 $this->tabs_gui->activateTab(self::TAB_SETTINGS);
243 $this->ctrl->forwardCommand($ilTranslationGui);
245 case strtolower(ilOrgUnitTypeGUI::class):
246 $this->tabs_gui->activateTab(self::TAB_ORGU_TYPES);
248 $this->ctrl->forwardCommand($types_gui);
250 case strtolower(ilOrgUnitPositionGUI::class):
251 $this->tabs_gui->activateTab(self::TAB_POSITIONS);
253 $this->ctrl->forwardCommand($types_gui);
255 case strtolower(ilOrgUnitUserAssignmentGUI::class):
256 $this->tabs_gui->activateTab(self::TAB_STAFF);
258 $this->ctrl->forwardCommand($ilOrgUnitUserAssignmentGUI);
273 case 'performPasteIntoMultipleObjects':
276 case 'keepObjectsInClipboard':
280 parent::createObject();
283 parent::saveObject();
286 $this->tabs_gui->clearTargets();
287 $this->tabs_gui->setBackTarget($this->lng->txt(
"back"), $this->ctrl->getLinkTarget($this));
290 case 'confirmedDelete':
294 $this->tabs_gui->clearTargets();
295 $this->tabs_gui->setBackTarget($this->lng->txt(
"back"), $this->ctrl->getLinkTarget($this));
299 parent::clearObject();
301 case 'enableAdministrationPanel':
302 parent::enableAdministrationPanelObject();
304 case 'disableAdministrationPanel':
305 parent::disableAdministrationPanelObject();
307 case 'getAsynchItemList':
308 parent::getAsynchItemListObject();
310 case self::CMD_EDIT_SETTINGS:
311 $this->tabs_gui->activateTab(self::TAB_SETTINGS);
315 case 'updateSettings':
316 $this->tabs_gui->activateTab(self::TAB_SETTINGS);
320 case 'editAdvancedSettings':
321 $this->tabs_gui->activateTab(self::TAB_SETTINGS);
325 case 'updateAdvancedSettings':
326 $this->tabs_gui->activateTab(self::TAB_SETTINGS);
333 case 'cancelMoveLink':
347 ilUtil::sendSuccess($this->lng->txt(
"object_added"),
true);
348 $this->ctrl->setParameter($this,
"ref_id", $a_new_object->
getRefId());
355 if (!$this->rbacsystem->checkAccess(
"read",
$_GET[
"ref_id"])) {
356 if ($this->rbacsystem->checkAccess(
"visible",
$_GET[
"ref_id"])) {
358 $this->ctrl->redirectByClass(
'ilinfoscreengui',
'');
361 $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_read"), $this->
ilias->error_obj->WARNING);
364 parent::renderObject();
365 $this->tabs_gui->activateTab(
"view_content");
366 $this->tabs_gui->removeSubTab(
"page_editor");
367 $this->tabs_gui->removeSubTab(
"ordering");
396 $gui->setCreationUrl(
"ilias.php?ref_id=" .
$_GET[
"ref_id"] .
"&admin_mode=settings&cmd=create&baseClass=ilAdministrationGUI");
407 if (!
$tree->handleCommand()) {
408 $this->tpl->setLeftNavContent(
$tree->getHTML());
410 $this->ctrl->setParameterByClass(
"ilObjOrgUnitGUI",
"ref_id",
$_GET[
"ref_id"]);
416 $whiteList = array(
"orgu" );
417 $pls = ilOrgUnitExtension::getActivePluginIdsForTree();
419 return array_merge($whiteList, $pls);
428 # all possible create permissions 429 parent::setTitleAndDescription();
430 if ($this->object->getTitle() ==
"__OrgUnitAdministration") {
431 $this->tpl->setTitle($this->lng->txt(
"objs_orgu"));
432 $this->tpl->setDescription($this->lng->txt(
"objs_orgu"));
436 if ($this->
ilias->getSetting(
'custom_icons')) {
437 $icons_cache = ilObjOrgUnit::getIconsCache();
438 $icon_file = (isset($icons_cache[$this->object->getId()])) ? $icons_cache[$this->
object->getId()] :
'';
440 $this->tpl->setTitleIcon($icon_file, $this->lng->txt(
"obj_" . $this->object->getType()));
454 if (
$row[
"title"] ==
"__OrgUnitAdministration") {
455 $row[
"title"] = $this->lng->txt(
"objs_orgu");
457 $this->ctrl->setParameterByClass(
"ilobjorgunitgui",
"ref_id",
$row[
"child"]);
459 $this->ctrl->setParameterByClass(
"ilobjorgunitgui",
"ref_id",
$_GET[
"ref_id"]);
471 if ($obj_type !=
"orgu") {
472 parent::redirectToRefId($a_ref_id, $a_cmd);
474 $this->ctrl->setParameterByClass(
"ilObjOrgUnitGUI",
"ref_id", $a_ref_id);
475 $this->ctrl->redirectByClass(
"ilObjOrgUnitGUI", $a_cmd);
485 $read_access_ref_id = $this->rbacsystem->checkAccess(
'visible,read', $this->object->getRefId());
486 if ($read_access_ref_id) {
487 $this->tabs_gui->addTab(
"view_content", $this->lng->txt(
"content"), $this->ctrl->getLinkTarget($this,
""));
488 $this->tabs_gui->addTab(
"info_short",
"Info", $this->ctrl->getLinkTargetByClass(
"ilinfoscreengui",
"showSummary"));
495 $this->tabs_gui->addTab(self::TAB_STAFF, $this->lng->txt(self::TAB_STAFF), $this->ctrl->getLinkTargetByClass(ilOrgUnitUserAssignmentGUI::class,
ilOrgUnitUserAssignmentGUI::CMD_INDEX));
497 if ($read_access_ref_id) {
498 $this->tabs_gui->addTab(self::TAB_SETTINGS, $this->lng->txt(self::TAB_SETTINGS), $this->ctrl->getLinkTarget($this, self::CMD_EDIT_SETTINGS));
499 $this->tabs_gui->addTab(
"administrate_users", $this->lng->txt(
"administrate_users"), $this->ctrl->getLinkTargetByClass(
"ilLocalUserGUI",
"index"));
503 if ($read_access_ref_id) {
505 $this->tabs_gui->addTab(self::TAB_GLOBAL_SETTINGS, $this->lng->txt(
'settings'), $this->ctrl->getLinkTargetByClass(ilOrgUnitGlobalSettingsGUI::class));
507 $this->tabs_gui->addTab(self::TAB_EXPORT, $this->lng->txt(self::TAB_EXPORT), $this->ctrl->getLinkTargetByClass(ilOrgUnitExportGUI::class));
511 $this->tabs_gui->addTab(self::TAB_ORGU_TYPES, $this->lng->txt(self::TAB_ORGU_TYPES), $this->ctrl->getLinkTargetByClass(ilOrgUnitTypeGUI::class));
512 $this->tabs_gui->addTab(self::TAB_POSITIONS, $this->lng->txt(self::TAB_POSITIONS), $this->ctrl->getLinkTargetByClass(ilOrgUnitPositionGUI::class));
524 $next_class = $this->ctrl->getNextClass($this);
525 $cmd = $this->ctrl->getCmd();
526 $this->tabs_gui->addSubTab(
'edit_settings', $this->lng->txt(self::TAB_SETTINGS), $this->ctrl->getLinkTarget($this, self::CMD_EDIT_SETTINGS));
527 $this->tabs_gui->addSubTab(
"edit_translations", $this->lng->txt(
"obj_multilinguality"), $this->ctrl->getLinkTargetByClass(
"iltranslationgui",
"editTranslations"));
529 $ilOrgUnitType = $this->
object->getOrgUnitType();
531 if (count($ilOrgUnitType->getAssignedAdvancedMDRecords(
true))) {
532 $this->tabs_gui->addSubTab(
'edit_advanced_settings', $this->lng->txt(
'orgu_adv_settings'), $this->ctrl->getLinkTarget($this,
'editAdvancedSettings'));
536 $this->tabs_gui->setSubTabActive($active_tab_id);
537 switch ($next_class) {
538 case 'iltranslationgui':
539 $this->tabs_gui->setSubTabActive(
"edit_translations");
543 case self::CMD_EDIT_SETTINGS:
544 $this->tabs_gui->setSubTabActive(
'edit_settings');
546 case 'editAdvancedSettings':
547 case 'updateAdvancedSettings':
548 $this->tabs_gui->setSubTabActive(
'edit_advanced_settings');
566 $this->tabs_gui->addSubTab(
"import", $this->lng->txt(
"import"), $this->ctrl->getLinkTargetByClass(
"ilOrgUnitSimpleImportGUI",
"chooseImport"));
579 $form->setFormAction($this->ctrl->getFormAction($this));
580 $form->addCommandButton(
'updateAdvancedSettings', $this->lng->txt(
'save'));
581 $form->addCommandButton(self::CMD_EDIT_SETTINGS, $this->lng->txt(
'cancel'));
594 $this->ctrl->redirect($this);
600 $this->tpl->setContent(
$form->getHTML());
611 $this->ctrl->redirect($this);
618 if ($gui->importEditFormPostValues()) {
619 $gui->writeEditForm();
620 ilUtil::sendSuccess($this->lng->txt(
'settings_saved'),
true);
621 $this->ctrl->redirect($this,
'editAdvancedSettings');
623 $this->tpl->setContent(
$form->getHTML());
632 $this->ctrl->redirect($this);
635 $this->tpl->setContent(
$form->getHTML());
643 $this->ctrl->redirect($this);
646 if (
$form->saveObject()) {
647 ilUtil::sendSuccess($this->lng->txt(
'msg_obj_modified'),
true);
648 $this->ctrl->redirect($this, self::CMD_EDIT_SETTINGS);
650 $this->tpl->setContent(
$form->getHTML());
660 parent::showAdministrationPanel();
664 if (!
$toolbar = $DIC->ui()->mainTemplate()->admin_panel_commands_toolbar) {
669 if ($item[
"cmd"] ==
"link" || $item[
"cmd"] ==
"copy" 670 || $item[
"cmd"] ==
"download") {
682 $ilCtrl->initBaseClass(
"ilAdministrationGUI");
683 $ilCtrl->setParameterByClass(
"ilObjOrgUnitGUI",
"ref_id",
$ref_id);
684 $ilCtrl->setParameterByClass(
"ilObjOrgUnitGUI",
"admin_mode", self::TAB_SETTINGS);
685 $ilCtrl->setParameterByClass(
"IlObjPluginDispatchGUI",
"admin_mode", self::TAB_SETTINGS);
686 $ilCtrl->redirectByClass(array(
"ilAdministrationGUI",
"ilObjOrgUnitGUI" ),
"view");
693 $tree = $DIC[
'tree'];
695 $explorer->setAjax(
false);
696 $explorer->setSelectMode(
'nodes[]',
false);
716 if (!in_array(
$_SESSION[
'clipboard'][
'cmd'], array(
'cut' ))) {
717 $message = __METHOD__ .
": cmd was not 'cut' ; may be a hack attempt!";
720 if (
$_SESSION[
'clipboard'][
'cmd'] ==
'cut') {
721 if (isset(
$_GET[
'ref_id']) && (
int)
$_GET[
'ref_id']) {
725 $this->ctrl->returnToParent($this);
745 return parent::__initTableGUI();
756 $ids = filter_input(INPUT_POST,
'id', FILTER_DEFAULT, FILTER_REQUIRE_ARRAY);
757 if (count($ids) > 0) {
759 ilUtil::sendSuccess($DIC->language()->txt(
"info_deleted"),
true);
761 $this->ctrl->returnToParent($this);
774 require_once(
"./Services/Repository/classes/class.ilRepUtilGUI.php");
779 if (is_array(
$_POST[
'id']) && count(
$_POST[
'id']) > 0) {
780 $arr_ref_ids =
$_POST[
'id'];
781 } elseif (
$_GET[
'item_ref_id'] > 0) {
782 $arr_ref_ids = [
$_GET[
'item_ref_id']];
785 if (!$ru->showDeleteConfirmation($arr_ref_ids,
false)) {
786 $ilCtrl->returnToParent($this);
797 return parent::__setTableGUIBasicData(
$tbl, $result_set, $a_from);
804 $parent_ref_id =
$_SESSION[
"clipboard"][
"parent"];
806 $DIC->ctrl()->setParameter($this,
'ref_id', $parent_ref_id);
807 $DIC->ctrl()->redirect($this);
setSubTabsSettings($active_tab_id)
confirmedDeleteObject()
confirmed deletion of org units -> org units are deleted immediately, without putting them to the tra...
setPropertyForm($form)
set property form object
static _checkAccessStaff($ref_id)
afterSave(ilObject $a_new_object)
deleteObject($a_error=false)
Display deletion confirmation screen for Org Units.
__setTableGUIBasicData(&$tbl, &$result_set, $a_from="")
Class ilOrgUnitUserAssignmentGUI.
Class ilOrgUnitPositionGUI.
Class ilObjOrgUnit GUI class.
initCreationForms($a_new_type)
initCreationForms
Class ilOrgUnitSimpleImportGUI.
initAdvancedSettingsForm()
Initialize the form for editing advanced meta data.
Global orgunit settings GUI.
Class ilOrgUnitExportGUI.
setContentSubTabs()
Set content sub tabs.
pasteObject()
paste object from clipboard to current place Depending on the chosen command the object(s) are linked...
initImportForm($a_new_type)
Init object import form.
catch(Exception $e) $message
checkAccess($a_permission, $a_cmd, $a_ref_id, $a_type="", $a_obj_id="", $a_tree_id="")
check access for an object (provide $a_type and $a_obj_id if available for better performance)(option...
setInfoObject($info)
get info sections
if(isset($_POST['submit'])) $form
const MODE_ADMINISTRATION
updateAdvancedSettings()
Update Advanced Metadata.
Repository GUI Utilities.
setTitleAndDescription()
called by prepare output
static _checkAccessAdministrateUsers($ref_id)
redirection script todo: (a better solution should control the processing via a xml file) ...
importFileObject($parent_id=null, $a_catch_errors=true)
Import.
doUserAutoCompleteObject()
??
initCreateForm($a_new_type)
Init object creation form.
editAdvancedSettings()
Edit Advanced Metadata.
const LP_CONTEXT_ORG_UNIT
Tree class data representation in hierachical trees using the Nested Set Model with Gaps by Joe Celco...
static _lookupType($a_id, $a_reference=false)
lookup object type
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
performPaste()
Prepare $_POST for the generic method performPasteIntoMultipleObjectsObject
redirectToRefId($a_ref_id, $a_cmd="")
performPasteIntoMultipleObjectsObject()
Render add new item selector.
Class ilObjUserFolderGUI.
getRefId()
get reference id public
Class ilOrgUnitSimpleUserImportGUI.
Class ilOrgUnitExplorerGUI.
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
showAdministrationPanel()
show administration panel
const TAB_GLOBAL_SETTINGS
static redirect($a_script)
static _checkAccessExport($ref_id)
static _checkAccessToUserLearningProgress($ref_id, $usr_id)
Class ilObjUserTrackingGUI.
getReturnLocation($a_cmd, $a_location="")
get return location for command (command is method name without "Object", e.g.
keepObjectsInClipboardObject()
Keep objects in the clipboard.
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
addAdminLocatorItems($a_do_not_add_object=false)
addStandardContainerSubTabs($a_include_view=true)
Add standar container subtabs for view, manage, oderdering and text/media editor link.
static removeObjectsFromSystem($a_ref_ids, $a_from_recovery_folder=false)
remove objects from trash bin and all entries therefore every object needs a specific deleteObject() ...