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');
68 parent::__construct($a_data, (
int) $a_id, $a_call_by_reference,
false);
70 if (is_object($this->
object)) {
71 include_once(
"./Services/Container/classes/class.ilContainer.php");
72 include_once(
"./Services/Object/classes/class.ilObjectServiceSettingsGUI.php");
89 $next_class = $this->ctrl->getNextClass($this);
90 $cmd = $this->ctrl->getCmd();
95 switch ($next_class) {
97 include_once(
'./Services/User/classes/class.ilObjUserGUI.php');
99 $this->tabs_gui->setTabActive(
'administrate_users');
100 if (!
$_GET[
'obj_id']) {
102 $this->gui_obj->setCreationMode($this->creation_mode);
103 $ret =&$this->ctrl->forwardCommand($this->gui_obj);
106 $this->gui_obj->setCreationMode($this->creation_mode);
107 $ret =&$this->ctrl->forwardCommand($this->gui_obj);
110 $ilTabs->clearTargets();
111 $ilTabs->setBackTarget($this->lng->txt(
'backto_lua'), $this->ctrl->getLinkTarget($this,
'listUsers'));
113 $ilHelp->setScreenIdComponent(
"cat");
114 $ilHelp->setScreenId(
"administrate_user");
115 $ilHelp->setSubScreenId(
$ilCtrl->getCmd());
118 case "ilobjuserfoldergui":
119 include_once(
'./Services/User/classes/class.ilObjUserFolderGUI.php');
122 $this->gui_obj->setUserOwnerId((
int) $_GET[
'ref_id']);
123 $this->gui_obj->setCreationMode($this->creation_mode);
124 $ret =&$this->ctrl->forwardCommand($this->gui_obj);
126 $ilTabs->clearTargets();
127 $ilTabs->setBackTarget($this->lng->txt(
'backto_lua'), $this->ctrl->getLinkTarget($this,
'listUsers'));
129 $ilHelp->setScreenIdComponent(
"cat");
130 $ilHelp->setScreenId(
"administrate_user");
131 $ilHelp->setSubScreenId(
$ilCtrl->getCmd());
137 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
138 $this->tpl->setVariable(
139 "LOCATION_CONTENT_STYLESHEET",
145 case 'ilpermissiongui':
147 $this->tabs_gui->setTabActive(
'perm_settings');
148 include_once(
"Services/AccessControl/classes/class.ilPermissionGUI.php");
150 $ret =&$this->ctrl->forwardCommand($perm_gui);
153 case 'ilinfoscreengui':
154 if ($this->info_screen_enabled) {
160 case 'ilcontainerlinklistgui':
161 include_once(
"Services/Container/classes/class.ilContainerLinkListGUI.php");
163 $ret =&$this->ctrl->forwardCommand($link_list_gui);
167 case "ilcontainerpagegui":
171 $this->tpl->setContent(
$ret);
175 case 'ilobjectcopygui':
178 include_once
'./Services/Object/classes/class.ilObjectCopyGUI.php';
181 $this->ctrl->forwardCommand($cp);
184 case "ilobjstylesheetgui":
188 case 'ilusertablegui':
189 include_once
'./Services/User/classes/class.ilUserTableGUI.php';
191 $u_table->initFilter();
192 $this->ctrl->setReturn($this,
'listUsers');
193 $this->ctrl->forwardCommand($u_table);
196 case "ilcommonactiondispatchergui":
198 include_once(
"Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
200 $this->ctrl->forwardCommand($gui);
203 case 'ildidactictemplategui':
204 $this->ctrl->setReturn($this,
'edit');
205 include_once
'./Services/DidacticTemplate/classes/class.ilDidacticTemplateGUI.php';
207 $this->ctrl->forwardCommand($did);
212 $this->tabs_gui->setTabActive(
'export');
213 include_once
'./Services/Export/classes/class.ilExportGUI.php';
215 $exp->addFormat(
'xml');
216 $this->ctrl->forwardCommand($exp);
219 case 'ilobjecttranslationgui':
224 include_once(
"./Services/Object/classes/class.ilObjectTranslationGUI.php");
226 $this->ctrl->forwardCommand($transgui);
229 case 'ilobjtaxonomygui':
233 include_once(
"./Services/Taxonomy/classes/class.ilObjTaxonomyGUI.php");
235 $tax->setAssignedObject($this->
object->getId());
236 $tax->setMultiple(
true);
237 $tax->setListInfo($this->lng->txt(
"cntr_tax_list_info"));
238 $this->ctrl->forwardCommand($tax);
241 case 'ilobjectmetadatagui':
244 $this->tabs_gui->activateTab(
'meta_data');
249 if ($cmd ==
"infoScreen") {
257 $ilAccess->checkAccess(
"read",
"", $_GET[
"ref_id"])) {
258 include_once(
"./Services/Link/classes/class.ilLink.php");
259 $ilNavigationHistory->addItem(
267 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
268 if (is_object($this->
object)) {
269 $this->tpl->setVariable(
270 "LOCATION_CONTENT_STYLESHEET",
279 $this->tabs_gui->activateTab(
"view_content");
297 parent::addHeaderAction();
309 include_once
'Services/Object/classes/class.ilObjectMetaDataGUI.php';
311 include_once
"Services/Object/classes/class.ilObjectServiceSettingsGUI.php";
317 $md_gui->enableTaxonomyDefinition(
true);
318 $tax = $md_gui->getTaxonomyObjGUI();
319 $tax->setMultiple(
true);
320 $tax->setListInfo($this->lng->txt(
"cntr_tax_list_info"));
322 if (
sizeof($taxonomies)) {
323 $md_gui->setTaxonomySettings(
function (
$form) {
326 $form->addItem($block);
330 foreach ($tax as $tax_id => $tax_item) {
337 if ($tax_item[
"source"] != $this->
object->getRefId()) {
339 $loc->setTextOnly(
true);
340 $loc->addRepositoryItems($tax_item[
"source"]);
341 $option->setInfo($loc->getHTML());
344 $block->addOption($option);
351 $block->setValue($value);
352 },
function (
$form) {
354 if (
sizeof($taxonomies)) {
355 $sblock =
$form->getInput(
"sblock");
357 $prefix = self::CONTAINER_SETTING_TAXBLOCK;
365 if (is_array($sblock)) {
366 foreach ($sblock as $tax_id) {
392 if ($this->ctrl->getCmd() ==
"editPageContent") {
395 #$this->ctrl->setParameter($this,"ref_id",$this->ref_id); 397 $ilHelp->setScreenIdComponent(
"cat");
399 if (
$rbacsystem->checkAccess(
'read', $this->ref_id)) {
400 $force_active = (
$_GET[
"cmd"] ==
"" ||
$_GET[
"cmd"] ==
"render")
403 $this->tabs_gui->addTab(
405 $lng->txt(
"content"),
406 $this->ctrl->getLinkTarget($this,
"")
410 if ($this->info_screen_enabled) {
411 $force_active = ($this->ctrl->getNextClass() ==
"ilinfoscreengui" 412 || strtolower(
$_GET[
"cmdClass"]) ==
"ilnotegui")
415 $this->tabs_gui->addTarget(
417 $this->ctrl->getLinkTargetByClass(
418 array(
"ilobjcategorygui",
"ilinfoscreengui"),
421 array(
"showSummary",
"",
"infoScreen"),
430 if (
$rbacsystem->checkAccess(
'write', $this->ref_id)) {
431 $force_active = (
$_GET[
"cmd"] ==
"edit")
434 $this->tabs_gui->addTarget(
436 $this->ctrl->getLinkTarget($this,
"edit"),
446 include_once
"Services/Object/classes/class.ilObjectMetaDataGUI.php";
453 $mdgui->enableTaxonomyDefinition(
true);
455 $mdtab = $mdgui->getTab();
457 $this->tabs_gui->addTab(
459 $this->lng->txt(
"meta_data"),
465 include_once
'./Services/User/classes/class.ilUserAccountSettings.php';
468 $rbacsystem->checkAccess(
'cat_administrate_users', $this->ref_id)) {
469 $this->tabs_gui->addTarget(
470 "administrate_users",
471 $this->ctrl->getLinkTarget($this,
"listUsers"),
477 if ($ilAccess->checkAccess(
'write',
'', $this->object->getRefId())) {
478 $this->tabs_gui->addTarget(
480 $this->ctrl->getLinkTargetByClass(
'ilexportgui',
''),
497 $ilTabs->activateTab(
"view_content");
498 $ret = parent::renderObject();
504 if (strtolower(
$_GET[
"baseClass"]) ==
"iladministrationgui") {
505 parent::viewObject();
513 $forms = parent::initCreationForms($a_new_type);
524 $a_new_object->addTranslation(
532 include_once(
'Services/Container/classes/class.ilContainerSortingSettings.php');
538 $parent_ref_id =
$tree->getParentId($a_new_object->
getRefId());
540 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
550 $this->ctrl->setParameter($this,
"ref_id", $a_new_object->
getRefId());
561 $this->ctrl->setCmd(
"showSummary");
562 $this->ctrl->setCmdClass(
"ilinfoscreengui");
575 if (!$ilAccess->checkAccess(
"visible",
"", $this->ref_id)) {
576 $ilErr->raiseError($this->lng->txt(
"msg_no_perm_read"),
$ilErr->MESSAGE);
579 if (!$this->info_screen_enabled) {
584 $this->tabs_gui->setTabActive(
'info_short');
586 include_once(
"./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
589 $info->enablePrivateNotes();
591 if ($ilAccess->checkAccess(
"read",
"",
$_GET[
"ref_id"])) {
596 $info->enableNewsEditing(
false);
597 if ($ilAccess->checkAccess(
"write",
"",
$_GET[
"ref_id"])) {
599 $enable_internal_rss = $news_set->get(
"enable_rss_for_internal");
601 if ($enable_internal_rss) {
602 $info->setBlockProperty(
"news",
"settings",
true);
603 $info->setBlockProperty(
"news",
"public_notifications_option",
true);
607 include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php');
610 $record_gui->parse();
614 $info->addMetaDataSections($this->
object->getId(), 0, $this->
object->getType());
617 if (
$ilCtrl->getNextClass() ==
"ilinfoscreengui") {
633 $this->tabs_gui->activateTab(
'settings');
634 $this->tabs_gui->setSubTabActive(
'edit_cat_settings');
637 $this->tpl->setContent($this->form->getHTML());
653 $this->form->checkInput();
655 if ($this->record_gui->importEditFormPostValues()) {
656 $this->record_gui->writeEditForm();
659 $this->ctrl->redirect($this,
"editInfo");
673 if (is_object($this->form)) {
677 include_once(
'Services/Form/classes/class.ilPropertyFormGUI.php');
679 $this->form->setFormAction($this->ctrl->getFormAction($this));
680 $this->form->setTitle($this->lng->txt(
'ext_cat_settings'));
681 $this->form->addCommandButton(
'updateInfo', $this->lng->txt(
'save'));
682 $this->form->addCommandButton(
'editInfo', $this->lng->txt(
'cancel'));
684 include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php');
687 $this->record_gui->parse();
697 $this->tabs_gui->addSubTab(
699 $this->lng->txt(
"settings"),
700 $this->ctrl->getLinkTarget($this,
"edit")
707 $this->tabs_gui->addSubTab(
709 $this->lng->txt(
"obj_multilinguality"),
710 $this->ctrl->getLinkTargetByClass(
"ilobjecttranslationgui",
"")
715 $this->tabs_gui->addSubTab(
717 $this->lng->txt(
"icon_settings"),
718 $this->ctrl->getLinkTarget($this,
'editIcons')
722 $this->tabs_gui->activateTab(
"settings");
723 $this->tabs_gui->activateSubTab($active_tab);
728 $this->lng->loadLanguageModule($this->
object->getType());
731 include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
733 $form->setFormAction($this->ctrl->getFormAction($this));
734 $form->setTitle($this->lng->txt($this->object->getType() .
"_edit"));
738 $trans = $this->
object->getTranslations();
739 $def = $trans[
"Fobject"][0];
742 $title->setRequired(
true);
748 if (
sizeof($trans[
"Fobject"]) > 1) {
749 include_once(
'Services/MetaData/classes/class.ilMDLanguageItem.php');
752 $title->setInfo($this->lng->txt(
"language") .
": " . $languages[
$def[
"lang"]] .
753 ' <a href="' . $this->ctrl->getLinkTarget($this,
"editTranslations") .
754 '">» ' . $this->lng->txt(
"cat_more_translations") .
'</a>');
762 $desc->setValue(
$def[
"desc"]);
763 $form->addItem($desc);
770 $pres->setTitle($this->lng->txt(
'obj_presentation'));
771 $form->addItem($pres);
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';
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");
836 $lang = $this->
object->getTranslations();
838 $this->
object->deleteTranslation(
$lang);
839 $this->
object->addTranslation(
$title, $desc,
$lang,
true);
840 $this->
object->setTitle(
$title);
841 $this->
object->setDescription($desc);
842 $this->
object->update();
849 require_once(
'Services/Tracking/classes/class.ilChangeEvent.php');
855 include_once
'./Services/Object/classes/class.ilObjectServiceSettingsGUI.php';
868 include_once
'Modules/Category/classes/class.ilECSCategorySettings.php';
870 if ($ecs->handleSettingsUpdate()) {
877 $form->setValuesByPost();
878 $this->tpl->setContent(
$form->getHTML());
889 $this->ctrl->redirectByClass(
"ilobjecttranslationgui",
"");
892 $this->lng->loadLanguageModule($this->
object->getType());
895 include_once(
"./Services/Object/classes/class.ilObjectTranslationTableGUI.php");
902 if ($a_get_post_values) {
904 foreach (
$_POST[
"title"] as $k => $v) {
905 $vals[] =
array(
"title" => $v,
906 "desc" =>
$_POST[
"desc"][$k],
907 "lang" =>
$_POST[
"lang"][$k],
908 "default" => (
$_POST[
"default"] == $k));
912 $data = $this->
object->getTranslations();
913 foreach (
$data[
"Fobject"] as $k => $v) {
914 $data[
"Fobject"][$k][
"default"] = ($k ==
$data[
"default_language"]);
917 $data[
"Fobject"][++$k][
"title"] =
"";
932 $ilErr->raiseError($this->lng->txt(
"permission_denied"),
$ilErr->MESSAGE);
936 if (!isset(
$_POST[
"default"])) {
942 if (array_key_exists(
"",
$_POST[
"lang"])) {
948 if (count(array_unique(
$_POST[
"lang"])) < count(
$_POST[
"lang"])) {
954 $this->
object->removeTranslations();
955 foreach (
$_POST[
"title"] as $k => $v) {
957 $is_default = (
$_POST[
"default"] == $k);
961 $this->
object->update();
964 $this->
object->addTranslation(
973 $this->ctrl->redirect($this,
"editTranslations");
982 $k = max(array_keys(
$_POST[
"title"]));
996 foreach (
$_POST[
"title"] as $k => $v) {
997 if (
$_POST[
"check"][$k]) {
999 if ($k !=
$_POST[
"default"]) {
1000 unset(
$_POST[
"title"][$k]);
1001 unset(
$_POST[
"desc"][$k]);
1002 unset(
$_POST[
"lang"][$k]);
1027 $lng = $DIC->language();
1031 $a_tpl->addBlockfile(
1034 "tpl.cat_import_form.html",
1038 $a_tpl->setVariable(
"FORMACTION",
$ilCtrl->getFormActionByClass(
'ilObjCategoryGUI'));
1040 $a_tpl->setVariable(
"TXT_IMPORT_CATEGORIES",
$lng->txt(
"import_categories"));
1041 $a_tpl->setVariable(
"TXT_HIERARCHY_OPTION",
$lng->txt(
"import_cat_localrol"));
1042 $a_tpl->setVariable(
"TXT_IMPORT_FILE",
$lng->txt(
"import_file"));
1043 $a_tpl->setVariable(
"TXT_IMPORT_TABLE",
$lng->txt(
"import_cat_table"));
1045 $a_tpl->setVariable(
"BTN_IMPORT",
$lng->txt(
"import"));
1046 $a_tpl->setVariable(
"BTN_CANCEL",
$lng->txt(
"cancel"));
1049 $parent_role_ids =
$rbacreview->getParentRoleIds($a_ref_id,
true);
1052 ksort($parent_role_ids);
1054 foreach ($parent_role_ids as
$key => $par) {
1055 if ($par[
"obj_id"] != SYSTEM_ROLE_ID) {
1059 $output[
"adopt"][
$key][
"role_id"] = $par[
"obj_id"];
1060 $output[
"adopt"][
$key][
"type"] = ($par[
"type"] ==
'role' ?
'Role' :
'Template');
1061 $output[
"adopt"][
$key][
"role_name"] = $par[
"title"];
1069 $a_tpl->setCurrentBlock(
"ADOPT_PERM_ROW");
1070 $a_tpl->setVariable(
"CSS_ROW_ADOPT", $value[
"css_row_adopt"]);
1071 $a_tpl->setVariable(
"CHECK_ADOPT", $value[
"check_adopt"]);
1072 $a_tpl->setVariable(
"LABEL_ID", $value[
"role_id"]);
1073 $a_tpl->setVariable(
"TYPE", $value[
"type"]);
1074 $a_tpl->setVariable(
"ROLE_NAME", $value[
"role_name"]);
1075 $a_tpl->parseCurrentBlock();
1087 $this->ctrl->redirect($this);
1127 $lng = $DIC->language();
1130 require_once(
"./Modules/Category/classes/class.ilCategoryImportParser.php");
1135 if (!@is_dir($import_dir)) {
1141 $file_name = $_FILES[
"importFile"][
"name"];
1144 if (!strcmp($file_name,
"")) {
1146 $ilCtrl->redirectByClass(
'ilObjCategoryGUI');
1149 $parts = pathinfo($file_name);
1150 $full_path = $import_dir .
"/" . $file_name;
1151 ilUtil::moveUploadedFile($_FILES[
"importFile"][
"tmp_name"], $file_name, $full_path);
1156 $subdir = basename($parts[
"basename"],
"." . $parts[
"extension"]);
1157 $xml_file = $import_dir .
"/" . $subdir .
"/" . $subdir .
".xml";
1161 $importParser->startParsing();
1164 $ilCtrl->redirectByClass(
'ilObjCategoryGUI');
1173 include_once(
"./Services/User/classes/class.ilUserTableGUI.php");
1175 $utab->resetOffset();
1176 $utab->resetFilter();
1190 include_once(
"./Services/User/classes/class.ilUserTableGUI.php");
1192 $utab->resetOffset();
1193 $utab->writeFilterToSession();
1204 include_once
'./Services/User/classes/class.ilLocalUser.php';
1205 include_once
'./Services/User/classes/class.ilObjUserGUI.php';
1210 if (!
$rbacsystem->checkAccess(
"cat_administrate_users", $this->object->getRefId())) {
1211 $ilErr->raiseError($this->lng->txt(
"msg_no_perm_admin_users"),
$ilErr->MESSAGE);
1213 $this->tabs_gui->setTabActive(
'administrate_users');
1217 $this->tpl->addBlockfile(
1220 'tpl.cat_admin_users.html',
1225 $ilToolbar->addButton(
1226 $this->lng->txt(
'add_user'),
1227 $this->ctrl->getLinkTargetByClass(
'ilobjusergui',
'create')
1230 $ilToolbar->addButton(
1231 $this->lng->txt(
'import_users'),
1232 $this->ctrl->getLinkTargetByClass(
'ilobjuserfoldergui',
'importUserForm')
1239 $this->tpl->setCurrentBlock(
"confirm_delete");
1240 $this->tpl->setVariable(
"CONFIRM_FORMACTION", $this->ctrl->getFormAction($this));
1241 $this->tpl->setVariable(
"TXT_CANCEL", $this->lng->txt(
'cancel'));
1242 $this->tpl->setVariable(
"CONFIRM_CMD",
'performDeleteUsers');
1243 $this->tpl->setVariable(
"TXT_CONFIRM", $this->lng->txt(
'delete'));
1244 $this->tpl->parseCurrentBlock();
1247 $this->lng->loadLanguageModule(
'user');
1249 include_once(
"./Services/User/classes/class.ilUserTableGUI.php");
1251 $this->tpl->setVariable(
'USERS_TABLE', $utab->getHTML());
1261 include_once
'./Services/User/classes/class.ilUserAutoComplete.php';
1263 $auto->setSearchFields(
array(
'login',
'firstname',
'lastname',
'email'));
1264 $auto->enableFieldSearchableCheck(
true);
1265 $auto->isMoreLinkAvailable(
true);
1267 if (($_REQUEST[
'fetchall'])) {
1271 echo $auto->getList($_REQUEST[
'term']);
1278 include_once
'./Services/User/classes/class.ilLocalUser.php';
1281 foreach (
$_POST[
'user_ids'] as $user_id) {
1283 die(
'user id not valid');
1299 if (!count(
$_POST[
'id'])) {
1306 include_once
'./Services/Utilities/classes/class.ilConfirmationGUI.php';
1308 $confirm->setFormAction($this->ctrl->getFormAction($this));
1309 $confirm->setHeaderText($this->lng->txt(
'sure_delete_selected_users'));
1310 $confirm->setConfirm($this->lng->txt(
'delete'),
'performDeleteUsers');
1311 $confirm->setCancel($this->lng->txt(
'cancel'),
'listUsers');
1319 $name[
'lastname'] .
', ' .
$name[
'firstname'] .
' [' .
$name[
'login'] .
']' 1322 $this->tpl->setContent($confirm->getHTML());
1332 include_once
'./Services/User/classes/class.ilLocalUser.php';
1334 if (!isset(
$_GET[
'obj_id'])) {
1341 $ilTabs->clearTargets();
1342 $ilTabs->setBackTarget($this->lng->txt(
'backto_lua'), $this->ctrl->getLinkTarget($this,
'listUsers'));
1344 $ilHelp->setScreenIdComponent(
"cat");
1345 $ilHelp->setScreenId(
"administrate_user");
1346 $ilHelp->setSubScreenId(
"assign_roles");
1351 if (!count($roles)) {
1352 #ilUtil::sendInfo($this->lng->txt('no_roles_user_can_be_assigned_to')); 1353 #$this->listUsersObject(); 1361 $f_result =
array();
1363 foreach ($roles as $role) {
1368 in_array($role[
'obj_id'], $ass_roles) ? 1 : 0,
1373 $f_result[
$counter][
'title'] = $role_obj->getTitle() ? $role_obj->getTitle() :
"";
1374 $f_result[
$counter][
'desc'] = $role_obj->getDescription() ? $role_obj->getDescription() :
"";
1375 $f_result[
$counter][
'type'] = $role[
'role_type'] ==
'global' ?
1376 $this->lng->txt(
'global') :
1377 $this->lng->txt(
'local');
1383 include_once(
'./Modules/Category/classes/class.ilCategoryAssignRoleTableGUI.php');
1386 $title = $this->lng->txt(
'role_assignment') .
' (' . $tmp_obj->getFullname() .
')';
1387 $table->setTitle(
$title,
"icon_role.svg", $this->lng->txt(
"role_assignment"));
1388 $table->setData($f_result);
1389 $this->tpl->setContent(
$table->getHTML());
1398 include_once
'./Services/User/classes/class.ilLocalUser.php';
1417 $assigned_roles =
$rbacreview->assignedRoles((
int) $_REQUEST[
'obj_id']);
1418 foreach ($roles as $role) {
1419 if (in_array($role[
'obj_id'], $new_role_ids) and !in_array($role[
'obj_id'], $assigned_roles)) {
1420 $rbacadmin->assignUser($role[
'obj_id'], (
int) $_REQUEST[
'obj_id']);
1422 if (in_array($role[
'obj_id'], $assigned_roles) and !in_array($role[
'obj_id'], $new_role_ids)) {
1423 $rbacadmin->deassignUser($role[
'obj_id'], (
int) $_REQUEST[
'obj_id']);
1442 $global_roles =
$rbacreview->getGlobalRolesArray();
1443 } elseif ($tmp_obj->getTimeLimitOwner() == $this->
object->getRefId()) {
1444 $global_roles =
$rbacreview->getGlobalAssignableRoles();
1446 $global_roles =
array();
1448 return $roles = array_merge(
1450 $rbacreview->getAssignableChildRoles($this->object->getRefId())
1463 if ($tmp_obj->getTimeLimitOwner() != $this->
object->getRefId() and
1469 $new_assigned = $new_assigned ? $new_assigned :
array();
1478 $global_assignable =
array();
1479 foreach ($ga as $role) {
1480 $global_assignable[] = $role[
'obj_id'];
1483 $new_visible_assigned_roles = array_intersect($new_assigned, $global_assignable);
1484 $all_assigned_roles = array_intersect($assigned,
$rbacreview->getGlobalRoles());
1485 $main_assigned_roles = array_diff($all_assigned_roles, $global_assignable);
1487 if (!count($new_visible_assigned_roles) and !count($main_assigned_roles)) {
1497 $ilAccess = $DIC->access();
1499 $lng = $DIC->language();
1501 if ($ilAccess->checkAccess(
"read",
"", $a_target)) {
1503 } elseif ($ilAccess->checkAccess(
"read",
"", ROOT_FOLDER_ID)) {
1505 $lng->txt(
"msg_no_perm_read_item"),
1528 $this->tabs_gui->setTabActive(
'settings');
1534 $tpl->setContent($a_form->getHTML());
1541 include_once
"Services/Form/classes/class.ilPropertyFormGUI.php";
1543 $form->setFormAction($this->ctrl->getFormAction($this));
1548 $form->addCommandButton(
'updateIcons', $this->lng->txt(
'save'));
1563 if (
$form->checkInput()) {
1566 if (
$_POST[
"cont_icon_delete"]) {
1567 $this->
object->removeCustomIcon();
1569 $this->
object->saveIcons($_FILES[
"cont_icon"][
'tmp_name']);
1571 if ($_FILES[
"cont_icon"][
'tmp_name'] ||
$_POST[
"cont_icon_delete"]) {
1574 $this->ctrl->redirect($this,
"editIcons");
1577 $form->setValuesByPost();
1588 $this->tabs_gui->setTabActive(
"obj_tool_setting_taxonomies");
1589 $this->tabs_gui->addSubTab(
1591 $this->lng->txt(
"cntr_taxonomy_sideblock_settings"),
1592 $this->ctrl->getLinkTarget($this,
"editTaxonomySettings")
1594 $this->tabs_gui->addSubTab(
1596 $this->lng->txt(
"cntr_taxonomy_definitions"),
1597 $this->ctrl->getLinkTargetByClass(
"ilobjtaxonomygui",
"")
1599 $this->tabs_gui->activateSubTab($a_active);
1606 include_once
"Services/Object/classes/class.ilObjectServiceSettingsGUI.php";
1607 include_once
"Services/Taxonomy/classes/class.ilObjTaxonomy.php";
1612 foreach (
$tree->getPathFull($this->object->getRefId()) as $node) {
1617 if (
sizeof($node_taxes)) {
1618 foreach ($node_taxes as $node_tax) {
1620 "title" => $node_tax[
"title"]
1621 ,
"source" => $node[
"child"]
1637 $prefix = self::CONTAINER_SETTING_TAXBLOCK;
1640 if (substr($keyword, 0, strlen($prefix)) == $prefix && (
bool) $value) {
1641 $res[] = substr($keyword, strlen($prefix));
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
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
const TITLE_LENGTH
max length of object title
initCreationForms($a_new_type)
static _recordWriteEvent($obj_id, $usr_id, $action, $parent_obj_id=null)
Records a write event.
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
__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
editIconsObject($a_form=null)
Edit folder icons.
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
updateIconsObject()
update container icons
addTranslationObject()
Add a translation.
initExtendedSettings()
build property form for extended category settings
editTranslationsObject($a_get_post_values=false, $a_add=false)
Edit title and translations.
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.
deleteTranslationsObject()
Remove translation.
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.
if(!is_dir( $entity_dir)) exit("Fatal Error ([A-Za-z0-9]+)\+" &#(? foreach( $entity_files as $file) $output
GUI class for didactic template settings inside repository objects.
foreach($_POST as $key=> $value) $res
setInfoObject($info)
get info sections
if(isset($_POST['submit'])) $form
updateInfoObject()
Update info (extended meta data)
getId()
get object id public
showCustomIconsEditing($a_input_colspan=1, ilPropertyFormGUI $a_form=null, $a_as_section=true)
show edit section of custom icons for container
static _deleteContainerSettings($a_id, $a_keyword=null, $a_keyword_like=false)
static _gotoRepositoryNode($a_ref_id, $a_cmd="frameset")
Goto repository root.
editInfoObject()
Edit extended category settings.
static _lookupDescription($a_id)
lookup object description
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.
This class represents a text property in a property form.
getTitle()
get object title public
getDescription()
get object description
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 stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
static _getAllUserIds($a_filter=0)
static getContentStylePath($a_style_id, $add_random=true)
get content style path
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
Create styles array
The data for the language used.
afterSave(ilObject $a_new_object)
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
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")
TableGUI class for title/description translations.
static getDataDir()
get data directory (outside webspace)
initSortingForm(ilPropertyFormGUI $form, array $a_sorting_settings)
Append sorting settings to property form.
setRows($a_rows)
Set Rows.
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...
Create new PHPExcel object
obj_idprivate
static _getImportDir()
get user import directory name
static getInstance()
Singelton get instance.
This class represents a text area property in a property form.
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.
if(empty($password)) $table
updateObject()
updates object entry in object_data
checkPermissionBool($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission.
saveTranslationsObject()
Save title and translations.
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.