5 require_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");
373 $prefix = self::CONTAINER_SETTING_TAXBLOCK;
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');
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');
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());
928 $lng = $DIC->language();
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);
1028 $lng = $DIC->language();
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();
1400 $lng = $DIC->language();
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"]
1472 $prefix = self::CONTAINER_SETTING_TAXBLOCK;
1475 if (substr($keyword, 0, strlen($prefix)) == $prefix && (
bool) $value) {
1476 $res[] = substr($keyword, strlen($prefix));
static getContentStylePath($a_style_id, $add_random=true, $add_token=true)
get content style path
static _lookupName($a_user_id)
lookup user name
importCategoriesObject()
import categories
Class ilContainerLinkListGUI.
importCancelledObject()
import cancelled
This class represents an option in a checkbox group.
importCategoriesWithRolObject()
import categories with local rol
infoScreen()
show information screen
saveSortingSettings(ilPropertyFormGUI $form)
Save sorting settings.
__checkGlobalRoles($new_assigned)
static getUsageOfObject($a_obj_id, $a_include_titles=false)
Get usage of object.
GUI class for the workflow of copying objects.
getObjectMetadataGUI()
Get object metadata gui.
setPropertyForm($form)
set property form object
initCreationForms($a_new_type)
static _recordWriteEvent($obj_id, $usr_id, $action, $parent_obj_id=null)
Records a write event.
__construct($a_data, $a_id, $a_call_by_reference=true, $a_prepare_output=true)
Constructor public.
static _gotoRepositoryRoot($a_raise_error=false)
Goto repository root.
static unzip($a_file, $overwrite=false, $a_flat=false)
unzip file
const CONTAINER_SETTING_TAXBLOCK
static _importCategoriesForm($a_ref_id, &$a_tpl)
display form for category import (static, also called by RootFolderGUI)
prepareOutput($a_show_subobjects=true)
prepare output
static _lookupTitle($a_id)
lookup object title
initExtendedSettings()
build property form for extended category settings
static lookupObjectStyle($a_obj_id)
Lookup object style.
Auto completion class for user lists.
static _catchupWriteEvents($obj_id, $usr_id, $timestamp=null)
Catches up with all write events which occured before the specified timestamp.
static _lookupStandard($a_id)
Lookup standard flag.
listUsersObject($show_delete=false)
TableGUI class for role assignments.
static writeStyleUsage($a_obj_id, $a_style_id)
Write style usage.
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
importCategoriesFormObject()
display form for category import
Export User Interface Class.
TableGUI class for user administration.
GUI class for didactic template settings inside repository objects.
foreach($_POST as $key=> $value) $res
setInfoObject($info)
get info sections
updateInfoObject()
Update info (extended meta data)
getId()
get object id public
static _deleteContainerSettings($a_id, $a_keyword=null, $a_keyword_like=false)
static _gotoRepositoryNode($a_ref_id, $a_cmd="frameset")
Goto repository root.
News settings for containers.
editInfoObject()
Edit extended category settings.
static _lookupDescription($a_id)
lookup object description
static moveUploadedFile($a_file, $a_name, $a_target, $a_raise_errors=true, $a_mode="move_uploaded")
move uploaded file
applyFilterObject()
Apply filter.
performDeleteUsersObject()
initDidacticTemplate(ilPropertyFormGUI $form)
Show didactic template types.
static _lookupObjId($a_id)
static _getContainerSettings($a_id)
initTaxSubTabs($a_active="tax_list")
static initPreview()
Initializes the preview and loads the needed javascripts and styles.
if(!defined('PATH_SEPARATOR')) $GLOBALS['_PEAR_default_error_mode']
resetFilterObject()
Reset filter (note: this function existed before data table filter has been introduced.
forwardToStyleSheet()
Forward to style object.
& forwardToPageObject()
forward command to page object
static createDirectory($a_dir, $a_mod=0755)
create directory
static _getAllUserIds($a_filter=0)
static updateServiceSettingsForm($a_obj_id, ilPropertyFormGUI $form, $services)
Update service settings.
static getInstanceByObjId($a_obj_id, $stop_on_error=true)
get an instance of an Ilias object by object id
afterSave(ilObject $a_new_object)
saveListPresentation(ilPropertyFormGUI $form)
Save list presentation setting.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
Filter administration for containers.
infoScreenObject()
this one is called from the info button in the repository not very nice to set cmdClass/Cmd manually...
renderObject()
Render category.
setEditTabs($active_tab="settings_misc")
initListPresentationForm(ilPropertyFormGUI $form)
Add list presentation settings to form.
static getDataDir()
get data directory (outside webspace)
initSortingForm(ilPropertyFormGUI $form, array $a_sorting_settings)
Append sorting settings to property form.
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 _getImportDir()
get user import directory name
__construct(Container $dic, ilPlugin $plugin)
static getInstance()
Singelton get instance.
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 initServiceSettingsForm($a_obj_id, ilPropertyFormGUI $form, $services)
Init service settings form.
Class ilObjUserFolderGUI.
static _importCategories($a_ref_id, $withrol_tmp)
import categories (static, also called by RootFolderGUI)
getCreationMode()
get creation mode
const INFO_TAB_VISIBILITY
getRefId()
get reference id public
static _writeContainerSetting($a_id, $a_keyword, $a_value)
checkPermission($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission and redirect on error.
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
Class ilECSCategorySettings.
getObjectService()
Get object service.
updateObject()
updates object entry in object_data
checkPermissionBool($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission.
static _getLink($a_ref_id, $a_type='', $a_params=array(), $append="")
addUserAutoCompleteObject()
Show auto complete results.
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
GUI class for object translation handling.
static _lookupContainerSetting($a_id, $a_keyword, $a_default_value=null)
Lookup a container setting.
static formCheckbox($checked, $varname, $value, $disabled=false)
??? public
Confirmation screen class.