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');
69 parent::__construct($a_data, (
int) $a_id, $a_call_by_reference,
false);
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();
96 switch ($next_class) {
98 include_once(
'./Services/User/classes/class.ilObjUserGUI.php');
100 $this->tabs_gui->setTabActive(
'administrate_users');
101 if (!
$_GET[
'obj_id']) {
103 $this->gui_obj->setCreationMode($this->creation_mode);
104 $ret = &$this->ctrl->forwardCommand($this->gui_obj);
107 $this->gui_obj->setCreationMode($this->creation_mode);
108 $ret = &$this->ctrl->forwardCommand($this->gui_obj);
111 $ilTabs->clearTargets();
112 $ilTabs->setBackTarget($this->lng->txt(
'backto_lua'), $this->ctrl->getLinkTarget($this,
'listUsers'));
114 $ilHelp->setScreenIdComponent(
"cat");
115 $ilHelp->setScreenId(
"administrate_user");
116 $ilHelp->setSubScreenId(
$ilCtrl->getCmd());
119 case "ilobjuserfoldergui":
120 include_once(
'./Services/User/classes/class.ilObjUserFolderGUI.php');
123 $this->gui_obj->setUserOwnerId((
int)
$_GET[
'ref_id']);
124 $this->gui_obj->setCreationMode($this->creation_mode);
125 $ret = &$this->ctrl->forwardCommand($this->gui_obj);
127 $ilTabs->clearTargets();
128 $ilTabs->setBackTarget($this->lng->txt(
'backto_lua'), $this->ctrl->getLinkTarget($this,
'listUsers'));
130 $ilHelp->setScreenIdComponent(
"cat");
131 $ilHelp->setScreenId(
"administrate_user");
132 $ilHelp->setSubScreenId(
$ilCtrl->getCmd());
138 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
139 $this->tpl->setVariable(
140 "LOCATION_CONTENT_STYLESHEET",
146 case 'ilpermissiongui':
148 $this->tabs_gui->setTabActive(
'perm_settings');
149 include_once(
"Services/AccessControl/classes/class.ilPermissionGUI.php");
151 $ret = &$this->ctrl->forwardCommand($perm_gui);
154 case 'ilinfoscreengui':
155 if ($this->info_screen_enabled) {
161 case 'ilcontainerlinklistgui':
162 include_once(
"Services/Container/classes/class.ilContainerLinkListGUI.php");
164 $ret = &$this->ctrl->forwardCommand($link_list_gui);
168 case "ilcontainerpagegui":
172 $this->tpl->setContent(
$ret);
176 case 'ilobjectcopygui':
179 include_once
'./Services/Object/classes/class.ilObjectCopyGUI.php';
182 $this->ctrl->forwardCommand($cp);
185 case "ilobjstylesheetgui":
189 case 'ilusertablegui':
190 include_once
'./Services/User/classes/class.ilUserTableGUI.php';
192 $u_table->initFilter();
193 $this->ctrl->setReturn($this,
'listUsers');
194 $this->ctrl->forwardCommand($u_table);
197 case "ilcommonactiondispatchergui":
199 include_once(
"Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
201 $this->ctrl->forwardCommand($gui);
204 case 'ildidactictemplategui':
205 $this->ctrl->setReturn($this,
'edit');
206 include_once
'./Services/DidacticTemplate/classes/class.ilDidacticTemplateGUI.php';
208 $this->ctrl->forwardCommand($did);
213 $this->tabs_gui->setTabActive(
'export');
214 include_once
'./Services/Export/classes/class.ilExportGUI.php';
216 $exp->addFormat(
'xml');
217 $this->ctrl->forwardCommand($exp);
220 case 'ilobjecttranslationgui':
225 include_once(
"./Services/Object/classes/class.ilObjectTranslationGUI.php");
227 $this->ctrl->forwardCommand($transgui);
230 case 'ilobjtaxonomygui':
234 include_once(
"./Services/Taxonomy/classes/class.ilObjTaxonomyGUI.php");
236 $tax->setAssignedObject($this->object->getId());
237 $tax->setMultiple(
true);
238 $tax->setListInfo($this->lng->txt(
"cntr_tax_list_info"));
239 $this->ctrl->forwardCommand($tax);
242 case 'ilobjectmetadatagui':
245 $this->tabs_gui->activateTab(
'meta_data');
249 case "ilcontainernewssettingsgui":
251 $this->tabs_gui->setTabActive(
'settings');
253 $this->tabs_gui->activateSubTab(
'obj_news_settings');
255 $news_set_gui->setHideByDate(
true);
256 $this->ctrl->forwardCommand($news_set_gui);
260 if ($cmd ==
"infoScreen") {
268 $ilAccess->checkAccess(
"read",
"",
$_GET[
"ref_id"])) {
269 include_once(
"./Services/Link/classes/class.ilLink.php");
270 $ilNavigationHistory->addItem(
278 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
279 if (is_object($this->
object)) {
280 $this->tpl->setVariable(
281 "LOCATION_CONTENT_STYLESHEET",
290 $this->tabs_gui->activateTab(
"view_content");
308 parent::addHeaderAction();
320 include_once
'Services/Object/classes/class.ilObjectMetaDataGUI.php';
322 include_once
"Services/Object/classes/class.ilObjectServiceSettingsGUI.php";
324 $this->object->getId(),
328 $md_gui->enableTaxonomyDefinition(
true);
329 $tax = $md_gui->getTaxonomyObjGUI();
330 $tax->setMultiple(
true);
331 $tax->setListInfo($this->lng->txt(
"cntr_tax_list_info"));
333 if (
sizeof($taxonomies)) {
334 $md_gui->setTaxonomySettings(
function (
$form) {
337 $form->addItem($block);
341 foreach ($tax as $tax_id => $tax_item) {
348 if ($tax_item[
"source"] != $this->object->getRefId()) {
350 $loc->setTextOnly(
true);
351 $loc->addRepositoryItems($tax_item[
"source"]);
352 $option->setInfo($loc->getHTML());
355 $block->addOption($option);
362 $block->setValue($value);
363 },
function (
$form) {
365 if (
sizeof($taxonomies)) {
366 $sblock =
$form->getInput(
"sblock");
371 $this->object->getId(),
376 if (is_array($sblock)) {
377 foreach ($sblock as $tax_id) {
379 $this->object->getId(),
403 if ($this->ctrl->getCmd() ==
"editPageContent") {
406 #$this->ctrl->setParameter($this,"ref_id",$this->ref_id);
408 $ilHelp->setScreenIdComponent(
"cat");
410 if (
$rbacsystem->checkAccess(
'read', $this->ref_id)) {
411 $force_active = (
$_GET[
"cmd"] ==
"" ||
$_GET[
"cmd"] ==
"render")
414 $this->tabs_gui->addTab(
416 $lng->txt(
"content"),
417 $this->ctrl->getLinkTarget($this,
"")
421 if ($this->info_screen_enabled) {
422 $force_active = ($this->ctrl->getNextClass() ==
"ilinfoscreengui"
423 || strtolower(
$_GET[
"cmdClass"]) ==
"ilnotegui")
426 $this->tabs_gui->addTarget(
428 $this->ctrl->getLinkTargetByClass(
429 array(
"ilobjcategorygui",
"ilinfoscreengui"),
432 array(
"showSummary",
"",
"infoScreen"),
441 if (
$rbacsystem->checkAccess(
'write', $this->ref_id)) {
442 $force_active = (
$_GET[
"cmd"] ==
"edit")
445 $this->tabs_gui->addTarget(
447 $this->ctrl->getLinkTarget($this,
"edit"),
457 include_once
"Services/Object/classes/class.ilObjectMetaDataGUI.php";
460 $this->object->getId(),
464 $mdgui->enableTaxonomyDefinition(
true);
466 $mdtab = $mdgui->getTab();
468 $this->tabs_gui->addTab(
470 $this->lng->txt(
"meta_data"),
476 include_once
'./Services/User/classes/class.ilUserAccountSettings.php';
479 $rbacsystem->checkAccess(
'cat_administrate_users', $this->ref_id)) {
480 $this->tabs_gui->addTarget(
481 "administrate_users",
482 $this->ctrl->getLinkTarget($this,
"listUsers"),
488 if ($ilAccess->checkAccess(
'write',
'', $this->object->getRefId())) {
489 $this->tabs_gui->addTarget(
491 $this->ctrl->getLinkTargetByClass(
'ilexportgui',
''),
508 $ilTabs->activateTab(
"view_content");
509 $ret = parent::renderObject();
515 if (strtolower(
$_GET[
"baseClass"]) ==
"iladministrationgui") {
516 parent::viewObject();
524 $forms = parent::initCreationForms($a_new_type);
534 include_once(
'Services/Container/classes/class.ilContainerSortingSettings.php');
540 $parent_ref_id =
$tree->getParentId($a_new_object->
getRefId());
542 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
551 ilUtil::sendSuccess($this->lng->txt(
"cat_added"),
true);
552 $this->ctrl->setParameter($this,
"ref_id", $a_new_object->
getRefId());
563 $this->ctrl->setCmd(
"showSummary");
564 $this->ctrl->setCmdClass(
"ilinfoscreengui");
577 if (!$ilAccess->checkAccess(
"visible",
"", $this->ref_id)) {
578 $ilErr->raiseError($this->lng->txt(
"msg_no_perm_read"),
$ilErr->MESSAGE);
581 if (!$this->info_screen_enabled) {
586 $this->tabs_gui->setTabActive(
'info_short');
588 include_once(
"./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
591 $info->enablePrivateNotes();
593 if ($ilAccess->checkAccess(
"read",
"",
$_GET[
"ref_id"])) {
598 $info->enableNewsEditing(
false);
599 if ($ilAccess->checkAccess(
"write",
"",
$_GET[
"ref_id"])) {
601 $enable_internal_rss = $news_set->get(
"enable_rss_for_internal");
603 if ($enable_internal_rss) {
604 $info->setBlockProperty(
"news",
"settings",
true);
605 $info->setBlockProperty(
"news",
"public_notifications_option",
true);
609 include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php');
611 $record_gui->setInfoObject(
$info);
612 $record_gui->parse();
616 $info->addMetaDataSections($this->object->getId(), 0, $this->object->getType());
619 if (
$ilCtrl->getNextClass() ==
"ilinfoscreengui") {
635 $this->tabs_gui->activateTab(
'settings');
636 $this->tabs_gui->setSubTabActive(
'edit_cat_settings');
639 $this->tpl->setContent($this->form->getHTML());
655 $this->form->checkInput();
657 if ($this->record_gui->importEditFormPostValues()) {
658 $this->record_gui->writeEditForm();
660 ilUtil::sendSuccess($this->lng->txt(
"settings_saved"),
true);
661 $this->ctrl->redirect($this,
"editInfo");
675 if (is_object($this->form)) {
679 include_once(
'Services/Form/classes/class.ilPropertyFormGUI.php');
681 $this->form->setFormAction($this->ctrl->getFormAction($this));
682 $this->form->setTitle($this->lng->txt(
'ext_cat_settings'));
683 $this->form->addCommandButton(
'updateInfo', $this->lng->txt(
'save'));
684 $this->form->addCommandButton(
'editInfo', $this->lng->txt(
'cancel'));
686 include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php');
688 $this->record_gui->setPropertyForm($this->form);
689 $this->record_gui->parse();
699 $this->tabs_gui->addSubTab(
701 $this->lng->txt(
"settings"),
702 $this->ctrl->getLinkTarget($this,
"edit")
705 $this->tabs_gui->addSubTab(
707 $this->lng->txt(
"obj_multilinguality"),
708 $this->ctrl->getLinkTargetByClass(
"ilobjecttranslationgui",
"")
713 $this->object->getId(),
719 $this->tabs_gui->addSubTab(
721 $this->lng->txt(
"cont_news_settings"),
722 $this->ctrl->getLinkTargetByClass(
'ilcontainernewssettingsgui')
726 $this->tabs_gui->activateTab(
"settings");
727 $this->tabs_gui->activateSubTab($active_tab);
734 $this->lng->loadLanguageModule($this->object->getType());
737 include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
739 $form->setFormAction($this->ctrl->getFormAction($this));
740 $form->setTitle($this->lng->txt($this->object->getType() .
"_edit"));
743 $this->initFormTitleDescription(
$form);
750 $pres->setTitle($this->lng->txt(
'obj_presentation'));
751 $form->addItem($pres);
754 $form = $obj_service->commonSettings()->legacyForm(
$form, $this->
object)->addTitleIconVisibility();
757 $form = $obj_service->commonSettings()->legacyForm(
$form, $this->
object)->addTopActionsVisibility();
760 $form = $obj_service->commonSettings()->legacyForm(
$form, $this->
object)->addIcon();
763 $form = $obj_service->commonSettings()->legacyForm(
$form, $this->
object)->addTileImage();
779 $bl =
new ilNumberInputGUI($this->lng->txt(
"cont_block_limit"),
"block_limit");
780 $bl->setInfo($this->lng->txt(
"cont_block_limit_info"));
787 include_once
'Modules/Category/classes/class.ilECSCategorySettings.php';
789 $ecs->addSettingsToForm(
$form,
'cat');
793 $sh->setTitle($this->lng->txt(
'obj_features'));
796 include_once
'./Services/Object/classes/class.ilObjectServiceSettingsGUI.php';
798 $this->object->getId(),
808 $form->addCommandButton(
"update", $this->lng->txt(
"save"));
830 $ilErr->raiseError($this->lng->txt(
"msg_no_perm_write"),
$ilErr->MESSAGE);
833 if (
$form->checkInput()) {
835 $desc =
$form->getInput(
"desc");
837 $this->
object->setTitle(
$title);
838 $this->
object->setDescription($desc);
839 $this->
object->update();
844 $obj_service->commonSettings()->legacyForm(
$form, $this->
object)->saveTitleIconVisibility();
847 $obj_service->commonSettings()->legacyForm(
$form, $this->
object)->saveTopActionsVisibility();
850 $obj_service->commonSettings()->legacyForm(
$form, $this->
object)->saveIcon();
853 $obj_service->commonSettings()->legacyForm(
$form, $this->
object)->saveTileImage();
859 require_once(
'Services/Tracking/classes/class.ilChangeEvent.php');
865 include_once
'./Services/Object/classes/class.ilObjectServiceSettingsGUI.php';
867 $this->object->getId(),
878 if ((
int)
$form->getInput(
"block_limit") > 0) {
884 include_once
'Modules/Category/classes/class.ilECSCategorySettings.php';
886 if ($ecs->handleSettingsUpdate()) {
893 $form->setValuesByPost();
894 $this->tpl->setContent(
$form->getHTML());
917 $a_tpl->addBlockfile(
920 "tpl.cat_import_form.html",
924 $a_tpl->setVariable(
"FORMACTION",
$ilCtrl->getFormActionByClass(
'ilObjCategoryGUI'));
926 $a_tpl->setVariable(
"TXT_IMPORT_CATEGORIES",
$lng->txt(
"import_categories"));
927 $a_tpl->setVariable(
"TXT_HIERARCHY_OPTION",
$lng->txt(
"import_cat_localrol"));
928 $a_tpl->setVariable(
"TXT_IMPORT_FILE",
$lng->txt(
"import_file"));
929 $a_tpl->setVariable(
"TXT_IMPORT_TABLE",
$lng->txt(
"import_cat_table"));
931 $a_tpl->setVariable(
"BTN_IMPORT",
$lng->txt(
"import"));
932 $a_tpl->setVariable(
"BTN_CANCEL",
$lng->txt(
"cancel"));
935 $parent_role_ids =
$rbacreview->getParentRoleIds($a_ref_id,
true);
938 ksort($parent_role_ids);
940 foreach ($parent_role_ids as
$key => $par) {
941 if ($par[
"obj_id"] != SYSTEM_ROLE_ID) {
945 $output[
"adopt"][
$key][
"role_id"] = $par[
"obj_id"];
946 $output[
"adopt"][
$key][
"type"] = ($par[
"type"] ==
'role' ?
'Role' :
'Template');
947 $output[
"adopt"][
$key][
"role_name"] = $par[
"title"];
955 $a_tpl->setCurrentBlock(
"ADOPT_PERM_ROW");
956 $a_tpl->setVariable(
"CSS_ROW_ADOPT", $value[
"css_row_adopt"]);
957 $a_tpl->setVariable(
"CHECK_ADOPT", $value[
"check_adopt"]);
958 $a_tpl->setVariable(
"LABEL_ID", $value[
"role_id"]);
959 $a_tpl->setVariable(
"TYPE", $value[
"type"]);
960 $a_tpl->setVariable(
"ROLE_NAME", $value[
"role_name"]);
961 $a_tpl->parseCurrentBlock();
973 $this->ctrl->redirect($this);
1016 require_once(
"./Modules/Category/classes/class.ilCategoryImportParser.php");
1021 if (!@is_dir($import_dir)) {
1027 $file_name = $_FILES[
"importFile"][
"name"];
1030 if (!strcmp($file_name,
"")) {
1032 $ilCtrl->redirectByClass(
'ilObjCategoryGUI');
1035 $parts = pathinfo($file_name);
1036 $full_path = $import_dir .
"/" . $file_name;
1037 ilUtil::moveUploadedFile($_FILES[
"importFile"][
"tmp_name"], $file_name, $full_path);
1042 $subdir = basename($parts[
"basename"],
"." . $parts[
"extension"]);
1043 $xml_file = $import_dir .
"/" . $subdir .
"/" . $subdir .
".xml";
1047 $importParser->startParsing();
1049 ilUtil::sendSuccess(
$lng->txt(
"categories_imported"),
true);
1050 $ilCtrl->redirectByClass(
'ilObjCategoryGUI');
1059 include_once(
"./Services/User/classes/class.ilUserTableGUI.php");
1061 $utab->resetOffset();
1062 $utab->resetFilter();
1076 include_once(
"./Services/User/classes/class.ilUserTableGUI.php");
1078 $utab->resetOffset();
1079 $utab->writeFilterToSession();
1090 include_once
'./Services/User/classes/class.ilLocalUser.php';
1091 include_once
'./Services/User/classes/class.ilObjUserGUI.php';
1096 if (!
$rbacsystem->checkAccess(
"cat_administrate_users", $this->object->getRefId())) {
1097 $ilErr->raiseError($this->lng->txt(
"msg_no_perm_admin_users"),
$ilErr->MESSAGE);
1099 $this->tabs_gui->setTabActive(
'administrate_users');
1103 $this->tpl->addBlockfile(
1106 'tpl.cat_admin_users.html',
1111 $ilToolbar->addButton(
1112 $this->lng->txt(
'add_user'),
1113 $this->ctrl->getLinkTargetByClass(
'ilobjusergui',
'create')
1116 $ilToolbar->addButton(
1117 $this->lng->txt(
'import_users'),
1118 $this->ctrl->getLinkTargetByClass(
'ilobjuserfoldergui',
'importUserForm')
1125 $this->tpl->setCurrentBlock(
"confirm_delete");
1126 $this->tpl->setVariable(
"CONFIRM_FORMACTION", $this->ctrl->getFormAction($this));
1127 $this->tpl->setVariable(
"TXT_CANCEL", $this->lng->txt(
'cancel'));
1128 $this->tpl->setVariable(
"CONFIRM_CMD",
'performDeleteUsers');
1129 $this->tpl->setVariable(
"TXT_CONFIRM", $this->lng->txt(
'delete'));
1130 $this->tpl->parseCurrentBlock();
1133 $this->lng->loadLanguageModule(
'user');
1135 include_once(
"./Services/User/classes/class.ilUserTableGUI.php");
1137 $this->tpl->setVariable(
'USERS_TABLE', $utab->getHTML());
1147 include_once
'./Services/User/classes/class.ilUserAutoComplete.php';
1149 $auto->setSearchFields(array(
'login',
'firstname',
'lastname',
'email'));
1150 $auto->enableFieldSearchableCheck(
true);
1151 $auto->isMoreLinkAvailable(
true);
1153 if (($_REQUEST[
'fetchall'])) {
1157 echo $auto->getList($_REQUEST[
'term']);
1164 include_once
'./Services/User/classes/class.ilLocalUser.php';
1167 foreach (
$_POST[
'user_ids'] as $user_id) {
1169 die(
'user id not valid');
1176 ilUtil::sendSuccess($this->lng->txt(
'deleted_users'));
1185 if (!count(
$_POST[
'id'])) {
1192 include_once
'./Services/Utilities/classes/class.ilConfirmationGUI.php';
1194 $confirm->setFormAction($this->ctrl->getFormAction($this));
1195 $confirm->setHeaderText($this->lng->txt(
'sure_delete_selected_users'));
1196 $confirm->setConfirm($this->lng->txt(
'delete'),
'performDeleteUsers');
1197 $confirm->setCancel($this->lng->txt(
'cancel'),
'listUsers');
1205 $name[
'lastname'] .
', ' .
$name[
'firstname'] .
' [' .
$name[
'login'] .
']'
1208 $this->tpl->setContent($confirm->getHTML());
1218 include_once
'./Services/User/classes/class.ilLocalUser.php';
1220 if (!isset(
$_GET[
'obj_id'])) {
1227 $ilTabs->clearTargets();
1228 $ilTabs->setBackTarget($this->lng->txt(
'backto_lua'), $this->ctrl->getLinkTarget($this,
'listUsers'));
1230 $ilHelp->setScreenIdComponent(
"cat");
1231 $ilHelp->setScreenId(
"administrate_user");
1232 $ilHelp->setSubScreenId(
"assign_roles");
1237 if (!count($roles)) {
1238 #ilUtil::sendInfo($this->lng->txt('no_roles_user_can_be_assigned_to'));
1239 #$this->listUsersObject();
1247 $f_result = array();
1249 foreach ($roles as $role) {
1254 in_array($role[
'obj_id'], $ass_roles) ? 1 : 0,
1259 $f_result[$counter][
'title'] = $role_obj->getTitle() ? $role_obj->getTitle() :
"";
1260 $f_result[$counter][
'desc'] = $role_obj->getDescription() ? $role_obj->getDescription() :
"";
1261 $f_result[$counter][
'type'] = $role[
'role_type'] ==
'global' ?
1262 $this->lng->txt(
'global') :
1263 $this->lng->txt(
'local');
1269 include_once(
'./Modules/Category/classes/class.ilCategoryAssignRoleTableGUI.php');
1272 $title = $this->lng->txt(
'role_assignment') .
' (' . $tmp_obj->getFullname() .
')';
1273 $table->setTitle(
$title,
"icon_role.svg", $this->lng->txt(
"role_assignment"));
1274 $table->setData($f_result);
1275 $this->tpl->setContent(
$table->getHTML());
1284 include_once
'./Services/User/classes/class.ilLocalUser.php';
1302 $new_role_ids =
$_POST[
'role_ids'] ?
$_POST[
'role_ids'] : array();
1303 $assigned_roles =
$rbacreview->assignedRoles((
int) $_REQUEST[
'obj_id']);
1304 foreach ($roles as $role) {
1305 if (in_array($role[
'obj_id'], $new_role_ids) and !in_array($role[
'obj_id'], $assigned_roles)) {
1306 $rbacadmin->assignUser($role[
'obj_id'], (
int) $_REQUEST[
'obj_id']);
1308 if (in_array($role[
'obj_id'], $assigned_roles) and !in_array($role[
'obj_id'], $new_role_ids)) {
1309 $rbacadmin->deassignUser($role[
'obj_id'], (
int) $_REQUEST[
'obj_id']);
1312 ilUtil::sendSuccess($this->lng->txt(
'role_assignment_updated'));
1328 $global_roles =
$rbacreview->getGlobalRolesArray();
1329 } elseif ($tmp_obj->getTimeLimitOwner() == $this->object->getRefId()) {
1330 $global_roles =
$rbacreview->getGlobalAssignableRoles();
1332 $global_roles = array();
1334 return $roles = array_merge(
1336 $rbacreview->getAssignableChildRoles($this->object->getRefId())
1349 if ($tmp_obj->getTimeLimitOwner() != $this->object->getRefId() and
1355 $new_assigned = $new_assigned ? $new_assigned : array();
1364 $global_assignable = array();
1365 foreach ($ga as $role) {
1366 $global_assignable[] = $role[
'obj_id'];
1369 $new_visible_assigned_roles = array_intersect($new_assigned, $global_assignable);
1370 $all_assigned_roles = array_intersect($assigned,
$rbacreview->getGlobalRoles());
1371 $main_assigned_roles = array_diff($all_assigned_roles, $global_assignable);
1373 if (!count($new_visible_assigned_roles) and !count($main_assigned_roles)) {
1383 $ilAccess =
$DIC->access();
1387 if ($ilAccess->checkAccess(
"read",
"", $a_target)) {
1389 } elseif ($ilAccess->checkAccess(
"read",
"", ROOT_FOLDER_ID)) {
1391 $lng->txt(
"msg_no_perm_read_item"),
1406 $this->tabs_gui->setTabActive(
"obj_tool_setting_taxonomies");
1407 $this->tabs_gui->addSubTab(
1409 $this->lng->txt(
"cntr_taxonomy_sideblock_settings"),
1410 $this->ctrl->getLinkTarget($this,
"editTaxonomySettings")
1412 $this->tabs_gui->addSubTab(
1414 $this->lng->txt(
"cntr_taxonomy_definitions"),
1415 $this->ctrl->getLinkTargetByClass(
"ilobjtaxonomygui",
"")
1417 $this->tabs_gui->activateSubTab($a_active);
1424 include_once
"Services/Object/classes/class.ilObjectServiceSettingsGUI.php";
1425 include_once
"Services/Taxonomy/classes/class.ilObjTaxonomy.php";
1430 foreach (
$tree->getPathFull($this->object->getRefId()) as $node) {
1435 if (
sizeof($node_taxes)) {
1436 foreach ($node_taxes as $node_tax) {
1437 $res[$node_tax[
"tax_id"]] = array(
1438 "title" => $node_tax[
"title"]
1439 ,
"source" => $node[
"child"]
1458 if (substr($keyword, 0, strlen($prefix)) == $prefix && (
bool) $value) {
1459 $res[] = substr($keyword, strlen($prefix));
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.
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()
list childs of current object
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)
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 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
$GLOBALS['JPEG_Segment_Names']
Global Variable: XMP_tag_captions.
if(empty($password)) $table
if(isset($_POST['submit'])) $form
foreach($_POST as $key=> $value) $res