5require_once
"./Services/Container/classes/class.ilContainerGUI.php";
41 public function __construct($a_data, $a_id, $a_call_by_reference =
true, $a_prepare_output =
true)
45 $this->rbacsystem =
$DIC->rbac()->system();
46 $this->nav_history =
$DIC[
"ilNavigationHistory"];
47 $this->access =
$DIC->access();
48 $this->ctrl =
$DIC->ctrl();
49 $this->tabs =
$DIC->tabs();
50 $this->
help = $DIC[
"ilHelp"];
51 $this->lng =
$DIC->language();
52 $this->
user = $DIC->user();
53 $this->tree =
$DIC->repositoryTree();
54 $this->
error = $DIC[
"ilErr"];
56 $this->tpl =
$DIC[
"tpl"];
57 $this->toolbar =
$DIC->toolbar();
58 $this->rbacreview =
$DIC->rbac()->review();
59 $this->rbacadmin =
$DIC->rbac()->admin();
65 $GLOBALS[
'lng']->loadLanguageModule(
'cat');
66 $GLOBALS[
'lng']->loadLanguageModule(
'obj');
71 if (is_object($this->
object)) {
72 include_once(
"./Services/Container/classes/class.ilContainer.php");
73 include_once(
"./Services/Object/classes/class.ilObjectServiceSettingsGUI.php");
75 $this->object->getId(),
90 $next_class = $this->ctrl->getNextClass($this);
91 $cmd = $this->ctrl->getCmd();
93 switch ($next_class) {
95 include_once(
'./Services/User/classes/class.ilObjUserGUI.php');
97 $this->tabs_gui->setTabActive(
'administrate_users');
98 if (!
$_GET[
'obj_id']) {
100 $this->gui_obj->setCreationMode($this->creation_mode);
101 $ret = &$this->ctrl->forwardCommand($this->gui_obj);
104 $this->gui_obj->setCreationMode($this->creation_mode);
105 $ret = &$this->ctrl->forwardCommand($this->gui_obj);
108 $ilTabs->clearTargets();
109 $ilTabs->setBackTarget($this->lng->txt(
'backto_lua'), $this->ctrl->getLinkTarget($this,
'listUsers'));
111 $ilHelp->setScreenIdComponent(
"cat");
112 $ilHelp->setScreenId(
"administrate_user");
113 $ilHelp->setSubScreenId(
$ilCtrl->getCmd());
116 case "ilobjuserfoldergui":
117 include_once(
'./Services/User/classes/class.ilObjUserFolderGUI.php');
120 $this->gui_obj->setUserOwnerId((
int)
$_GET[
'ref_id']);
121 $this->gui_obj->setCreationMode($this->creation_mode);
122 $ret = &$this->ctrl->forwardCommand($this->gui_obj);
124 $ilTabs->clearTargets();
125 $ilTabs->setBackTarget($this->lng->txt(
'backto_lua'), $this->ctrl->getLinkTarget($this,
'listUsers'));
127 $ilHelp->setScreenIdComponent(
"cat");
128 $ilHelp->setScreenId(
"administrate_user");
129 $ilHelp->setSubScreenId(
$ilCtrl->getCmd());
135 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
136 $this->tpl->setVariable(
137 "LOCATION_CONTENT_STYLESHEET",
143 case 'ilpermissiongui':
145 $this->tabs_gui->setTabActive(
'perm_settings');
146 include_once(
"Services/AccessControl/classes/class.ilPermissionGUI.php");
148 $ret = &$this->ctrl->forwardCommand($perm_gui);
151 case 'ilinfoscreengui':
152 if ($this->info_screen_enabled) {
158 case 'ilcontainerlinklistgui':
159 include_once(
"Services/Container/classes/class.ilContainerLinkListGUI.php");
161 $ret = &$this->ctrl->forwardCommand($link_list_gui);
165 case "ilcontainerpagegui":
169 $this->tpl->setContent(
$ret);
173 case 'ilobjectcopygui':
176 include_once
'./Services/Object/classes/class.ilObjectCopyGUI.php';
179 $this->ctrl->forwardCommand($cp);
182 case "ilobjstylesheetgui":
186 case 'ilusertablegui':
187 include_once
'./Services/User/classes/class.ilUserTableGUI.php';
189 $u_table->initFilter();
190 $this->ctrl->setReturn($this,
'listUsers');
191 $this->ctrl->forwardCommand($u_table);
194 case "ilcommonactiondispatchergui":
196 include_once(
"Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
198 $this->ctrl->forwardCommand($gui);
201 case 'ildidactictemplategui':
202 $this->ctrl->setReturn($this,
'edit');
203 include_once
'./Services/DidacticTemplate/classes/class.ilDidacticTemplateGUI.php';
205 $this->ctrl->forwardCommand($did);
210 $this->tabs_gui->setTabActive(
'export');
211 include_once
'./Services/Export/classes/class.ilExportGUI.php';
213 $exp->addFormat(
'xml');
214 $this->ctrl->forwardCommand($exp);
217 case 'ilobjecttranslationgui':
222 include_once(
"./Services/Object/classes/class.ilObjectTranslationGUI.php");
224 $this->ctrl->forwardCommand($transgui);
227 case 'ilobjtaxonomygui':
231 include_once(
"./Services/Taxonomy/classes/class.ilObjTaxonomyGUI.php");
233 $tax->setAssignedObject($this->object->getId());
234 $tax->setMultiple(
true);
235 $tax->setListInfo($this->lng->txt(
"cntr_tax_list_info"));
236 $this->ctrl->forwardCommand($tax);
239 case 'ilobjectmetadatagui':
242 $this->tabs_gui->activateTab(
'meta_data');
246 case "ilcontainernewssettingsgui":
248 $this->tabs_gui->setTabActive(
'settings');
250 $this->tabs_gui->activateSubTab(
'obj_news_settings');
252 $news_set_gui->setHideByDate(
true);
253 $this->ctrl->forwardCommand($news_set_gui);
256 case 'ilcontainerfilteradmingui':
259 $this->
setEditTabs($active_tab =
"settings_filter");
260 $this->tabs_gui->activateTab(
'settings');
265 if ($cmd ==
"infoScreen") {
273 $ilAccess->checkAccess(
"read",
"",
$_GET[
"ref_id"])) {
274 include_once(
"./Services/Link/classes/class.ilLink.php");
275 $ilNavigationHistory->addItem(
283 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
284 if (is_object($this->
object)) {
285 $this->tpl->setVariable(
286 "LOCATION_CONTENT_STYLESHEET",
295 $this->tabs_gui->activateTab(
"view_content");
313 parent::addHeaderAction();
325 include_once
'Services/Object/classes/class.ilObjectMetaDataGUI.php';
327 include_once
"Services/Object/classes/class.ilObjectServiceSettingsGUI.php";
329 $this->object->getId(),
333 $md_gui->enableTaxonomyDefinition(
true);
334 $tax = $md_gui->getTaxonomyObjGUI();
335 $tax->setMultiple(
true);
336 $tax->setListInfo($this->lng->txt(
"cntr_tax_list_info"));
338 if (
sizeof($taxonomies)) {
339 $md_gui->setTaxonomySettings(
function ($form) {
342 $form->addItem($block);
346 foreach ($tax as $tax_id => $tax_item) {
353 if ($tax_item[
"source"] != $this->object->getRefId()) {
355 $loc->setTextOnly(
true);
356 $loc->addRepositoryItems($tax_item[
"source"]);
357 $option->setInfo($loc->getHTML());
360 $block->addOption($option);
362 if (in_array($tax_id, $current)) {
367 $block->setValue($value);
368 },
function ($form) {
370 if (
sizeof($taxonomies)) {
371 $sblock = $form->getInput(
"sblock");
376 $this->object->getId(),
381 if (is_array($sblock)) {
382 foreach ($sblock as $tax_id) {
384 $this->object->getId(),
408 if ($this->ctrl->getCmd() ==
"editPageContent") {
411 #$this->ctrl->setParameter($this,"ref_id",$this->ref_id);
413 $ilHelp->setScreenIdComponent(
"cat");
415 if (
$rbacsystem->checkAccess(
'read', $this->ref_id)) {
416 $force_active = (
$_GET[
"cmd"] ==
"" ||
$_GET[
"cmd"] ==
"render")
419 $this->tabs_gui->addTab(
421 $lng->txt(
"content"),
422 $this->ctrl->getLinkTarget($this,
"")
426 if ($this->info_screen_enabled) {
427 $force_active = ($this->ctrl->getNextClass() ==
"ilinfoscreengui"
428 || strtolower(
$_GET[
"cmdClass"]) ==
"ilnotegui")
431 $this->tabs_gui->addTarget(
433 $this->ctrl->getLinkTargetByClass(
434 array(
"ilobjcategorygui",
"ilinfoscreengui"),
437 array(
"showSummary",
"",
"infoScreen"),
446 if (
$rbacsystem->checkAccess(
'write', $this->ref_id)) {
447 $force_active = (
$_GET[
"cmd"] ==
"edit")
450 $this->tabs_gui->addTarget(
452 $this->ctrl->getLinkTarget($this,
"edit"),
462 include_once
"Services/Object/classes/class.ilObjectMetaDataGUI.php";
465 $this->object->getId(),
469 $mdgui->enableTaxonomyDefinition(
true);
471 $mdtab = $mdgui->getTab();
473 $this->tabs_gui->addTab(
475 $this->lng->txt(
"meta_data"),
481 include_once
'./Services/User/classes/class.ilUserAccountSettings.php';
484 $rbacsystem->checkAccess(
'cat_administrate_users', $this->ref_id)) {
485 $this->tabs_gui->addTarget(
486 "administrate_users",
487 $this->ctrl->getLinkTarget($this,
"listUsers"),
493 if ($ilAccess->checkAccess(
'write',
'', $this->object->getRefId())) {
494 $this->tabs_gui->addTarget(
496 $this->ctrl->getLinkTargetByClass(
'ilexportgui',
''),
513 $ilTabs->activateTab(
"view_content");
514 $ret = parent::renderObject();
520 if (strtolower(
$_GET[
"baseClass"]) ==
"iladministrationgui") {
521 parent::viewObject();
529 $forms = parent::initCreationForms($a_new_type);
539 include_once(
'Services/Container/classes/class.ilContainerSortingSettings.php');
545 $parent_ref_id =
$tree->getParentId($a_new_object->
getRefId());
547 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
556 ilUtil::sendSuccess($this->lng->txt(
"cat_added"),
true);
557 $this->ctrl->setParameter($this,
"ref_id", $a_new_object->
getRefId());
568 $this->ctrl->setCmd(
"showSummary");
569 $this->ctrl->setCmdClass(
"ilinfoscreengui");
582 if (!$ilAccess->checkAccess(
"visible",
"", $this->ref_id)) {
583 $ilErr->raiseError($this->lng->txt(
"msg_no_perm_read"),
$ilErr->MESSAGE);
586 if (!$this->info_screen_enabled) {
591 $this->tabs_gui->setTabActive(
'info_short');
593 include_once(
"./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
596 $info->enablePrivateNotes();
598 if ($ilAccess->checkAccess(
"read",
"",
$_GET[
"ref_id"])) {
603 $info->enableNewsEditing(
false);
604 if ($ilAccess->checkAccess(
"write",
"",
$_GET[
"ref_id"])) {
606 $enable_internal_rss = $news_set->get(
"enable_rss_for_internal");
608 if ($enable_internal_rss) {
609 $info->setBlockProperty(
"news",
"settings",
true);
610 $info->setBlockProperty(
"news",
"public_notifications_option",
true);
614 include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php');
616 $record_gui->setInfoObject($info);
617 $record_gui->parse();
621 $info->addMetaDataSections($this->object->getId(), 0, $this->object->getType());
624 if (
$ilCtrl->getNextClass() ==
"ilinfoscreengui") {
625 $ilCtrl->forwardCommand($info);
627 return $ilCtrl->getHTML($info);
640 $this->tabs_gui->activateTab(
'settings');
641 $this->tabs_gui->setSubTabActive(
'edit_cat_settings');
644 $this->tpl->setContent($this->form->getHTML());
660 $this->form->checkInput();
662 if ($this->record_gui->importEditFormPostValues()) {
663 $this->record_gui->writeEditForm();
665 ilUtil::sendSuccess($this->lng->txt(
"settings_saved"),
true);
666 $this->ctrl->redirect($this,
"editInfo");
680 if (is_object($this->form)) {
684 include_once(
'Services/Form/classes/class.ilPropertyFormGUI.php');
686 $this->form->setFormAction($this->ctrl->getFormAction($this));
687 $this->form->setTitle($this->lng->txt(
'ext_cat_settings'));
688 $this->form->addCommandButton(
'updateInfo', $this->lng->txt(
'save'));
689 $this->form->addCommandButton(
'editInfo', $this->lng->txt(
'cancel'));
691 include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php');
693 $this->record_gui->setPropertyForm($this->form);
694 $this->record_gui->parse();
704 $this->tabs_gui->addSubTab(
706 $this->lng->txt(
"settings"),
707 $this->ctrl->getLinkTarget($this,
"edit")
710 $this->tabs_gui->addSubTab(
712 $this->lng->txt(
"obj_multilinguality"),
713 $this->ctrl->getLinkTargetByClass(
"ilobjecttranslationgui",
"")
718 $this->object->getId(),
724 $this->tabs_gui->addSubTab(
726 $this->lng->txt(
"cont_news_settings"),
727 $this->ctrl->getLinkTargetByClass(
'ilcontainernewssettingsgui')
731 $this->tabs_gui->addSubTab(
733 $this->lng->txt(
"cont_filter"),
734 $this->ctrl->getLinkTargetByClass(
"ilcontainerfilteradmingui",
"")
737 $this->tabs_gui->activateTab(
"settings");
738 $this->tabs_gui->activateSubTab($active_tab);
745 $this->lng->loadLanguageModule($this->object->getType());
748 include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
750 $form->setFormAction($this->ctrl->getFormAction($this));
751 $form->setTitle($this->lng->txt($this->object->getType() .
"_edit"));
754 $this->initFormTitleDescription($form);
761 $pres->setTitle($this->lng->txt(
'obj_presentation'));
762 $form->addItem($pres);
765 $form = $obj_service->commonSettings()->legacyForm($form, $this->
object)->addTitleIconVisibility();
768 $form = $obj_service->commonSettings()->legacyForm($form, $this->
object)->addTopActionsVisibility();
771 $form = $obj_service->commonSettings()->legacyForm($form, $this->
object)->addIcon();
774 $form = $obj_service->commonSettings()->legacyForm($form, $this->
object)->addTileImage();
790 $bl =
new ilNumberInputGUI($this->lng->txt(
"cont_block_limit"),
"block_limit");
791 $bl->setInfo($this->lng->txt(
"cont_block_limit_info"));
798 include_once
'Modules/Category/classes/class.ilECSCategorySettings.php';
800 $ecs->addSettingsToForm($form,
'cat');
804 $sh->setTitle($this->lng->txt(
'obj_features'));
807 include_once
'./Services/Object/classes/class.ilObjectServiceSettingsGUI.php';
809 $this->object->getId(),
821 $form->addCommandButton(
"update", $this->lng->txt(
"save"));
843 $ilErr->raiseError($this->lng->txt(
"msg_no_perm_write"),
$ilErr->MESSAGE);
846 if ($form->checkInput()) {
847 $title = $form->getInput(
"title");
848 $desc = $form->getInput(
"desc");
850 $this->
object->setTitle($title);
851 $this->
object->setDescription($desc);
852 $this->
object->update();
857 $obj_service->commonSettings()->legacyForm($form, $this->
object)->saveTitleIconVisibility();
860 $obj_service->commonSettings()->legacyForm($form, $this->
object)->saveTopActionsVisibility();
863 $obj_service->commonSettings()->legacyForm($form, $this->
object)->saveIcon();
866 $obj_service->commonSettings()->legacyForm($form, $this->
object)->saveTileImage();
872 require_once(
'Services/Tracking/classes/class.ilChangeEvent.php');
878 include_once
'./Services/Object/classes/class.ilObjectServiceSettingsGUI.php';
880 $this->object->getId(),
893 if ((
int) $form->getInput(
"block_limit") > 0) {
899 include_once
'Modules/Category/classes/class.ilECSCategorySettings.php';
901 if ($ecs->handleSettingsUpdate()) {
908 $form->setValuesByPost();
909 $this->tpl->setContent($form->getHTML());
932 $a_tpl->addBlockfile(
935 "tpl.cat_import_form.html",
939 $a_tpl->setVariable(
"FORMACTION",
$ilCtrl->getFormActionByClass(
'ilObjCategoryGUI'));
941 $a_tpl->setVariable(
"TXT_IMPORT_CATEGORIES",
$lng->txt(
"import_categories"));
942 $a_tpl->setVariable(
"TXT_HIERARCHY_OPTION",
$lng->txt(
"import_cat_localrol"));
943 $a_tpl->setVariable(
"TXT_IMPORT_FILE",
$lng->txt(
"import_file"));
944 $a_tpl->setVariable(
"TXT_IMPORT_TABLE",
$lng->txt(
"import_cat_table"));
946 $a_tpl->setVariable(
"BTN_IMPORT",
$lng->txt(
"import"));
947 $a_tpl->setVariable(
"BTN_CANCEL",
$lng->txt(
"cancel"));
950 $parent_role_ids =
$rbacreview->getParentRoleIds($a_ref_id,
true);
953 ksort($parent_role_ids);
955 foreach ($parent_role_ids as $key => $par) {
956 if ($par[
"obj_id"] != SYSTEM_ROLE_ID) {
959 $output[
"adopt"][$key][
"check_adopt"] = $check;
960 $output[
"adopt"][$key][
"role_id"] = $par[
"obj_id"];
961 $output[
"adopt"][$key][
"type"] = ($par[
"type"] ==
'role' ?
'Role' :
'Template');
962 $output[
"adopt"][$key][
"role_name"] = $par[
"title"];
969 foreach ($output[
"adopt"] as $key => $value) {
970 $a_tpl->setCurrentBlock(
"ADOPT_PERM_ROW");
971 $a_tpl->setVariable(
"CSS_ROW_ADOPT", $value[
"css_row_adopt"]);
972 $a_tpl->setVariable(
"CHECK_ADOPT", $value[
"check_adopt"]);
973 $a_tpl->setVariable(
"LABEL_ID", $value[
"role_id"]);
974 $a_tpl->setVariable(
"TYPE", $value[
"type"]);
975 $a_tpl->setVariable(
"ROLE_NAME", $value[
"role_name"]);
976 $a_tpl->parseCurrentBlock();
988 $this->ctrl->redirect($this);
1031 require_once(
"./Modules/Category/classes/class.ilCategoryImportParser.php");
1036 if (!@is_dir($import_dir)) {
1042 $file_name = $_FILES[
"importFile"][
"name"];
1045 if (!strcmp($file_name,
"")) {
1047 $ilCtrl->redirectByClass(
'ilObjCategoryGUI');
1050 $parts = pathinfo($file_name);
1051 $full_path = $import_dir .
"/" . $file_name;
1057 $subdir = basename($parts[
"basename"],
"." . $parts[
"extension"]);
1058 $xml_file = $import_dir .
"/" . $subdir .
"/" . $subdir .
".xml";
1062 $importParser->startParsing();
1064 ilUtil::sendSuccess(
$lng->txt(
"categories_imported"),
true);
1065 $ilCtrl->redirectByClass(
'ilObjCategoryGUI');
1074 include_once(
"./Services/User/classes/class.ilUserTableGUI.php");
1076 $utab->resetOffset();
1077 $utab->resetFilter();
1091 include_once(
"./Services/User/classes/class.ilUserTableGUI.php");
1093 $utab->resetOffset();
1094 $utab->writeFilterToSession();
1105 include_once
'./Services/User/classes/class.ilLocalUser.php';
1106 include_once
'./Services/User/classes/class.ilObjUserGUI.php';
1111 if (!
$rbacsystem->checkAccess(
"cat_administrate_users", $this->object->getRefId())) {
1112 $ilErr->raiseError($this->lng->txt(
"msg_no_perm_admin_users"),
$ilErr->MESSAGE);
1114 $this->tabs_gui->setTabActive(
'administrate_users');
1118 $this->tpl->addBlockfile(
1121 'tpl.cat_admin_users.html',
1126 $ilToolbar->addButton(
1127 $this->lng->txt(
'add_user'),
1128 $this->ctrl->getLinkTargetByClass(
'ilobjusergui',
'create')
1131 $ilToolbar->addButton(
1132 $this->lng->txt(
'import_users'),
1133 $this->ctrl->getLinkTargetByClass(
'ilobjuserfoldergui',
'importUserForm')
1140 $this->tpl->setCurrentBlock(
"confirm_delete");
1141 $this->tpl->setVariable(
"CONFIRM_FORMACTION", $this->ctrl->getFormAction($this));
1142 $this->tpl->setVariable(
"TXT_CANCEL", $this->lng->txt(
'cancel'));
1143 $this->tpl->setVariable(
"CONFIRM_CMD",
'performDeleteUsers');
1144 $this->tpl->setVariable(
"TXT_CONFIRM", $this->lng->txt(
'delete'));
1145 $this->tpl->parseCurrentBlock();
1148 $this->lng->loadLanguageModule(
'user');
1150 include_once(
"./Services/User/classes/class.ilUserTableGUI.php");
1152 $this->tpl->setVariable(
'USERS_TABLE', $utab->getHTML());
1162 include_once
'./Services/User/classes/class.ilUserAutoComplete.php';
1164 $auto->setSearchFields(array(
'login',
'firstname',
'lastname',
'email'));
1165 $auto->enableFieldSearchableCheck(
true);
1166 $auto->isMoreLinkAvailable(
true);
1168 if (($_REQUEST[
'fetchall'])) {
1172 echo $auto->getList($_REQUEST[
'term']);
1179 include_once
'./Services/User/classes/class.ilLocalUser.php';
1182 foreach (
$_POST[
'user_ids'] as $user_id) {
1184 die(
'user id not valid');
1191 ilUtil::sendSuccess($this->lng->txt(
'deleted_users'));
1200 if (!count(
$_POST[
'id'])) {
1207 include_once
'./Services/Utilities/classes/class.ilConfirmationGUI.php';
1209 $confirm->setFormAction($this->ctrl->getFormAction($this));
1210 $confirm->setHeaderText($this->lng->txt(
'sure_delete_selected_users'));
1211 $confirm->setConfirm($this->lng->txt(
'delete'),
'performDeleteUsers');
1212 $confirm->setCancel($this->lng->txt(
'cancel'),
'listUsers');
1220 $name[
'lastname'] .
', ' .
$name[
'firstname'] .
' [' .
$name[
'login'] .
']'
1223 $this->tpl->setContent($confirm->getHTML());
1233 include_once
'./Services/User/classes/class.ilLocalUser.php';
1235 if (!isset(
$_GET[
'obj_id'])) {
1242 $ilTabs->clearTargets();
1243 $ilTabs->setBackTarget($this->lng->txt(
'backto_lua'), $this->ctrl->getLinkTarget($this,
'listUsers'));
1245 $ilHelp->setScreenIdComponent(
"cat");
1246 $ilHelp->setScreenId(
"administrate_user");
1247 $ilHelp->setSubScreenId(
"assign_roles");
1252 if (!count($roles)) {
1253 #ilUtil::sendInfo($this->lng->txt('no_roles_user_can_be_assigned_to'));
1254 #$this->listUsersObject();
1262 $f_result = array();
1264 foreach ($roles as $role) {
1269 in_array($role[
'obj_id'], $ass_roles) ? 1 : 0,
1274 $f_result[$counter][
'title'] = $role_obj->getTitle() ? $role_obj->getTitle() :
"";
1275 $f_result[$counter][
'desc'] = $role_obj->getDescription() ? $role_obj->getDescription() :
"";
1276 $f_result[$counter][
'type'] = $role[
'role_type'] ==
'global' ?
1277 $this->lng->txt(
'global') :
1278 $this->lng->txt(
'local');
1284 include_once(
'./Modules/Category/classes/class.ilCategoryAssignRoleTableGUI.php');
1287 $title = $this->lng->txt(
'role_assignment') .
' (' . $tmp_obj->getFullname() .
')';
1288 $table->setTitle($title,
"icon_role.svg", $this->lng->txt(
"role_assignment"));
1289 $table->setData($f_result);
1290 $this->tpl->setContent($table->getHTML());
1299 include_once
'./Services/User/classes/class.ilLocalUser.php';
1317 $new_role_ids =
$_POST[
'role_ids'] ?
$_POST[
'role_ids'] : array();
1318 $assigned_roles =
$rbacreview->assignedRoles((
int) $_REQUEST[
'obj_id']);
1319 foreach ($roles as $role) {
1320 if (in_array($role[
'obj_id'], $new_role_ids) and !in_array($role[
'obj_id'], $assigned_roles)) {
1321 $rbacadmin->assignUser($role[
'obj_id'], (
int) $_REQUEST[
'obj_id']);
1323 if (in_array($role[
'obj_id'], $assigned_roles) and !in_array($role[
'obj_id'], $new_role_ids)) {
1324 $rbacadmin->deassignUser($role[
'obj_id'], (
int) $_REQUEST[
'obj_id']);
1327 ilUtil::sendSuccess($this->lng->txt(
'role_assignment_updated'));
1343 $global_roles =
$rbacreview->getGlobalRolesArray();
1344 } elseif ($tmp_obj->getTimeLimitOwner() == $this->object->getRefId()) {
1345 $global_roles =
$rbacreview->getGlobalAssignableRoles();
1347 $global_roles = array();
1349 return $roles = array_merge(
1351 $rbacreview->getAssignableChildRoles($this->object->getRefId())
1364 if ($tmp_obj->getTimeLimitOwner() != $this->object->getRefId() and
1370 $new_assigned = $new_assigned ? $new_assigned : array();
1379 $global_assignable = array();
1380 foreach ($ga as $role) {
1381 $global_assignable[] = $role[
'obj_id'];
1384 $new_visible_assigned_roles = array_intersect($new_assigned, $global_assignable);
1385 $all_assigned_roles = array_intersect($assigned,
$rbacreview->getGlobalRoles());
1386 $main_assigned_roles = array_diff($all_assigned_roles, $global_assignable);
1388 if (!count($new_visible_assigned_roles) and !count($main_assigned_roles)) {
1398 $ilAccess =
$DIC->access();
1402 if ($ilAccess->checkAccess(
"read",
"", $a_target)) {
1404 } elseif ($ilAccess->checkAccess(
"visible",
"", $a_target)) {
1406 } elseif ($ilAccess->checkAccess(
"read",
"", ROOT_FOLDER_ID)) {
1408 $lng->txt(
"msg_no_perm_read_item"),
1423 $this->tabs_gui->setTabActive(
"obj_tool_setting_taxonomies");
1424 $this->tabs_gui->addSubTab(
1426 $this->lng->txt(
"cntr_taxonomy_sideblock_settings"),
1427 $this->ctrl->getLinkTarget($this,
"editTaxonomySettings")
1429 $this->tabs_gui->addSubTab(
1431 $this->lng->txt(
"cntr_taxonomy_definitions"),
1432 $this->ctrl->getLinkTargetByClass(
"ilobjtaxonomygui",
"")
1434 $this->tabs_gui->activateSubTab($a_active);
1441 include_once
"Services/Object/classes/class.ilObjectServiceSettingsGUI.php";
1442 include_once
"Services/Taxonomy/classes/class.ilObjTaxonomy.php";
1447 foreach (
$tree->getPathFull($this->object->getRefId()) as $node) {
1452 if (
sizeof($node_taxes)) {
1453 foreach ($node_taxes as $node_tax) {
1454 $res[$node_tax[
"tax_id"]] = array(
1455 "title" => $node_tax[
"title"]
1456 ,
"source" => $node[
"child"]
1475 if (substr($keyword, 0, strlen($prefix)) == $prefix && (
bool) $value) {
1476 $res[] = substr($keyword, strlen($prefix));
if(!defined('PATH_SEPARATOR')) $GLOBALS['_PEAR_default_error_mode']
An exception for terminatinating execution or to throw for unit testing.
error($a_errmsg)
set error message @access public
TableGUI class for role assignments.
static _catchupWriteEvents($obj_id, $usr_id, $timestamp=null)
Catches up with all write events which occured before the specified timestamp.
static _recordWriteEvent($obj_id, $usr_id, $action, $parent_obj_id=null)
Records a write event.
This class represents an option in a checkbox group.
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
Confirmation screen class.
Filter administration for containers.
afterUpdate()
Post (successful) object update hook.
& forwardToPageObject()
forward command to page object
initSortingForm(ilPropertyFormGUI $form, array $a_sorting_settings)
Append sorting settings to property form.
prepareOutput($a_show_subobjects=true)
prepare output
saveListPresentation(ilPropertyFormGUI $form)
Save list presentation setting.
forwardToStyleSheet()
Forward to style object.
initListPresentationForm(ilPropertyFormGUI $form)
Add list presentation settings to form.
saveSortingSettings(ilPropertyFormGUI $form)
Save sorting settings.
Class ilContainerLinkListGUI.
News settings for containers.
static _lookupContainerSetting($a_id, $a_keyword, $a_default_value=null)
Lookup a container setting.
static _deleteContainerSettings($a_id, $a_keyword=null, $a_keyword_like=false)
static _getContainerSettings($a_id)
static _writeContainerSetting($a_id, $a_keyword, $a_value)
GUI class for didactic template settings inside repository objects.
Class ilECSCategorySettings.
Export User Interface Class.
static _getLink($a_ref_id, $a_type='', $a_params=array(), $append="")
static _getAllUserIds($a_filter=0)
initExtendedSettings()
build property form for extended category settings
initEditForm()
Init object edit form.
updateObject()
updates object entry in object_data
importCategoriesWithRolObject()
import categories with local rol
importCategoriesFormObject()
display form for category import
addUserAutoCompleteObject()
Show auto complete results.
getObjectMetadataGUI()
Get object metadata gui.
getEditFormValues()
Get values for edit form.
initTaxSubTabs($a_active="tax_list")
static _importCategories($a_ref_id, $withrol_tmp)
import categories (static, also called by RootFolderGUI)
editInfoObject()
Edit extended category settings.
infoScreenObject()
this one is called from the info button in the repository not very nice to set cmdClass/Cmd manually,...
infoScreen()
show information screen
__construct($a_data, $a_id, $a_call_by_reference=true, $a_prepare_output=true)
Constructor @access public.
listUsersObject($show_delete=false)
applyFilterObject()
Apply filter.
initCreationForms($a_new_type)
Init creation froms.
viewObject()
viewObject container presentation for "administration -> repository, trash, permissions"
executeCommand()
execute command note: this method is overwritten in all container objects
importCategoriesObject()
import categories
static _getImportDir()
get user import directory name
__checkGlobalRoles($new_assigned)
static _importCategoriesForm($a_ref_id, &$a_tpl)
display form for category import (static, also called by RootFolderGUI)
afterSave(ilObject $a_new_object)
Post (successful) object creation hook.
addHeaderAction()
@inheritDoc
setEditTabs($active_tab="settings_misc")
renderObject()
Render category.
const CONTAINER_SETTING_TAXBLOCK
performDeleteUsersObject()
resetFilterObject()
Reset filter (note: this function existed before data table filter has been introduced.
updateInfoObject()
Update info (extended meta data)
importCancelledObject()
import cancelled
static _lookupStandard($a_id)
Lookup standard flag.
static lookupObjectStyle($a_obj_id)
Lookup object style.
static getContentStylePath($a_style_id, $add_random=true, $add_token=true)
get content style path
static writeStyleUsage($a_obj_id, $a_style_id)
Write style usage.
static getUsageOfObject($a_obj_id, $a_include_titles=false)
Get usage of object.
Class ilObjUserFolderGUI.
static _lookupName($a_user_id)
lookup user name
GUI class for the workflow of copying objects.
static getInstanceByObjId($a_obj_id, $stop_on_error=true)
get an instance of an Ilias object by object id
checkPermission($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission and redirect on error.
static _gotoRepositoryNode($a_ref_id, $a_cmd="frameset")
Goto repository root.
static _gotoRepositoryRoot($a_raise_error=false)
Goto repository root.
getCreationMode()
get creation mode
checkPermissionBool($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission.
initDidacticTemplate(ilPropertyFormGUI $form)
Show didactic template types.
getObjectService()
Get object service.
redirectToRefId($a_ref_id, $a_cmd="")
redirects to (repository) view per ref id usually to a container and usually used at the end of a sav...
static initServiceSettingsForm($a_obj_id, ilPropertyFormGUI $form, $services)
Init service settings form.
static updateServiceSettingsForm($a_obj_id, ilPropertyFormGUI $form, $services)
Update service settings.
const INFO_TAB_VISIBILITY
GUI class for object translation handling.
Class ilObject Basic functions for all objects.
static _lookupObjId($a_id)
static _lookupTitle($a_id)
lookup object title
static _lookupDescription($a_id)
lookup object description
getRefId()
get reference id @access public
getId()
get object id @access public
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
static initPreview()
Initializes the preview and loads the needed javascripts and styles.
static getInstance()
Singelton get instance.
Auto completion class for user lists.
TableGUI class for user administration.
static getDataDir()
get data directory (outside webspace)
static moveUploadedFile($a_file, $a_name, $a_target, $a_raise_errors=true, $a_mode="move_uploaded")
move uploaded file
static formCheckbox($checked, $varname, $value, $disabled=false)
??? @access public
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
static switchColor($a_num, $a_css1, $a_css2)
switches style sheets for each even $a_num (used for changing colors of different result rows)
static unzip($a_file, $overwrite=false, $a_flat=false)
unzip file
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
static createDirectory($a_dir, $a_mod=0755)
create directory
__construct(Container $dic, ilPlugin $plugin)
@inheritDoc
foreach($_POST as $key=> $value) $res