5 require_once
"./Services/Container/classes/class.ilContainerGUI.php";
31 function __construct($a_data, $a_id, $a_call_by_reference =
true, $a_prepare_output =
true)
38 $GLOBALS[
'lng']->loadLanguageModule(
'cat');
41 parent::__construct($a_data,(
int) $a_id,$a_call_by_reference,
false);
43 if (is_object($this->
object))
45 include_once(
"./Services/Container/classes/class.ilContainer.php");
46 include_once(
"./Services/Object/classes/class.ilObjectServiceSettingsGUI.php");
56 global $rbacsystem, $ilNavigationHistory, $ilAccess,
$ilCtrl,$ilTabs;
58 $next_class = $this->ctrl->getNextClass($this);
59 $cmd = $this->ctrl->getCmd();
67 include_once(
'./Services/User/classes/class.ilObjUserGUI.php');
69 $this->tabs_gui->setTabActive(
'administrate_users');
73 $this->gui_obj->setCreationMode($this->creation_mode);
74 $ret =& $this->ctrl->forwardCommand($this->gui_obj);
79 $this->gui_obj->setCreationMode($this->creation_mode);
80 $ret =& $this->ctrl->forwardCommand($this->gui_obj);
83 $ilTabs->clearTargets();
84 $ilTabs->setBackTarget($this->lng->txt(
'backto_lua'), $this->ctrl->getLinkTarget($this,
'listUsers'));
86 $ilHelp->setScreenIdComponent(
"cat");
87 $ilHelp->setScreenId(
"administrate_user");
88 $ilHelp->setSubScreenId($ilCtrl->getCmd());
91 case "ilobjuserfoldergui":
92 include_once(
'./Services/User/classes/class.ilObjUserFolderGUI.php');
95 $this->gui_obj->setUserOwnerId((
int) $_GET[
'ref_id']);
96 $this->gui_obj->setCreationMode($this->creation_mode);
97 $ret =& $this->ctrl->forwardCommand($this->gui_obj);
99 $ilTabs->clearTargets();
100 $ilTabs->setBackTarget($this->lng->txt(
'backto_lua'), $this->ctrl->getLinkTarget($this,
'listUsers'));
102 $ilHelp->setScreenIdComponent(
"cat");
103 $ilHelp->setScreenId(
"administrate_user");
104 $ilHelp->setSubScreenId($ilCtrl->getCmd());
110 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
111 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
116 case 'ilpermissiongui':
118 $this->tabs_gui->setTabActive(
'perm_settings');
119 include_once(
"Services/AccessControl/classes/class.ilPermissionGUI.php");
121 $ret =& $this->ctrl->forwardCommand($perm_gui);
124 case 'ilinfoscreengui':
125 if ($this->info_screen_enabled)
132 case 'ilcontainerlinklistgui':
133 include_once(
"Services/Container/classes/class.ilContainerLinkListGUI.php");
135 $ret =& $this->ctrl->forwardCommand($link_list_gui);
139 case "ilcontainerpagegui":
144 $this->tpl->setContent(
$ret);
148 case 'ilobjectcopygui':
151 include_once
'./Services/Object/classes/class.ilObjectCopyGUI.php';
154 $this->ctrl->forwardCommand($cp);
157 case "ilobjstylesheetgui":
161 case 'ilusertablegui':
162 include_once
'./Services/User/classes/class.ilUserTableGUI.php';
164 $u_table->initFilter();
165 $this->ctrl->setReturn($this,
'listUsers');
166 $this->ctrl->forwardCommand($u_table);
169 case "ilcommonactiondispatchergui":
171 include_once(
"Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
173 $this->ctrl->forwardCommand($gui);
176 case 'ildidactictemplategui':
177 $this->ctrl->setReturn($this,
'edit');
178 include_once
'./Services/DidacticTemplate/classes/class.ilDidacticTemplateGUI.php';
180 $this->ctrl->forwardCommand($did);
185 $this->tabs_gui->setTabActive(
'export');
186 include_once
'./Services/Export/classes/class.ilExportGUI.php';
188 $exp->addFormat(
'xml');
189 $this->ctrl->forwardCommand($exp);
192 case 'ilobjecttranslationgui':
197 include_once(
"./Services/Object/classes/class.ilObjectTranslationGUI.php");
199 $this->ctrl->forwardCommand($transgui);
202 case 'ilobjtaxonomygui':
206 include_once(
"./Services/Taxonomy/classes/class.ilObjTaxonomyGUI.php");
208 $tax->setAssignedObject($this->
object->getId());
209 $tax->setMultiple(
true);
210 $tax->setListInfo($this->lng->txt(
"cntr_tax_list_info"));
211 $this->ctrl->forwardCommand($tax);
214 case 'ilobjectmetadatagui';
217 $this->tabs_gui->activateTab(
'meta_data');
218 include_once
'Services/Object/classes/class.ilObjectMetaDataGUI.php';
220 $this->ctrl->forwardCommand($md_gui);
224 if (
$cmd ==
"infoScreen")
235 $ilAccess->checkAccess(
"read",
"", $_GET[
"ref_id"]))
237 include_once(
"./Services/Link/classes/class.ilLink.php");
238 $ilNavigationHistory->addItem($_GET[
"ref_id"],
243 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
244 if (is_object($this->
object))
246 $this->tpl->setVariable(
"LOCATION_CONTENT_STYLESHEET",
255 $this->tabs_gui->activateTab(
"view_content");
271 global $rbacsystem,
$lng, $ilHelp, $ilAccess;
273 if ($this->ctrl->getCmd() ==
"editPageContent")
277 #$this->ctrl->setParameter($this,"ref_id",$this->ref_id); 279 $ilHelp->setScreenIdComponent(
"cat");
281 if ($rbacsystem->checkAccess(
'read',$this->ref_id))
283 $force_active = (
$_GET[
"cmd"] ==
"" ||
$_GET[
"cmd"] ==
"render")
286 $this->tabs_gui->addTab(
"view_content", $lng->txt(
"content"),
287 $this->ctrl->getLinkTarget($this,
""));
290 if ($this->info_screen_enabled)
292 $force_active = ($this->ctrl->getNextClass() ==
"ilinfoscreengui" 293 || strtolower(
$_GET[
"cmdClass"]) ==
"ilnotegui")
296 $this->tabs_gui->addTarget(
"info_short",
297 $this->ctrl->getLinkTargetByClass(
298 array(
"ilobjcategorygui",
"ilinfoscreengui"),
"showSummary"),
299 array(
"showSummary",
"",
"infoScreen"),
300 "",
"", $force_active);
305 if ($rbacsystem->checkAccess(
'write',$this->ref_id))
307 $force_active = (
$_GET[
"cmd"] ==
"edit")
310 $this->tabs_gui->addTarget(
"settings",
311 $this->ctrl->getLinkTarget($this,
"edit"),
"edit", get_class($this)
312 ,
"", $force_active);
315 include_once
"Services/Object/classes/class.ilObjectMetaDataGUI.php";
317 $mdtab = $mdgui->getTab();
320 $this->tabs_gui->addTab(
"meta_data",
321 $this->lng->txt(
"meta_data"),
325 include_once
"Services/Object/classes/class.ilObjectServiceSettingsGUI.php";
332 $this->tabs_gui->addTarget(
"obj_tool_setting_taxonomies",
333 $this->ctrl->getLinkTarget($this,
"editTaxonomySettings"),
"editTaxonomySettings", get_class($this));
337 include_once
'./Services/User/classes/class.ilUserAccountSettings.php';
340 $rbacsystem->checkAccess(
'cat_administrate_users',$this->ref_id))
342 $this->tabs_gui->addTarget(
"administrate_users",
343 $this->ctrl->getLinkTarget($this,
"listUsers"),
"listUsers", get_class($this));
346 if($ilAccess->checkAccess(
'write',
'',$this->object->getRefId()))
348 $this->tabs_gui->addTarget(
350 $this->ctrl->getLinkTargetByClass(
'ilexportgui',
''),
368 $ilTabs->activateTab(
"view_content");
369 $ret = parent::renderObject();
376 if (strtolower(
$_GET[
"baseClass"]) ==
"iladministrationgui")
378 parent::viewObject();
386 $forms = parent::initCreationForms($a_new_type);
396 $a_new_object->addTranslation($a_new_object->
getTitle(),
397 $a_new_object->
getDescription(), $ilUser->getPref(
"language"),
true);
400 include_once(
'Services/Container/classes/class.ilContainerSortingSettings.php');
406 $parent_ref_id = $tree->getParentId($a_new_object->
getRefId());
408 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
420 $this->ctrl->setParameter($this,
"ref_id", $a_new_object->
getRefId());
431 $this->ctrl->setCmd(
"showSummary");
432 $this->ctrl->setCmdClass(
"ilinfoscreengui");
443 if (!$ilAccess->checkAccess(
"visible",
"", $this->ref_id))
445 $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_read"),$this->
ilias->error_obj->MESSAGE);
448 if (!$this->info_screen_enabled)
454 $this->tabs_gui->setTabActive(
'info_short');
456 include_once(
"./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
459 $info->enablePrivateNotes();
461 if ($ilAccess->checkAccess(
"read",
"",
$_GET[
"ref_id"]))
467 $info->enableNewsEditing(
false);
468 if ($ilAccess->checkAccess(
"write",
"",
$_GET[
"ref_id"]))
471 $enable_internal_rss = $news_set->get(
"enable_rss_for_internal");
473 if ($enable_internal_rss)
475 $info->setBlockProperty(
"news",
"settings",
true);
476 $info->setBlockProperty(
"news",
"public_notifications_option",
true);
480 include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php');
483 $record_gui->parse();
487 $info->addMetaDataSections($this->
object->getId(),0, $this->
object->getType());
490 if ($ilCtrl->getNextClass() ==
"ilinfoscreengui")
492 $ilCtrl->forwardCommand(
$info);
496 return $ilCtrl->getHTML(
$info);
509 $this->tabs_gui->activateTab(
'settings');
510 $this->tabs_gui->setSubTabActive(
'edit_cat_settings');
513 $this->tpl->setContent($this->form->getHTML());
529 $this->form->checkInput();
531 if($this->record_gui->importEditFormPostValues())
533 $this->record_gui->writeEditForm();
536 $this->ctrl->redirect($this,
"editInfo");
550 if(is_object($this->form))
555 include_once(
'Services/Form/classes/class.ilPropertyFormGUI.php');
557 $this->form->setFormAction($this->ctrl->getFormAction($this));
558 $this->form->setTitle($this->lng->txt(
'ext_cat_settings'));
559 $this->form->addCommandButton(
'updateInfo',$this->lng->txt(
'save'));
560 $this->form->addCommandButton(
'editInfo',$this->lng->txt(
'cancel'));
562 include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecordGUI.php');
565 $this->record_gui->parse();
574 $this->tabs_gui->addSubTab(
"settings_misc",
575 $this->lng->txt(
"settings"),
576 $this->ctrl->getLinkTarget($this,
"edit"));
582 $this->tabs_gui->addSubTab(
"settings_trans",
583 $this->lng->txt(
"obj_multilinguality"),
584 $this->ctrl->getLinkTargetByClass(
"ilobjecttranslationgui",
""));
587 if ($ilSetting->get(
"custom_icons"))
589 $this->tabs_gui->addSubTab(
"icons",
590 $this->lng->txt(
"icon_settings"),
591 $this->ctrl->getLinkTarget($this,
'editIcons'));
594 $this->tabs_gui->activateTab(
"settings");
595 $this->tabs_gui->activateSubTab($active_tab);
600 $this->lng->loadLanguageModule($this->
object->getType());
603 include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
605 $form->setFormAction($this->ctrl->getFormAction($this));
606 $form->setTitle($this->lng->txt($this->object->getType().
"_edit"));
610 $trans = $this->
object->getTranslations();
611 $def = $trans[
"Fobject"][0];
614 $title->setRequired(
true);
617 $title->setValue($def[
"title"]);
620 if(
sizeof($trans[
"Fobject"]) > 1)
622 include_once(
'Services/MetaData/classes/class.ilMDLanguageItem.php');
626 ' <a href="'.$this->ctrl->getLinkTarget($this,
"editTranslations").
627 '">» '.$this->lng->txt(
"cat_more_translations").
'</a>');
635 $desc->setValue($def[
"desc"]);
636 $form->addItem($desc);
643 $pres->setTitle($this->lng->txt(
'obj_presentation'));
644 $form->addItem($pres);
660 include_once
'Modules/Category/classes/class.ilECSCategorySettings.php';
662 $ecs->addSettingsToForm($form,
'cat');
666 $sh->setTitle($this->lng->txt(
'obj_features'));
669 include_once
'./Services/Object/classes/class.ilObjectServiceSettingsGUI.php';
681 $form->addCommandButton(
"update", $this->lng->txt(
"save"));
701 $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_write"),$this->
ilias->error_obj->MESSAGE);
706 if($form->checkInput())
708 $title = $form->getInput(
"title");
709 $desc = $form->getInput(
"desc");
710 $lang = $this->
object->getTranslations();
712 $this->
object->deleteTranslation(
$lang);
713 $this->
object->addTranslation(
$title, $desc,
$lang,
true);
714 $this->
object->setTitle(
$title);
715 $this->
object->setDescription($desc);
716 $this->
object->update();
743 require_once(
'Services/Tracking/classes/class.ilChangeEvent.php');
749 include_once
'./Services/Object/classes/class.ilObjectServiceSettingsGUI.php';
762 include_once
'Modules/Category/classes/class.ilECSCategorySettings.php';
764 if($ecs->handleSettingsUpdate())
772 $form->setValuesByPost();
773 $this->tpl->setContent($form->getHTML());
784 $this->ctrl->redirectByClass(
"ilobjecttranslationgui",
"");
787 $this->lng->loadLanguageModule($this->
object->getType());
790 include_once(
"./Services/Object/classes/class.ilObjectTranslationTableGUI.php");
793 if ($a_get_post_values)
796 foreach(
$_POST[
"title"] as $k => $v)
798 $vals[] =
array(
"title" => $v,
799 "desc" =>
$_POST[
"desc"][$k],
800 "lang" =>
$_POST[
"lang"][$k],
801 "default" => (
$_POST[
"default"] == $k));
803 $table->setData($vals);
807 $data = $this->
object->getTranslations();
808 foreach(
$data[
"Fobject"] as $k => $v)
810 $data[
"Fobject"][$k][
"default"] = ($k ==
$data[
"default_language"]);
814 $data[
"Fobject"][++$k][
"title"] =
"";
816 $table->setData(
$data[
"Fobject"]);
818 $tpl->setContent($table->getHTML());
828 $this->
ilias->raiseError($this->lng->txt(
"permission_denied"),$this->
ilias->error_obj->MESSAGE);
832 if (!isset(
$_POST[
"default"]))
839 if (array_key_exists(
"",
$_POST[
"lang"]))
846 if (count(array_unique(
$_POST[
"lang"])) < count(
$_POST[
"lang"]))
853 $this->
object->removeTranslations();
854 foreach(
$_POST[
"title"] as $k => $v)
857 $is_default = (
$_POST[
"default"] == $k);
862 $this->
object->update();
865 $this->
object->addTranslation(
873 $this->ctrl->redirect($this,
"editTranslations");
883 $k = max(array_keys(
$_POST[
"title"]));
899 foreach(
$_POST[
"title"] as $k => $v)
904 if($k !=
$_POST[
"default"])
906 unset(
$_POST[
"title"][$k]);
907 unset(
$_POST[
"desc"][$k]);
908 unset(
$_POST[
"lang"][$k]);
935 $a_tpl->addBlockfile(
"ADM_CONTENT",
"adm_content",
"tpl.cat_import_form.html",
938 $a_tpl->setVariable(
"FORMACTION", $ilCtrl->getFormActionByClass(
'ilObjCategoryGUI'));
940 $a_tpl->setVariable(
"TXT_IMPORT_CATEGORIES", $lng->txt(
"import_categories"));
941 $a_tpl->setVariable(
"TXT_HIERARCHY_OPTION", $lng->txt(
"import_cat_localrol"));
942 $a_tpl->setVariable(
"TXT_IMPORT_FILE", $lng->txt(
"import_file"));
943 $a_tpl->setVariable(
"TXT_IMPORT_TABLE", $lng->txt(
"import_cat_table"));
945 $a_tpl->setVariable(
"BTN_IMPORT", $lng->txt(
"import"));
946 $a_tpl->setVariable(
"BTN_CANCEL", $lng->txt(
"cancel"));
949 $parent_role_ids = $rbacreview->getParentRoleIds($a_ref_id,
true);
952 ksort($parent_role_ids);
954 foreach ($parent_role_ids as $key => $par)
956 if ($par[
"obj_id"] != SYSTEM_ROLE_ID)
960 $output[
"adopt"][$key][
"check_adopt"] = $check;
961 $output[
"adopt"][$key][
"role_id"] = $par[
"obj_id"];
962 $output[
"adopt"][$key][
"type"] = ($par[
"type"] ==
'role' ?
'Role' :
'Template');
963 $output[
"adopt"][$key][
"role_name"] = $par[
"title"];
970 foreach (
$output[
"adopt"] as $key => $value)
972 $a_tpl->setCurrentBlock(
"ADOPT_PERM_ROW");
973 $a_tpl->setVariable(
"CSS_ROW_ADOPT",$value[
"css_row_adopt"]);
974 $a_tpl->setVariable(
"CHECK_ADOPT",$value[
"check_adopt"]);
975 $a_tpl->setVariable(
"LABEL_ID",$value[
"role_id"]);
976 $a_tpl->setVariable(
"TYPE",$value[
"type"]);
977 $a_tpl->setVariable(
"ROLE_NAME",$value[
"role_name"]);
978 $a_tpl->parseCurrentBlock();
990 $this->ctrl->redirect($this);
1030 require_once(
"./Modules/Category/classes/class.ilCategoryImportParser.php");
1035 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();
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();
1101 global
$ilUser,$rbacreview, $ilToolbar;
1103 include_once
'./Services/User/classes/class.ilLocalUser.php';
1104 include_once
'./Services/User/classes/class.ilObjUserGUI.php';
1106 global $rbacsystem,$rbacreview;
1108 if(!$rbacsystem->checkAccess(
"cat_administrate_users",$this->object->getRefId()))
1110 $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_admin_users"),$this->
ilias->error_obj->MESSAGE);
1112 $this->tabs_gui->setTabActive(
'administrate_users');
1116 $this->tpl->addBlockfile(
'ADM_CONTENT',
'adm_content',
'tpl.cat_admin_users.html',
1117 "Modules/Category");
1119 if(count($rbacreview->getGlobalAssignableRoles())
or in_array(SYSTEM_ROLE_ID,$rbacreview->assignedRoles($ilUser->getId())))
1121 $ilToolbar->addButton(
1122 $this->lng->txt(
'add_user'),
1123 $this->ctrl->getLinkTargetByClass(
'ilobjusergui',
'create')
1126 $ilToolbar->addButton(
1127 $this->lng->txt(
'import_users'),
1128 $this->ctrl->getLinkTargetByClass(
'ilobjuserfoldergui',
'importUserForm')
1138 $this->tpl->setCurrentBlock(
"confirm_delete");
1139 $this->tpl->setVariable(
"CONFIRM_FORMACTION",$this->ctrl->getFormAction($this));
1140 $this->tpl->setVariable(
"TXT_CANCEL",$this->lng->txt(
'cancel'));
1141 $this->tpl->setVariable(
"CONFIRM_CMD",
'performDeleteUsers');
1142 $this->tpl->setVariable(
"TXT_CONFIRM",$this->lng->txt(
'delete'));
1143 $this->tpl->parseCurrentBlock();
1146 $this->lng->loadLanguageModule(
'user');
1148 include_once(
"./Services/User/classes/class.ilUserTableGUI.php");
1150 $this->tpl->setVariable(
'USERS_TABLE',$utab->getHTML());
1160 include_once
'./Services/User/classes/class.ilUserAutoComplete.php';
1162 $auto->setSearchFields(
array(
'login',
'firstname',
'lastname',
'email'));
1163 $auto->enableFieldSearchableCheck(
true);
1164 $auto->isMoreLinkAvailable(
true);
1166 if(($_REQUEST[
'fetchall']))
1171 echo $auto->getList($_REQUEST[
'term']);
1178 include_once
'./Services/User/classes/class.ilLocalUser.php';
1181 foreach(
$_POST[
'user_ids'] as $user_id)
1185 die(
'user id not valid');
1210 include_once
'./Services/Utilities/classes/class.ilConfirmationGUI.php';
1212 $confirm->setFormAction($this->ctrl->getFormAction($this));
1213 $confirm->setHeaderText($this->lng->txt(
'sure_delete_selected_users'));
1214 $confirm->setConfirm($this->lng->txt(
'delete'),
'performDeleteUsers');
1215 $confirm->setCancel($this->lng->txt(
'cancel'),
'listUsers');
1217 foreach(
$_POST[
'id'] as $user)
1224 $name[
'lastname'].
', '.$name[
'firstname'].
' ['.$name[
'login'].
']' 1227 $this->tpl->setContent($confirm->getHTML());
1232 global $rbacreview,$ilTabs;
1236 include_once
'./Services/User/classes/class.ilLocalUser.php';
1238 if(!isset(
$_GET[
'obj_id']))
1246 $ilTabs->clearTargets();
1247 $ilTabs->setBackTarget($this->lng->txt(
'backto_lua'), $this->ctrl->getLinkTarget($this,
'listUsers'));
1249 $ilHelp->setScreenIdComponent(
"cat");
1250 $ilHelp->setScreenId(
"administrate_user");
1251 $ilHelp->setSubScreenId(
"assign_roles");
1258 #ilUtil::sendInfo($this->lng->txt('no_roles_user_can_be_assigned_to')); 1259 #$this->listUsersObject(); 1264 $ass_roles = $rbacreview->assignedRoles(
$_GET[
'obj_id']);
1267 $f_result =
array();
1269 foreach($roles as $role)
1278 $f_result[
$counter][
'title'] = $role_obj->getTitle() ? $role_obj->getTitle() :
"";
1279 $f_result[
$counter][
'desc'] = $role_obj->getDescription() ? $role_obj->getDescription() :
"";
1280 $f_result[
$counter][
'type'] = $role[
'role_type'] ==
'global' ?
1281 $this->lng->txt(
'global') :
1282 $this->lng->txt(
'local');
1288 include_once (
'./Modules/Category/classes/class.ilCategoryAssignRoleTableGUI.php');
1291 $title = $this->lng->txt(
'role_assignment').
' ('.$tmp_obj->getFullname().
')';
1292 $table->setTitle(
$title,
"icon_role.svg",$this->lng->txt(
"role_assignment"));
1293 $table->setData($f_result);
1294 $this->tpl->setContent($table->getHTML());
1299 global $rbacreview,$rbacadmin;
1302 include_once
'./Services/User/classes/class.ilLocalUser.php';
1323 $assigned_roles = $rbacreview->assignedRoles((
int) $_REQUEST[
'obj_id']);
1324 foreach($roles as $role)
1326 if(in_array($role[
'obj_id'],$new_role_ids)
and !in_array($role[
'obj_id'],$assigned_roles))
1328 $rbacadmin->assignUser($role[
'obj_id'],(
int) $_REQUEST[
'obj_id']);
1330 if(in_array($role[
'obj_id'],$assigned_roles)
and !in_array($role[
'obj_id'],$new_role_ids))
1332 $rbacadmin->deassignUser($role[
'obj_id'],(
int) $_REQUEST[
'obj_id']);
1349 if(in_array(SYSTEM_ROLE_ID,$rbacreview->assignedRoles($ilUser->getId())))
1351 $global_roles = $rbacreview->getGlobalRolesArray();
1353 elseif($tmp_obj->getTimeLimitOwner() == $this->
object->getRefId())
1355 $global_roles = $rbacreview->getGlobalAssignableRoles();
1359 $global_roles =
array();
1361 return $roles = array_merge($global_roles,
1362 $rbacreview->getAssignableChildRoles($this->object->getRefId()));
1373 if($tmp_obj->getTimeLimitOwner() != $this->
object->getRefId()
and 1374 !in_array(SYSTEM_ROLE_ID,$rbacreview->assignedRoles($ilUser->getId())))
1380 $new_assigned = $new_assigned ? $new_assigned :
array();
1381 $assigned = $rbacreview->assignedRoles((
int)
$_GET[
'obj_id']);
1384 if(!in_array(SYSTEM_ROLE_ID,$rbacreview->assignedRoles($ilUser->getId())))
1386 $ga = $rbacreview->getGlobalAssignableRoles();
1390 $ga = $rbacreview->getGlobalRolesArray();
1392 $global_assignable =
array();
1393 foreach($ga as $role)
1395 $global_assignable[] = $role[
'obj_id'];
1398 $new_visible_assigned_roles = array_intersect($new_assigned,$global_assignable);
1399 $all_assigned_roles = array_intersect($assigned,$rbacreview->getGlobalRoles());
1400 $main_assigned_roles = array_diff($all_assigned_roles,$global_assignable);
1402 if(!count($new_visible_assigned_roles)
and !count($main_assigned_roles))
1413 if ($ilAccess->checkAccess(
"read",
"", $a_target))
1417 else if ($ilAccess->checkAccess(
"read",
"", ROOT_FOLDER_ID))
1424 $ilErr->raiseError($lng->txt(
"msg_no_perm_read"), $ilErr->FATAL);
1442 $this->tabs_gui->setTabActive(
'settings');
1449 $tpl->setContent($a_form->getHTML());
1456 include_once
"Services/Form/classes/class.ilPropertyFormGUI.php";
1458 $form->setFormAction($this->ctrl->getFormAction($this));
1463 $form->addCommandButton(
'updateIcons', $this->lng->txt(
'save'));
1478 if($form->checkInput())
1481 if ($ilSetting->get(
"custom_icons"))
1483 if(
$_POST[
"cont_icon_delete"])
1485 $this->
object->removeCustomIcon();
1487 $this->
object->saveIcons($_FILES[
"cont_icon"][
'tmp_name']);
1489 if ($_FILES[
"cont_icon"][
'tmp_name'] ||
$_POST[
"cont_icon_delete"])
1493 $this->ctrl->redirect($this,
"editIcons");
1496 $form->setValuesByPost();
1507 $this->tabs_gui->setTabActive(
"obj_tool_setting_taxonomies");
1508 $this->tabs_gui->addSubTab(
"tax_settings", $this->lng->txt(
"cntr_taxonomy_sideblock_settings"),
1509 $this->ctrl->getLinkTarget($this,
"editTaxonomySettings"));
1510 $this->tabs_gui->addSubTab(
"tax_list", $this->lng->txt(
"cntr_taxonomy_definitions"),
1511 $this->ctrl->getLinkTargetByClass(
"ilobjtaxonomygui",
""));
1512 $this->tabs_gui->activateSubTab($a_active);
1519 include_once
"Services/Object/classes/class.ilObjectServiceSettingsGUI.php";
1520 include_once
"Services/Taxonomy/classes/class.ilObjTaxonomy.php";
1525 foreach($tree->getPathFull($this->object->getRefId()) as $node)
1529 if(
sizeof($node_taxes))
1531 foreach($node_taxes as $node_tax)
1534 "title" => $node_tax[
"title"]
1535 ,
"source" => $node[
"child"]
1547 include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
1549 $form->setFormAction($this->ctrl->getFormAction($this),
"editTaxonomySettings");
1550 $form->setTitle($this->lng->txt(
"cntr_taxonomy_sideblock_settings"));
1553 $form->addItem($block);
1557 foreach($tax as $tax_id => $tax_item)
1562 if($tax_item[
"source"] != $this->
object->getRefId())
1565 $loc->setTextOnly(
true);
1566 $loc->addRepositoryItems($tax_item[
"source"]);
1567 $option->setInfo($loc->getHTML());
1570 $block->addOption($option);
1572 if(in_array($tax_id, $current))
1578 $block->setValue($value);
1580 $form->addCommandButton(
"updateTaxonomySettings", $this->lng->txt(
"save"));
1590 if(!
sizeof($taxonomies))
1597 $this->tpl->setContent($form->getHTML());
1604 $prefix = self::CONTAINER_SETTING_TAXBLOCK;
1608 if(substr($keyword, 0, strlen($prefix)) == $prefix && (
bool)$value)
1610 $res[] = substr($keyword, strlen($prefix));
1620 if(
sizeof($taxonomies))
1623 if($form->checkInput())
1625 $sblock = $form->getInput(
"sblock");
1627 $prefix = self::CONTAINER_SETTING_TAXBLOCK;
1632 if(is_array($sblock))
1634 foreach($sblock as $tax_id)
1637 $prefix.$tax_id, 1);
1644 $this->ctrl->redirect($this,
"editTaxonomySettings");
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
setSortMode($a_mode)
set sort mode
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.
setPropertyForm($form)
set property form object
const TITLE_LENGTH
max length of object title
initCreationForms($a_new_type)
initTaxonomyForm(array $tax)
Class ilObject Basic functions for all objects.
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
updateTaxonomySettingsObject()
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.
editTaxonomySettingsObject()
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.
setInfoObject($info)
get info sections
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
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")
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
redirection script todo: (a better solution should control the processing via a xml file) ...
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 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.
static _lookupContainerSetting($a_id, $a_keyword, $a_default_value=NULL)
Lookup a container setting.
infoScreenObject()
this one is called from the info button in the repository not very nice to set cmdClass/Cmd manually...
renderObject()
Render category.
static getContentStylePath($a_style_id)
get content style path
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)
for($i=1; $i<=count($kw_cases_sel); $i+=1) $lang
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.
updateObject()
updates object entry in object_data
addHeaderAction()
Add header action menu.
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 formCheckbox($checked, $varname, $value, $disabled=false)
??? public
Confirmation screen class.