3 require_once(
"./Services/Container/classes/class.ilContainerGUI.php");
4 require_once(
"./Services/AccessControl/classes/class.ilObjRole.php");
5 require_once(
"./Services/Form/classes/class.ilPropertyFormGUI.php");
6 require_once(
"./Services/AccessControl/classes/class.ilPermissionGUI.php");
7 require_once(
"./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
8 require_once(
"./Services/User/classes/class.ilUserAccountSettings.php");
9 require_once(
"./Services/Tracking/classes/class.ilLearningProgressGUI.php");
10 require_once(
"./Services/User/classes/class.ilObjUserFolderGUI.php");
11 require_once(
"./Services/Tree/classes/class.ilTree.php");
12 require_once(
"./Modules/OrgUnit/classes/Staff/class.ilOrgUnitStaffGUI.php");
13 require_once(
"./Modules/OrgUnit/classes/LocalUser/class.ilLocalUserGUI.php");
14 require_once(
"./Modules/OrgUnit/classes/Translation/class.ilTranslationGUI.php");
15 require_once(
"./Modules/OrgUnit/classes/ExtId/class.ilExtIdGUI.php");
16 require_once(
"./Modules/OrgUnit/classes/SimpleImport/class.ilOrgUnitSimpleImportGUI.php");
17 require_once(
"./Modules/OrgUnit/classes/SimpleUserImport/class.ilOrgUnitSimpleUserImportGUI.php");
18 require_once(
"./Modules/OrgUnit/classes/class.ilOrgUnitImporter.php");
19 require_once(
"./Services/Object/classes/class.ilObjectAddNewItemGUI.php");
20 require_once(
"class.ilOrgUnitExplorerGUI.php");
21 require_once(
"class.ilOrgUnitExportGUI.php");
22 require_once(
"class.ilObjOrgUnitAccess.php");
23 require_once(
"class.ilObjOrgUnitTree.php");
24 require_once(dirname(__FILE__) .
'/Types/class.ilOrgUnitTypeGUI.php');
25 require_once(dirname(__FILE__) .
'/Settings/class.ilObjOrgUnitSettingsFormGUI.php');
26 require_once(
'./Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php');
27 require_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);
149 $ilObjUserGUI =
new ilObjUserGUI(
"", (
int)$_GET[
'ref_id'],
true,
false);
150 $ilObjUserGUI->setCreationMode(
true);
151 $this->ctrl->forwardCommand($ilObjUserGUI);
152 $this->tabs_gui->setBackTarget($this->lng->txt(
"back"), $this->ctrl->getLinkTargetByClass(
"illocalusergui",
'index'));
155 $ilObjUserGUI =
new ilObjUserGUI(
"", $_GET[
'ref_id'],
true,
false);
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'));
163 $ilObjUserGUI =
new ilObjUserGUI(
"", (
int)$_GET[
'obj_id'],
false,
false);
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);
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);
538 $this->tpl->setContent($form->getHTML());
546 if (!$this->ilAccess->checkAccess(
"write",
"", $this->ref_id)) {
548 $this->ctrl->redirect($this);
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']) {
645 $_POST[
'nodes'] = array( $_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 sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
setSubTabsSettings($active_tab_id)
__setTableGUIBasicData(&$tbl, &$a_result_set, $a_from, $a_form)
setPropertyForm($form)
set property form object
static _checkAccessStaff($ref_id)
Class ilObjOrgUnit GUI class.
initCreationForms($a_new_type)
initCreationForms
Class ilOrgUnitSimpleImportGUI.
initAdvancedSettingsForm()
Initialize the form for editing advanced meta data.
Class ilOrgUnitExportGUI.
setContentSubTabs()
Set content sub tabs.
initImportForm($a_new_type)
Init object import form.
setInfoObject($info)
get info sections
const MODE_ADMINISTRATION
getTabs(ilTabsGUI $tabs_gui=NULL)
updateAdvancedSettings()
Update Advanced Metadata.
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.
getAdminTabs(ilTabsGUI $tabs_gui)
Class ilObjUserFolderGUI.
Class ilOrgUnitSimpleUserImportGUI.
Class ilOrgUnitExplorerGUI.
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
showAdministrationPanel(&$tpl)
show administration panel
static _checkAccessToUserLearningProgress($ref_id, $usr_id)
Class ilObjUserTrackingGUI.
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
addStandardContainerSubTabs($a_include_view=true)
Add standar container subtabs for view, manage, oderdering and text/media editor link.